Feature #2385


validate debian rules/control as part of jenkins build testing

Added by laforge about 5 years ago. Updated 1 day ago.

In Progress
Target version:
Start date:
Due date:
% Done:


Spec Reference:


Right now one can make changes to the source code that will break the debian package builds.

It would be nice if the jenkins build testing for +Verified in gerrit would trigger a dpkg-buildpackage of the related code. This is probably a good case for a docker container that has all known/shared required packages installed?

Related issues

Related to Cellular Network Infrastructure - Bug #5654: OBS errors for libosmo-pfcp, osmo-upf, osmo-hnbgwResolvedosmith08/22/2022

Related to Cellular Network Infrastructure - Bug #5669: Test .deb packages built by our OBSNew08/30/2022

Actions #1

Updated by laforge almost 4 years ago

  • Assignee set to osmith
  • Priority changed from Normal to Low
Actions #2

Updated by osmith almost 3 years ago

  • % Done changed from 0 to 10

I've done some testing and research to figure out the best way to implement this.

  • we must also build debian packages of all dependencies, and install them beforehand
  • ideally we would build the debian packages in a fresh debian docker container, and use "apt-get build-dep ."
  • building all dependencies and the project that was modified itself will take just as long as the current build job

So this is more than just a simple change in each project's script.

Since this takes at least as long as running the current, I think we should run it in parallel to

It would also be nice if we did not have to modify each repository to implement this, so I'd put a common script in osmo-ci.git instead.

  • create a new script in osmo-ci.git, which:
    • builds debian packages for all dependencies of a program, each in an empty docker container and by installing dependencies with "apt-get build-dep"
    • already built dependencies get installed in that empty docker container first
    • finally build the debian package for the project that we are currently verifying
  • adjust gerrit-verifications.yml and master-builds.yml to run this script in parallel to the existing for the projects where we want to test this (using build axes?)

This is not as trivial as I thought, so I will not continue with this issue right now.

Actions #3

Updated by laforge almost 3 years ago

What about using the nightly debian package feed for all the dependencies? Yes, that
poses some kind of danger during a day, (i.e. libosmocore patch is merged, and one hour later
somebody wants to verify a patch using that feature in osmo-msc), but maybe that's acceptable?

In order to improve on that, we could also be something like a "master" package feed which rebuilds
packages as soon as a commit is made to master. This could probably be done using OBS, as rebuilding a
single package after a commit to our master (e.g. libosmocore.git) should be relatively quick compared to the
full-rebuild-everything on nightly? If OBS is not suitable, we could also have a different mechanism (like
pbuilder), but I would argue for trying OBS first. At least it should get the propagation delay from
"libosmocore patch was merged" from one day (nightly feed) to some (tens of) minutes.

This way we avoid rebuilding all dependencies all the time, which looks like a rather big waste
of time (and energy) to me.

Actions #4

Updated by osmith over 2 years ago

This way we avoid rebuilding all dependencies all the time, which looks like a rather big waste
of time (and energy) to me.

Indeed. I like the idea with the "master" package feed, using OBS. If a patch depends on a patch from another repo that was just merged, waiting ~10 minutes and manually re-triggering the jenkins verification seems like a very good trade-off to me.

(I would like to work on this, but since this has "Priority: Low" I won't start it now.)

Actions #5

Updated by laforge over 1 year ago

  • Priority changed from Low to Normal
Actions #6

Updated by osmith about 1 month ago

  • Related to Bug #5654: OBS errors for libosmo-pfcp, osmo-upf, osmo-hnbgw added
Actions #7

Updated by osmith 8 days ago

  • Status changed from New to In Progress
  • % Done changed from 10 to 40
Actions #8

Updated by msuraev 8 days ago

  • Related to Bug #5669: Test .deb packages built by our OBS added
Actions #9

Updated by osmith 1 day ago

  • % Done changed from 40 to 70

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)