aboutsummaryrefslogtreecommitdiffstats
path: root/jobs
diff options
context:
space:
mode:
authorOliver Smith <osmith@sysmocom.de>2018-09-13 15:39:44 +0200
committerOliver Smith <osmith@sysmocom.de>2018-09-20 16:28:00 +0200
commit85c2effd89f2fc83be3a1a7e178c73908976e167 (patch)
tree2d944e8e27056c0f8d8dd03627a5cc52c53e9c37 /jobs
parent7fab6f54122babe0d29510d96603846f4e8eb3a0 (diff)
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
Diffstat (limited to 'jobs')
-rw-r--r--jobs/osmocom-depcheck.yml72
1 files changed, 72 insertions, 0 deletions
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