#!/bin/sh # jenkins build helper script for pysim. This is how we build on jenkins.osmocom.org # # environment variables: # * WITH_MANUALS: build manual PDFs if set to "1" # * PUBLISH: upload manuals after building if set to "1" (ignored without WITH_MANUALS = "1") # set -e if [ ! -d "./pysim-testdata/" ] ; then echo "###############################################" echo "Please call from pySim-prog top directory" echo "###############################################" exit 1 fi virtualenv -p python3 venv --system-site-packages . venv/bin/activate pip install pytlv pip install pyyaml pip install cmd2 pip install jsonpath-ng pip install construct # Execute automatically discovered unit tests first python -m unittest discover -v -s tests/ # attempt to build documentation pip install sphinx pip install sphinxcontrib-napoleon pip3 install -e 'git+https://github.com/osmocom/sphinx-argparse@master#egg=sphinx-argparse' (cd docs && make html latexpdf) # run the test with physical cards cd pysim-testdata ../tests/pysim-test.sh if [ "$WITH_MANUALS" = "1" ] && [ "$PUBLISH" = "1" ]; then make -C "$base/docs" publish fi