Forum | Documentation | Website | Blog

Skip to content
Snippets Groups Projects
gitlab-build.sh 2 KiB
Newer Older
#!/bin/bash -xe
function do_build() {
Deepak Khatri's avatar
Deepak Khatri committed
	echo "**** Updating $PAGES_URL: $1 ****"
Jason Kridner's avatar
Jason Kridner committed
	cat << EOF > PAGES
PAGES_URL =  $PAGES_URL
GITLAB_USER = $GITLAB_USER
PROJECT_BRANCH = $PROJECT_BRANCH
GITLAB_HOST = $GITLAB_HOST
PROJECT_REPO = $PROJECT_REPO
EOF

Jason Kridner's avatar
Jason Kridner committed
	echo "**** make librobotcontrol xml ****"
	if [ -e projects/librobotcontrol/docs ] ; then
		cd projects/librobotcontrol/docs
		doxygen
		cd ../../..
	fi

	if [ "x$1" == "xhtml" ]; then
Jason Kridner's avatar
Jason Kridner committed
		mkdir -p public/html
		echo "**** make html ****"
Jason Kridner's avatar
Jason Kridner committed
		# Build HTML
		make html BUILDDIR=public
	if [ "x$1" == "xpdf" ]; then
		echo "**** make latexpdf ****"
		# Build, optimize, and serve PDF
		make latexpdf BUILDDIR=public
Deepak Khatri's avatar
Deepak Khatri committed
		# echo "**** pdfcpu ****"
		# pdfcpu version
		# pdfcpu optimize public/latex/*.pdf
		echo "**** cleanup ****"
Jason Kridner's avatar
Jason Kridner committed
		mkdir -p public/pdf
Deepak Khatri's avatar
Deepak Khatri committed
		mv public/latex/*.pdf public/pdf
Jason Kridner's avatar
Jason Kridner committed
		rm -rf public/doctrees
		rm -rf public/latex
	if [ "x$1" == "xpublish" ]; then
Jason Kridner's avatar
Jason Kridner committed
		# Move files
Deepak Khatri's avatar
Deepak Khatri committed
		mkdir -p public/
		mv public/html/* public/
		mv public/pdf/*.pdf public/
Jason Kridner's avatar
Jason Kridner committed

		# Update docs.beagleboard.org
		if [ "$CI_COMMIT_TAG" != "" ]; then
Jason Kridner's avatar
Jason Kridner committed
			eval "$(ssh-agent -s)"
			echo "${PRIVATE_KEY}" | base64 -d | ssh-add -
Deepak Khatri's avatar
Deepak Khatri committed
			rsync -e 'ssh -p 45 -o "StrictHostKeyChecking=no"' -avP --delete public/. docs@beagleboard.org:/var/www/docs
Deepak Khatri's avatar
Deepak Khatri committed
if [ "$CI_COMMIT_BRANCH" != "" ]; then
	export PAGES_URL=$CI_PAGES_URL
	export GITLAB_USER=$CI_PROJECT_NAMESPACE
	export GITLAB_HOST=$CI_SERVER_HOST
	export PROJECT_BRANCH=$CI_COMMIT_BRANCH
	export PROJECT_REPO=$CI_PROJECT_NAME
	do_build $1
elif [ "$CI_COMMIT_TAG" != "" ]; then
Deepak Khatri's avatar
Deepak Khatri committed
	export PAGES_URL=https://docs.beagleboard.org
	export GITLAB_USER=docs
	export GITLAB_HOST=$CI_SERVER_HOST
	export PROJECT_REPO=docs.beagleboard.io
Deepak Khatri's avatar
Deepak Khatri committed
	git fetch --all -v
	export GIT_BRANCH=$(git branch -a --contains tags/$CI_COMMIT_TAG | grep origin | tr -d '* ' | sed 's/.*origin\///' | head -n 1)
	export PROJECT_BRANCH=$GIT_BRANCH
	export SPHINXOPTS="-D todo_include_todos=0"
	do_build $1
else
	echo "***** Not on a branch or tag *****"
fi

echo "**** env ****"