contrib/jenkins*: build and publish manuals
Add contrib/jenkins-build-manuals.sh, which clones or updates osmo-gsm-manuals and builds the manuals. When the environment variable PUBLISH=1 is set, it also uploads them. Call jenkins-build-manuals.sh from jenkins-run.sh, without PUBLISH=1, so the manuals get build-tested in the osmo-gsm-tester_gerrit job. A new job master-osmo-gsm-tester will be added in the future, which will run PUBLISH=1 jenkins-build-manuals.sh. The jenkins-build-manuals.sh script does not use the osmo-ci.git scripts for installing dependencies and cleaning up the workspace. These scripts are not available on the node, which runs the osmo-gsm-tester_gerrit job, and it is not trivial to add just them (without building the osmo-ci Docker image etc.). The only dependency is osmo-gsm-manuals, and it does not need to be compiled, so it seemed to be the most maintainable solution to implement the clone/update and clean up in a few lines of shell code instead. Related: OS#3385 Change-Id: I4ebfe12a164f807b63bc897aff44db83fc0705bd
This commit is contained in:
parent
ffe1b08c46
commit
52e5797b3d
|
@ -0,0 +1,40 @@
|
|||
#!/bin/sh -ex
|
||||
# environment variables:
|
||||
# * PUBLISH: upload manuals after building if set to "1"
|
||||
|
||||
base="$PWD"
|
||||
export OSMO_GSM_MANUALS_DIR="$base/osmo-gsm-manuals"
|
||||
|
||||
# Sanity check
|
||||
if ! [ -d "$base/doc/manuals" ]; then
|
||||
echo "ERROR: this script needs to be executed from the top dir of osmo-gsm-tester.git."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Clone/update osmo-gsm-manuals and wipe local modifications
|
||||
if [ -d "$OSMO_GSM_MANUALS_DIR" ]; then
|
||||
git -C "$OSMO_GSM_MANUALS_DIR" pull
|
||||
else
|
||||
git clone "https://git.osmocom.org/osmo-gsm-manuals" "$OSMO_GSM_MANUALS_DIR"
|
||||
fi
|
||||
git -C "$OSMO_GSM_MANUALS_DIR" checkout -f HEAD
|
||||
|
||||
# Copy manuals source to empty temp dir (so we can easily clean up afterwards)
|
||||
temp="$base/_manuals_temp"
|
||||
if [ -d "$temp" ]; then
|
||||
rm -rf "$temp"
|
||||
fi
|
||||
cp -r "$base/doc/manuals" "$temp"
|
||||
|
||||
# Build the manuals
|
||||
cd "$temp"
|
||||
make
|
||||
make check
|
||||
|
||||
# Publish
|
||||
if [ "$PUBLISH" = "1" ]; then
|
||||
make publish
|
||||
fi
|
||||
|
||||
# Clean up
|
||||
rm -r "$temp"
|
|
@ -8,6 +8,7 @@ test -x "$run_script"
|
|||
cd osmo-gsm-tester
|
||||
make deps
|
||||
make check
|
||||
./contrib/jenkins-build-manuals.sh
|
||||
cd "$base"
|
||||
|
||||
PATH="$base/osmo-gsm-tester/src:$PATH" \
|
||||
|
|
Loading…
Reference in New Issue