From 85c2effd89f2fc83be3a1a7e178c73908976e167 Mon Sep 17 00:00:00 2001 From: Oliver Smith Date: Thu, 13 Sep 2018 15:39:44 +0200 Subject: osmo-depcheck: script to verify PKG_CHECK_MODULES This script verifies that Osomcom programs really build with the dependency versions they claim to support in configure.ac. In order to do that, it clones the dependency repositories if they don't exist already, and checks out the minimum version tag. This happens recursively for their dependencies as well. See 'osmo-depcheck.py -h' for the full usage instructions. There's also a new jenkins job in jobs/osmocom-depcheck.yml. Change-Id: I8f495dbe030775f66ac125e60ded95c5d7660b65 Relates: OS#2642 --- jobs/osmocom-depcheck.yml | 72 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 jobs/osmocom-depcheck.yml (limited to 'jobs') diff --git a/jobs/osmocom-depcheck.yml b/jobs/osmocom-depcheck.yml new file mode 100644 index 0000000..f13d4b7 --- /dev/null +++ b/jobs/osmocom-depcheck.yml @@ -0,0 +1,72 @@ +--- +- project: + name: Osmocom-depcheck + jobs: + - Osmocom-depcheck + +- job-template: + name: 'Osmocom-depcheck' + project-type: freestyle + defaults: global + description: | + Verifies that Osmocom programs really build with the dependency + versions they claim to support in configure.ac. + (Generated by job-builder) + node: osmocom-master-debian9 + parameters: + - string: + name: PROJECTS + description: | + Which Osmocom projects and revisions to build, leave + empty to default to all projects (!), + default revision is "master". + Examples: "osmo-hlr", "osmo-hlr:0.2.1 osmo-bts:0.8.1" + default: 'osmo-hlr:0.2.1' + - string: + name: GIT_URL_PREFIX + description: | + Where to clone the sources from + default: 'git://git.osmocom.org/' + - bool: + name: BUILD + description: | + Attempt to build the project with the minimum dependency + versions found in the configure.ac files. If this is unchecked, + this job will only clone the git repositories and parse the + configure.ac files. + default: true + - bool: + name: PRINT_OLD_DEPENDS + description: | + Report dependencies on old releases (printed after the other + parsing output, before the build starts) + default: false + - string: + name: BRANCH + description: | + Branch where the osmo-depcheck.py script gets pulled from. + Only modify this if you are hacking on osmo-depcheck.py. + default: '*/master' + builders: + - shell: | + # Build the arguments + args="$PROJECTS" + args="$args -j 5" + args="$args -g $PWD/DEPCHECK_GITDIR" + args="$args -u $GIT_URL_PREFIX" + [ "$BUILD" = "true" ] && args="$args -b" + [ "$PRINT_OLD_DEPENDS" = "true" ] && args="$args -o" + + # Run osmo-depcheck + mkdir DEPCHECK_GITDIR + export PYTHONUNBUFFERED=1 + scripts/osmo-depcheck/osmo-depcheck.py $args + scm: + - git: + branches: + - '$BRANCH' + url: git://git.osmocom.org/osmo-ci + git-config-name: 'Jenkins Builder' + git-config-email: 'jenkins@osmocom.org' + +# vim: expandtab tabstop=2 shiftwidth=2 -- cgit v1.2.3