Project

General

Profile

Feature #2642

Jenkins job to verify PKG_CHECK_MODULES correctness

Added by laforge 2 months ago.

Status:
New
Priority:
Normal
Assignee:
sysmocom
Target version:
-
Start date:
11/15/2017
Due date:
% Done:

0%

Spec Reference:

Description

Right before tagging a new version of a given program (e.g. osmo-bts), we would want to have a manually-triggered jenkins job that verifies the correctness of our PKG_CHECK_MODULES statements.

So this jenkins job would have to scan/parse configure.ac and find lines like

PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore  >= 0.10.0)

and then check-out the 0.10.0 tag of libosmocore, build and install that dependency and finally attempt to do a "make check" on the program we triggered the jenkins job for (osmo-bts in the example above).

The difficulties/challenges I see are:
  • ensure we start from a clean build system that has none of our libs installed
  • have a list of mappings between library name and git repository name so the git repo for a given project can be determied
  • find out a way to deal with the fact that we have one source repo libosmocore which installs libosmo{core,gsm,ctrl,vty,codec,coding}.
    • simply detect this and use the latest(newest) version required by them for checkout+build+install?
    • actually find a way how we can only do a "make install" of one of the libraries from libosmocore.git?
  • it's sad that we'd have to have jenkins jobs for each of our projects, which seems a bit like bloat. Maybe it could also simply be a script in osmo-ci.git that we manually execute in a well-defined build environment such as a docker container? This way we wouldn't need yet another dozen of jenkins jobs.

Also available in: Atom PDF