Commit Graph

396 Commits

Author SHA1 Message Date
Pau Espin e0f4129b63 ttcn3-testsuites.yml: Add job for ttcn3-sccp-test
Only for nightly, not latest, since example/sccp_demo_user is not
installed by autotools and debian packages, so only in nightly where we
build from source we are able to copy it to docker image manually.

Related: OS#4343
Change-Id: Ia0a68d74215bdc1bc6319241d60f858312fa14e9
2020-01-17 18:13:47 +01:00
Oliver Smith fb3dc0b775 gerrit-verifications: fix erlang/osmo_ss7 name
Fixes: aadc60f403 ("jobs/gerrit-verifications.yml: add erlang repos")
Related: OS#4345
Change-Id: Id78f7e62e12c7595329ef8a265e522f27a087604
2020-01-17 16:21:44 +01:00
Oliver Smith 2c13d633ec gerrit-verification: fix erlang cmd
Jenkins job builder only does one pass of variable substitution. Replace
the cmd_erlang variable with its contents, so the jobs don't fail with:

[osmocom-gerrit-debian9] $ /bin/sh -xe /tmp/jenkins7189809471369692535.sh
+ {docker_run} {docker_img_erlang} /build/contrib/jenkins.sh
/tmp/jenkins7189809471369692535.sh: 2: /tmp/jenkins7189809471369692535.sh: {docker_run}: not found

Fixes: aadc60f403 ("jobs/gerrit-verifications.yml: add erlang repos")
Related: OS#4345
Change-Id: I6e121c79ecf872a7058de3a6dc0a940fa8091f68
2020-01-17 15:03:08 +00:00
Oliver Smith 5434eb477f osmocom-release-tarballs: publish with rsync
Related: OS#3870
Change-Id: I5f88ae0c483ed03c42c47d1cd207ac2722cfa083
2020-01-17 15:52:16 +01:00
Oliver Smith aadc60f403 jobs/gerrit-verifications.yml: add erlang repos
Run contrib/jenkins.sh in erlang repositories, that were recently
updated (osmo_gsup, osmo_dia2gsup, osmo_ss7).

Depends: docker-playground Ia3eaec6090c9652549b2850de74ee21730374bbd
Related: OS#4345
Change-Id: I05d152de6b7a04dee935d79b9987c511351eca95
2020-01-15 10:26:23 +01:00
Oliver Smith b79e06367b docker: move to docker-playground.git
Instead of building "osmocom:deb9_amd64" from this repository, build
"$USER/debian-stretch-jenkins" from docker-playground.git (same
Dockerfile). Adjust all jobs to use the new image name.

Add a new "update-osmo-ci-on-slaves-dp" jenkins job, which triggers
the existing "update-osmo-ci-on-slaves" job whenever
docker-playground.git changes.

Replace docker/rebuild_osmocom_jenkins_image.sh with
scripts/osmo-ci-docker-rebuild.sh, so we can get rid of the docker dir.
I thought about dropping the script completely, and directly writing the
two lines into contrib/jenkins.sh. But I kept the extra script for
convenience, when testing locally.

Related: OS#4345
Depends: docker-playground I125ae8a6bcabbd1f485028c79b0abacda0622c3a
Change-Id: I30a61aebcadef5536e74edd35e1c75ef77a2da9f
2020-01-15 10:24:38 +01:00
Oliver Smith 51e91cd9bb gerrit-verifications: introduce "gerrit_url" var
Prepare for erlang repositories, which will use this variable.

Related: OS#4345
Change-Id: Ia91764797745b48ae832cfbc16976e561b288a50
2020-01-14 14:47:53 +01:00
Oliver Smith c31ee44bd8 jobs/update-osmo-ci-on-slaves: origin/master only
Don't run, when different branches were pushed.

Change-Id: I2cf55391066b60cf6a594f528ed0eaf59a886391
2020-01-08 15:04:25 +01:00
Harald Welte 0bc2af048b master-builds: add osmo-{cbc,e1d,e1-recorder}
Change-Id: Idfede8e9e79019b67b9aff4881d5cea97514aeba
2019-12-04 12:32:15 +01:00
Harald Welte 71c642a0a5 add gerrit-verifications for osmo-e1-recorder and osmo-cbc
Change-Id: I1df28b4e7a7cbcf9151cd57a77001d88f1875415
2019-12-04 11:06:05 +00:00
Oliver Smith 02bb4049ba Cosmetic: gerrit/master jobs: link to wiki
Place a link to the wiki page, that now documents all available
environment variables.

Related: OS#4243
Change-Id: I770360b671c64369cf6cdb4fb4222921cc6af58e
2019-12-04 10:52:21 +01:00
Oliver Smith 13eaaa3644 jobs/master-builds.yml: fix osmo-fl2k
Don't use the old "osmocom:amd64" image. Remove the entire cmd line, so
it uses the default docker command with the default docker image
"osmocom:deb9_amd64". Also remove concurrent: true, because that default
nowadays too.

Related: OS#3203
Change-Id: I93db12d3652f26db059e0ede52d2b2fdd3e89d34
2019-12-02 09:54:56 +01:00
Oliver Smith f8d85c9f18 jobs/master-builds.yml: add osmo-fl2k
Related: OS#3203
Depends: https://lists.osmocom.org/pipermail/osmocom-sdr/2019-July/001951.html
Change-Id: Iac411a5d5e312b8db0b5388f58571141fb2f32df
2019-12-01 10:40:16 +00:00
Harald Welte 45ce0417d4 add '--publish' to osmo-asf4-dfu and osmo-ccid-firmware builds
Change-Id: Ie45b9fcabc35f6fd9aff33af0f0587c8ccd88ebd
2019-12-01 10:38:16 +00:00
Harald Welte 3038c19155 WIP: coverity: Make sure curl is installed, as our coverity upload job needs it
This is untested. I'm on the train and have very limited understanding
of Ansible

Change-Id: I9918b89971bf6c2e200f1d96d993d5fbd6741b71
2019-11-23 09:19:10 +01:00
Pau Espin 95d4544544 jobs: Introduce ttcn3-stp-test(-latest) jenkins job
Change-Id: I7a82e1fa82cd28433cdb7a9128c7ab3da6cabf47
2019-10-24 16:52:04 +02:00
Oliver Smith f58d2231a9 gerrit, master builds: default to concurrent: true
Now that almost everything runs in docker, we don't need to worry about
problems with running VTY/CTRL tests in parallel for these projects.

Related: OS#3726
Change-Id: I5fdf759faf47ec7e4f9cb2657bd004585a667add
2019-10-18 10:44:10 +02:00
Oliver Smith b082c969cb gerrit, master builds: build almost all in docker
Instead of building some projects in docker, and some directly on the
build slave, build almost all of them in docker with few exceptions, and
make building in docker the default.

This has several advantages:
* build environment of master builds and gerrit verifications is the
  same, therefore the same build won't pass in gerrit and then fail in
  master
* all build environments are volatile
* no more conflicts while running VTY/CTRL tests
* fix osmo-python-tests gerrit review versions being installed to
  /usr/local of build slave (see previous commit message)

Projects that still do not get built in docker:
* openggsn: depends on libgtpnl, but does not build it in jenkins.sh
* osmo-bts: l1headers, various SDKs not installed in the docker image
* osmo-trx: LimeSuite is not in the docker image (and just installing the
            debian package does not work)
* osmo-ttcn3-hacks: TTCN-3 not installed in docker image
* pysim: needs to access real sim cards attached to the host
* sysmo-usim-tool: needs to access real sim cards attached to the host

Related: OS#3726, OS#3598
Change-Id: If4b7d2f9ffbc7e92699732d97a8f5829a88c5b35
2019-10-18 08:38:58 +00:00
Pau Espin 4743f82b4c jobs/master-builds.yml: Set node for master axis job
Otherwise the master job managing the axis can be run on any node,
something which is not desirable. For instance, right now job
master-osmo-ggsn is run on osmo-gsm-tester-rnd which is currently unable
to fetch some git repositories.
Let's avoid running master tests on unintended nodes.

Change-Id: I62abb3c490588adc4c0e13c761de44d442f8cefe
2019-10-15 12:37:14 +02:00
Oliver Smith a8153577fe gerrit, master builds: use stretch, not jessie
Debian jessie (8) is EOL already, so switch to stretch (9). This is
required to build all Osmocom projects in docker, because at least
libosmocore fails to build with the old image (tests won't build with
GCC-4.9.x from jessie unless -Werror is disabled).

Do not build the jessie image anymore, and update the shared dockerfile.
Remove everything jessie specific, and make it work with stretch by
installing asciidoc-dblatex. Otherwise we get this error when building
manuals:

a2x: ERROR: missing configuration file: /etc/asciidoc/dblatex/asciidoc-dblatex.xsl

Add '--cap-add SYS_PTRACE' argument to the docker run command, because
otherwise the address sanitizer isn't working anymore with stretch
(which makes the OsmoPCU tests fail).

I've tried to split this patch up into multiple ones, but since there is
no asciidoc-dblatex package in jessie, we must add the dependency and
switch the image at the same time.

Related: OS#3726
Change-Id: I61fe93863d5367e3b9c01ab4726bb95bd16d891d
2019-09-24 08:04:53 +02:00
Oliver Smith a5fb5484ae gerrit, master builds: add docker_{run,img} vars
Move the common "docker run" invocation and image name into one place,
so it is not duplicated over and over. This prepares for changing the
image and building all Osmocom projects in docker (follow up patches).

Related: OS#3726
Change-Id: If529e6a93bb2227230981ee22f2c75bd0f1f4518
2019-09-23 14:08:59 +02:00
Oliver Smith 5ca12a8359 gerrit, master builds: concurrent OsmoPCU builds
Re-enable concurrent builds for OsmoPCU, and run all builds in
docker. This should prevent previous problems with VTY/CTRL test
collisions, which lead to the concurrent builds being disabled
in I23d5b75825a667e4f043d16a12b841cd8f01af5e.

Related: OS#4204
Change-Id: I4f90a601e41dca18a6fcbab56bdf5663167d2353
2019-09-19 10:48:18 +02:00
Harald Welte d3a5d51e47 jenkins-jobs: Add ttcn3-remsim-test for {master,latest]
Change-Id: Ib4e3f3f0153c38765868cfd2014cd56cd47c2c79
2019-09-13 14:02:17 +02:00
Oliver Smith 3d510e87a4 gerrit-verifications: fix osmo-bts cmd
Fixes: 932b003750 ("gerrit, master builds: use ASCIIDOC_WARNINGS_CHECK")
Change-Id: Ia17d6a14ede93bae715fb67826b074ab91f87749
2019-08-23 12:27:39 +02:00
Oliver Smith 932b003750 gerrit, master builds: use ASCIIDOC_WARNINGS_CHECK
The asciidoc warnings check fails the build if asciidoc prints a warning
while building the documentation. We had this enabled by default, but
since OBS uses various asciidoc versions, we could get unexpected build
failures (different asciidoc versions print different warnings).

Now that it is disabled by default, explicitly enable it for jenkins
again.

Related: OS#4140
Depends: Iac993a0d1b17205397a1f1ef1a7bd3f9df739e36 (osmo-gsm-manuals)
Change-Id: I8775d45b4dc1a5a46e2ba042fc7ee7d9f10f18cc
2019-08-21 11:46:24 +00:00
Daniel Willmann 84e2ce3d6e master-builds: Publish osmo-hnbgw documentation
Requires: Ic7437daeab0b07d16fd71ca3881cb31bab7b1925 (osmo-iuh)
Change-Id: Ia1be4ef79a1089d7af582acb63eb3afa5a60f4f3
2019-07-30 16:14:23 +02:00
Oliver Smith ef81fd660a jobs: upload to OBS before debian-install test
Make sure that we don't test yesterday's packages. Adjust timers to run
the OBS job around 1 o'clock, and the debian-install test around 4
o'clock. Use the H (hash) symbol for minute to spread the load.

Change-Id: I503058018172d50e9585d4804dfec1b4ece7644a
2019-07-26 08:55:21 +02:00
Oliver Smith b86cf865c1 osmocom-debian-install.yml: add BRANCH variable
Allow changing the branch in the jenkins UI when starting the build.
We already have this in other jobs, and it is very useful to test
changes.

Change-Id: Ice4662551625b3c96ca105629a934a0a081db2e4
2019-07-23 12:14:26 +00:00
Oliver Smith 6550682ee0 osmocom-debian-install.yml: update description
Replace "Generated by job-builder" with a proper description. The job
builder automatically adds "<!-- Managed by Jenkins Job Builder -->" to
the description (which is visible when editing the job), so we don't
need to mention it in the description at all.

Related: OS#3369
Change-Id: I17d2e9e0ac7fe77fb0306724a1f1e15641d76854
2019-07-23 12:14:26 +00:00
Oliver Smith 4e2b2bc8a5 gerrit-verifications: add libtelnet
Related: OS#3047
Change-Id: Iafffd9d938ee310bb729b3e2a0a4d80870d4b3b5
2019-07-11 11:06:05 +02:00
Oliver Smith cbc11dc112 jobs: add osmocom-release-tarballs.yml
Related: OS#3870
Depends: I991fe41a1f55ccd6a66815ec3d7f239850397d9a (docker-playground)
Change-Id: I994da5c27f9198e5bcf2d567dd473f9ed078d9c0
2019-07-02 13:27:44 +02:00
Oliver Smith 85163cd7f4 jobs/osmocom-obs.yml: set default git branch
I was quite surprised, that the job used "osmith/pdfs-in-doc-subpackage"
instead of "master" today [1]. Fix this randomness by adding a branch
parameter that defaults to "master".

Interestingly, we have to set the default branch to
"refs/remotes/origin/master". When using "*/master" (like we do in other
jobs), Jenkins would still chose my branch over "origin/master", even
though mine does not have "master" in the name. I have also tried
"chosing-strategy: 'default'", in case it was using the gerrit strategy
for some reason (like in [2]), and setting 'refspec:', but both did not
have any effect.

[1] https://jenkins.osmocom.org/jenkins/job/Osmocom_OBS_nightly/98/
[2] https://issues.jenkins-ci.org/browse/JENKINS-26981

Change-Id: I6d1f0e70d5c82ffd551d00ffdf2712cbfaec16cf
2019-05-23 13:08:19 +02:00
Harald Welte a72c87cba2 Add osmo-e1d to gerrit-verifications.yml
Change-Id: I78cfd6052aebbe8cfa215928906f18f8afe3c06a
2019-05-11 21:08:47 +02:00
Oliver Smith 3f9776c9eb OBS: add links to job description
Add the links that the obsolete Osmocom_nightly_packages job has, before
we remove it. Also link to the binary packages wiki page.

Change-Id: Idbc7ccd0156d9c3eb6d30059384686849a36f49f
2019-04-30 08:19:01 +00:00
Oliver Smith 61b9e76cb1 jobs: use "cmd: |", not "# keep first line ..."
Adjust README.adoc to mention "cmd: |" instead of the workaround and
replace this:
  cmd: >
   # keep first line with less indent to preserve newlines
    docker run ...

With that:
  cmd: |
    docker run ...

Change-Id: I65a06acb76e5d693aa187f9ac38970b73e7fead6
2019-04-17 15:35:27 +00:00
Daniel Willmann aaa472a7a4 Add bscnat tests to jenkins
This requires Change-ID I800ebe0f33cf7c86eea65d2e186c6af12fee6db7 from
osmo-ttcn3-hacks.

Fixes: OS#3179
Change-Id: Idee5a986e4cda8db601982ac3f2662bc20fe3f5f
2019-03-28 17:31:30 +01:00
Daniel Willmann d0229770d8 ttcn3: Order tests by time triggered
We had some load issues with many things running at once on jenkins.
This will at least make it easier from having colliding ttcn3 jobs.

I also changed ttcn3-sip-test to run at 7:30 instead of 7:00 where
ttcn3-bts-test runs.

Change-Id: I65f346a3fae2811c8314c26d4a5b3a528b8101f9
2019-03-28 13:38:48 +01:00
Daniel Willmann 627bf3dd2f Avoid '/' in jenkins matrix labels
The script already deals with this for osmo-bts by using the
version_prefix variable

Change-Id: I3102fc607718ca42634273e24e6ff303dc28483f
2019-03-27 18:36:22 +01:00
Daniel Willmann 53fabad926 Also build oc2g support for osmo-pcu
Needs gerrit change I7cd89a549c9463e81893ca7dd925299f728e4453 in
osmo-pcu

Fixes: SYS#4524
Change-Id: Iebddf8d41538fe1e69435cda7f77bd49c4c14477
2019-03-27 18:36:20 +01:00
Oliver Smith d3d3eb0fb1 jobs: add osmocom-build-tags-against-master.yml
Run osmocom-build-old-tags-against-master.sh every night in jenkins.

Related: OS#3765
Change-Id: I9868a6008f61fb3962279f72d34f67f900425be5
2019-03-26 15:54:46 +01:00
Oliver Smith 60a4fb2062 jobs: add osmocom-list-commits.yml
Related: OS#3840
Change-Id: I9a65cb750bbe6c278b9f67eb70bdb36759cb775b
2019-03-20 11:41:28 +01:00
Harald Welte cb944d35f3 ttcn3-testsuites: Split ttcn3-pcu-test-sns from ttcn3-pcu-test
The SNS variant of the tests require the PCU to be started with
different config file.

Change-Id: I42785b68f136198152ad79072346faccfe4a9424
2019-03-14 21:56:21 +01:00
Harald Welte b1ec95f3c7 jenkins: Send build failures to jenkins-notifications mailing list
Change-Id: I5609a0f4b8f176ffa692db732abb4694acaaf927
2019-03-03 16:04:41 +01:00
Pau Espin d7a11ab977 jobs: osmo-gsm-tester: Add oc2g jobs
Change-Id: I5ea9b783a2a2017cb134e72087e217a4184184b2
2019-02-21 18:50:40 +01:00
Holger Hans Peter Freyther e197c12f81 jobs: Introduce a tester using "virtual" tests
With mobile, virtphy, osmo-bts-virtual we can run e2e tests without
the need of any hardware. Create a dedicated job for it. This avoids
having to share resources (e.g. lock state/ip allocations) with other
builds.

Change-Id: I19993b287cc948dbdfba9d375f80a7904f96ff4a
2019-02-21 16:04:55 +00:00
Harald Welte 38ce864f63 ttcn3-testsuites: Add PCU tests
Change-Id: Ifd8113c8db2b6e84d6e01539a6df031dc6f4ee80
Closes: OS#2890
2019-02-20 22:41:44 +01:00
Holger Hans Peter Freyther 28e7e9c44a Fix copy and paste in the script.
Change-Id: I51d01a8799f09ce7d813a0ef8353a4233d5c8bb5
2019-02-15 15:34:52 +00:00
Daniel Willmann 74eade85ae jobs/osmo-bts: Build osmo-bts-oc2g as well
Build osmo-bts with support for oc2g as well. Uses origin/nrw/oc2g as
firmware.

Fixes: OS#3745
Change-Id: Iaaeb44b949cf6403601f069800c381fe5eae2f6e
2019-02-05 16:56:04 +01:00
Harald Welte 7963507fdd gerrit-verifications: Add osmo-ccid-firmware
The repository currently doesn't yet have a contrib/jenkins.sh
script, so all verifications will fail.  This is intentional,
as it will force the addition of a related script in the first merged
commit.

Change-Id: I713d345240dec319ee07d99e9381fc1af6a2d86d
2019-02-04 14:43:39 +01:00
Oliver Smith 4ae4c5403d ttcn3: block latest jobs while master is running
Jenkins job builder does not support string replacing in variables,
so the only way to make each ttcn3-foo-test-latest job get blocked by
their ttcn3-foo-test counterpart was specifying them each time.

Related: OS#3767
Change-Id: I124286d4b996e79a7b77603c7b59473b016c3bd5
2019-01-28 15:03:47 +01:00
Oliver Smith 0c11075541 ttcn3-bsc-test-sccplite-latest: enable job
This job does not get stuck anymore since the latest Osmocom release.

Change-Id: Ie87aeb52832b4ce0fbec96d2cff9dd04da0c11fc
2019-01-28 14:48:25 +01:00
Harald Welte 292aa1c872 add osmo-asf4-dfu master and gerrit jobs
Change-Id: I5bc5ca30809af8d8b472a75a9e02c4964761de38
2019-01-13 13:43:09 +01:00
Kevin Redon a6db661afb add maintainer email to simtrace project
Change-Id: Id0a6740749ea1e3d1c06396485744426b0a74f79
2019-01-12 10:25:19 +00:00
Oliver Smith fd9ae9737d master-builds: openbsc: make SSH keys available
Mount ~/.ssh in openbsc's docker container, just like it is done with
all other Osmocom projects that build in docker (see Change-Id
Icfff3b6a620de79d1bab7ff6a35309f828581c09 ("master-builds: make SSH keys
available in Docker")).

Related: OS#3385
Change-Id: Ib31ab4033c1cc71c10a96445e8bcc3b9f02e2a1f
2018-12-12 17:03:33 +01:00
Oliver Smith 6d6938fa60 Build verification: manuals for the rest
Build manuals for osmocom-bb and openbsc in gerrit-verifications.yml.
Build and publish manuals for osmocom-bb, openbsc and osmo-gsm-tester
in master-builds.yml.

Following recommendations on the ML, building manuals for
osmo-gsm-tester was not done with a new job in gerrit-verifications.yml.
It will be done with the existing osmo-gsm-tester_gerrit job (which is
generated by osmo-gsm-tester-runner.yml). No changes are necessary for
that in osmo-ci.git, see I4ebfe12a164f807b63bc897aff44db83fc0705bd
("contrib/jenkins*: build and publish manuals") in osmo-gsm-tester.git.

Related: OS#3385
Change-Id: I2845d14b656f11e3a07107b4f16e8d7a0e3c7bbf
2018-12-12 14:02:33 +01:00
Oliver Smith 298747c735 jobs/ttcn3-testsuites.yml: add build-discarder
Add the same build discarder as we have in master-builds.yml. This
should help with the disk space problems.

Change-Id: Ib7f01751ca5f6fb3e29a436982e2891d9cab0488
2018-12-05 16:50:58 +01:00
Oliver Smith d77968c3d6 gerrit-verifications/master-builds: fix errors
Fix three errors that prevented Jenkins from accepting the new
configs from Ie0643b17a6be6e86e281b50d78dd7a6858cf99ee
("gerrit-verifications/master-builds: WITH_MANUALS"):

* master-builds: fourth axis needs to be in the template or else the
  server will throw a 500 error. gerrit-verifications already has four
  template axes.
* gerrit-verifications/osmo-pcu: || at the end of combination_filter
* gerrit-verifications/osmo-sip-connector: missing ":"

Change-Id: I4ad63a3167e59b0837ffd1576fb7c7cf2958ff32
2018-12-05 14:49:18 +01:00
Oliver Smith e5e3773d52 gerrit-verifications/master-builds: WITH_MANUALS
Add WITH_MANUALS=1 to generate (and publish in case of master-builds)
PDF manuals. Jobs with multiple axes generate the manuals only in the
fastest axis.

Related: OS#3385
Change-Id: Ie0643b17a6be6e86e281b50d78dd7a6858cf99ee
2018-12-05 13:41:52 +01:00
Oliver Smith 6599da6d31 master-builds: use PUBLISH=1 instead of --publish
Pass all inputs to contrib/jenkins.sh as environment variables instead
of mixing with commandline arguments. We decided on this method instead
of I3cc01dbc57213b6d6cdc9b394a516510d045f1ae ("use jenkins.sh
--publish"), to make the contrib/jenkins.sh scripts less confusing.

Related: OS#3385
Change-Id: Ifc88af086368ce8eea1ea3a375ba7d5603a5d7e5
2018-12-04 10:39:33 +01:00
Oliver Smith bef4e9cb5d master-builds/gerrit: remove redundant GTP="$GTP"
Variables for axes are already exported as environment variables.
Change 'GTP="$GTP" ./contrib/jenkins.sh' to './contrib/jenkins.sh' to
avoid confusion when introducing other variables.

Change-Id: I9238da3dd3c4461f82dc7c792f886177399be3dc
2018-12-04 09:21:50 +00:00
Oliver Smith ce105c6aa1 osmo-mgw: don't try to build with transcoding
Do not build osmo-mgw twice anymore (once with "--enable-mgcp-transcoding" and
once with "--disable-mgcp-transcoding"). configure.ac does not know
these options.

Change-Id: I080cd331caec31c53a43090e6c19d23e31abdec6
2018-12-03 16:45:41 +01:00
Oliver Smith 6f8339b5d0 master-builds: make SSH keys available in Docker
At runtime, mount the Jenkins host's ~/.ssh folder inside the Docker
containers, from which manual PDFs will be published.

To my surprise, local testing showed that ssh is looking for the keys
in /home/build/.ssh, although the HOME variable inside the image is set
to /build, not /home/build.

Related: OS#3385
Change-Id: Icfff3b6a620de79d1bab7ff6a35309f828581c09
2018-12-03 13:39:02 +00:00
Oliver Smith 03d5f4c71c cosmetic: gerrit-verifications: format docker cmd
Format the docker command lines just like they are formatted in
master-builds.yml. Most notably, this puts every environment variable on
its own line. This makes it much easier to compare both files side by
side.

Change-Id: I0adcb028be24c2e05189c15b85811777d6287387
2018-11-30 15:15:16 +01:00
Oliver Smith ffb3fa6286 master-builds: use jenkins.sh --publish
Add --publish to the contrib/jenkins.sh calls for each Osmocom project,
where PDF manuals should be published. As this parameter is only passed
to jenkins.sh from the master-builds job, not from the
gerrit-verification job, we can add logic to upload the generated PDFs
when getting triggered because of changes in master.

Related: OS#3385
Change-Id: I3cc01dbc57213b6d6cdc9b394a516510d045f1ae
2018-11-29 16:55:59 +01:00
Pau Espin 3d69abadb8 jobs: master-builds: Disable deprecated cellmgr-ng failing to build
cellmgr-ng is out of maintenance for a long time now (13 months) and some
of its features are going to be served by osmo-stp in the future.
cellmgr-ng is unable to build against recent libosmo-sccp.

Change-Id: I0869ec932ba3b3a9d3d8521b25f677e011334315
2018-11-27 12:45:52 +01:00
Oliver Smith a31f20fbd8 jobs/master-builds.yml: don't publish manuals
Do not publish PDFs for all projects anymore, as we are moving the
manuals to each project's git repository. They will be published from
there instead (see INSTALL.txt in osmo-gsm-manuals.git).

No automatism for building and publishing the documentation of all
projects will be implemented right now, as discussed here:
https://osmocom.org/issues/3385#note-7

Related: OS#3385
Change-Id: I705e20a4f94b308c250580aa1289ee9b2967beef
2018-11-21 16:22:21 +01:00
Oliver Smith b348a83b2f ttcn3-testsuites: collect artifacts again
Collect build artifacts just like the manually created jobs did it.

Related: OS#3681
Change-Id: I5b0f5de87125374c9a48d0a47e6a4e655d7ed3bb
2018-11-06 19:23:32 +00:00
Oliver Smith 73240db74d ttcn3-testsuites: replace manually generated jobs
Let all TTCN3 related Jenkins jobs get generated by
ttcn3-testsuites.yml, overwriting the old manually generated jobs.

Related: OS#3268
Change-Id: Ib4c0949d21fcbc16c61c6ffe9d3eedea198aaf1d
2018-11-05 10:42:12 +01:00
Oliver Smith 44a3961231 jobs: ttcn3-testsuites.yml for ttcn3/nplab jobs
New JJB config, that is able to generate all jobs in the TTCN3 tab at
Jenkins: <https://jenkins.osmocom.org/jenkins/view/TTCN3/>

The new *-latest jobs test against the latest stable releases. Existing
jobs are not overwritten (this is commented out).
ttcn3-bsc-test-sccplite-latest is disabled for now, because it hangs
forever.

Related: OS#3268
Change-Id: Ie433925ee81a61c5788b4a6f2bc5b89c2689d251
2018-11-05 09:28:28 +00:00
Pau Espin 6af154e942 jobs: osmo-gsm-teser: Run only once nightly
Current entire default testsuite takes almost 7 hours to run, so let's
run it once nightly and be done with it.
This way, during office time if we want to test something on the prod
setup (due to hw only avaialble there) we can do it without having to
wait, disable the job hours in advance or having to kill all processes
and clean osmo-gsm-tester state.

Change-Id: I138bf50d6d066d2da4cd97f25880628b93ddc237
2018-10-30 16:06:11 +01:00
Harald Welte 64d1d6c3b7 gerrot-osmo-bts: Don't use unsupported '/' in labels of axis/matrix jobs
It seems jenkins cannot deal with this, so we cannot specify something
like 'origin/nrw/oc2g-next' in a label.  Let's work around by using only
oc2g-next here and expanding that to 'origin/nrw/oc2g-next' only in the
osmo-l1yer1-headers.sh script of osmo-ci.git

Change-Id: I9130a2f349f06a0b46b50665cef7188ddb08f666
2018-10-27 13:38:21 +02:00
Harald Welte c466dcfde5 gerrit-verifications.yml: Add OC2G build matrix to gerrit-osmo-bts
The gerrit-osmo-bts job is used for build verification of osmo-bts
patches.  This adds (untested) support for OC2G

Change-Id: I62a9a5ec357b7246b2d7915681c646c79eda4b76
2018-10-27 10:22:54 +00:00
Harald Welte 24f2ef00b2 Add osmo-remsim to gerrit + master build verification
... which introduces a requirement for libcsv-dev in ansible.

Change-Id: I2ac65947ce9ecc071f774dc4df0f08c99c16c632
2018-10-15 02:06:22 +02:00
Oliver Smith 6a38a191be README.adoc: use 'my_api_token' as example pass
This makes it easier to recognize that users should paste an API token
there, not their password.

Change-Id: I203c25b6638e36d3f050223dd40e56b7c4a92a12
2018-10-10 15:38:13 +02:00
Oliver Smith 6cced05c01 osmo-depcheck: don't use /tmp, better git code
* replace --gitdir with --workdir and give it a new folder structure:
  * git/$repo: downloaded source code
  * build/$repo: files created during the build process
  * install/: installation prefix
* adjust the jenkins job to use --workdir
* fetch --tags when source exists already
* readable error message for failed git checkout

Change-Id: I06589277b9d54a2af177451cfab2ca1a658b4058
Relates: OS#2642
2018-09-25 09:59:05 +00:00
Pau Espin 8768ad510a jobs: osmo-gsm-tester_run-gerrit: Update suites selected for verification
Recently in osmo-gsm-tester some suite names were changed to have better
unified naming. As a result, some of the suites used here need to
updated.

Change-Id: Iafe865ab5f607fc8acfcb3f72ebe4b0ef0f1322a
2018-09-25 08:04:18 +00:00
Pau Espin 050e29a3b0 jobs: osmo-gsm-tester: Copy osmocom-bb build artifact
This artifact is not needed nowadays to run current tests in those jobs,
since it is only used in osmo-gsm-tester_ttcn3, but it will eventually
be used once we support virtphy and/or motorola phones in usual tests,
and also because it's easier for developers to download full .tar.gz
with all at once instead of having to download osmocom-bb one separately
whn whilling to run ttcn3 testsuite locally.

Change-Id: I9fe41e2c7d9c38796ce16f2f279792bc5151b498
2018-09-25 08:04:18 +00:00
Pau Espin 4b5ab29bd1 jobs: osmo-gsm-tester: Add osmo-iuh builds
Change-Id: I7b8f51597287e7673f79c65eae2508b074151781
2018-09-25 08:04:18 +00:00
Oliver Smith 85c2effd89 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
2018-09-20 16:28:00 +02:00
Oliver Smith 999e449501 osmocom-debian-install.yml: new jenkins jobs
Installs most packages from the Osmocom Debian repository into a plain
debian:stretch container and call the osmo-* binaries with --version
(or -h).

Two jobs, one for nightly and one for latest.

Change-Id: Idbb43ed737e164f8cf3a0e085ed54e4c6a2d14bc
Related: OS#3176
2018-09-20 08:10:49 +00:00
Alexander Couzens 69d4aef8d7 jobs/coverity: only build the master branch
Otherwise the last modified branch will be build.

Change-Id: I0b68ebae025e0dc9dbfd22b97731b59be30e7823
2018-09-18 14:29:20 +02:00
Alexander Couzens 7dd082959a jobs/master-builds: introduce variable git_base_url to allow other domains than git.osmocom.org
Change-Id: Ia37b5f761c47411ac7eab092f3437acecc492f22
2018-08-14 13:25:07 +00:00
Alexander Couzens 6742a83b96 jobs/master-builds: add repo sysmo-usim-tool
Change-Id: I0e4fec571c3c373000c755cfdb5e56dc09d17413
2018-08-14 13:23:51 +00:00
Harald Welte 2812b99810 osmo-gsm-tester: Add OSMO_GSM_TESTER_BUILD_osmo_hlr parameter
For some reason almost all projects allow to permit building a
specific non-master branch, only osmo-hlr was missing that parameter.
Untested.

Change-Id: Ia4199aa5cfd1f39d34ed7c6104881c68d00dcffa
2018-08-08 08:29:13 +02:00
Alexander Couzens 92de527e47 jobs: add gerrit verification for pysim
pysim will be tested on the simtester which has real hardware.

Change-Id: I180cc4a83a41f3ef2e4b1e316ea0371cc83be654
2018-07-25 18:52:26 +00:00
Pau Espin 4aa523ae87 jobs: osmo-gsm-tester-builder: Fix typo in job parameter name
osmo-mgw is duplicated and osmo-bsc is not there.

Change-Id: Ib0ab7f8796b8b78d5f21b7a4f541fd3ddffc95a4
2018-07-25 08:52:01 +00:00
Neels Hofmeyr 1bfa6c7b62 jobs: master-builds: simtrace2: pass '--publish'
Kevin would like to upload simtrace firmware to ftp.osmocom.org from master
builds. To facilitate, add '--publish' arg, like in master-osmo-gsm-manuals (to
distinguish and not upload from gerrit verification jobs).

Change-Id: I93435aa6f39e9a072754011ae7696b10315f6092
2018-07-10 16:56:40 +02:00
Neels Hofmeyr 34b5767e5a jobs: gerrit: use debian-9
This is the same as done for the master builds in
I6f025c642d5ae57cdda9d7b34bbaeb82ca119354,
seems I forgot to follow up with this one.

Change-Id: I9204ca2f083c8a6a04c6c0fc7d51752a4f1a4830
2018-07-05 06:56:49 +00:00
Harald Welte 6866852c37 jobs: add master+gerrit verification job for gapk
Change-Id: Iedf3b43c164ae7e3e653820284c4d4ddaa545784
2018-07-03 15:24:25 +00:00
Daniel Willmann 68a838c435 Restrict where the parent build runs for osmo-gsm-manuals
This seems to resolve the issue where the jenkins job fails due to
missing ssh credentials.

Other jobs can also use this by setting the node property

Change-Id: I23cf2c98f02278a5deb9c4ae8d13438b76538287
Ticket: OS#3338
2018-07-03 05:59:30 +00:00
Harald Welte 63c316738c Add simtrace2 gerrit + master jobs
Change-Id: Ib4da0011337d5a591944821411479f1c6bcc64ee
2018-06-29 21:45:55 +02:00
Harald Welte 227b9ec40d gerrit/gerrit: Add osmo-sysmon build verification
Change-Id: I41411123836d2713f833f78c5920cbbee695ed14
2018-06-10 15:27:08 +02:00
Harald Welte a6a42a06c9 master-builds.yml: More fine-grained e-mail notifications
Some projects should alert certain inidividuals/maintainers

Change-Id: I8aca77d557b2471aa23aa3418d72e7a62734524d
2018-06-03 13:53:31 +02:00
Pau Espin 2f1d4deb71 jobs: osmo-gsm-tester-runner: Add ttcn3 job
Change-Id: I8ca1c9a3a18138a27232efba7d65d6806e044a6b
2018-05-18 13:42:01 +02:00
Pau Espin de4816f77a jobs: osmo-gsm-tester-builder: Add new job to build osmocom-bb
Change-Id: I4b390e34719503a5d0a50e6392b1ceeb3a9cb730
2018-05-17 18:16:37 +02:00
Pau Espin a4a89c79fe osmo-gsm-tester-builder: notify unstable builds
Change-Id: I5a1d7b5e1af5b4fbd12effa870542df2d6be7647
2018-05-07 01:03:31 +02:00
Alexander Couzens 6da3fe8e8b jobs: remove old job Osmocom_nightly_nitb_split
It's not any more used, neither does the job even work, because
the split file got already removed.

Change-Id: I6e85d6384f2a377f1ebe0e06c9ca92a594050eec
2018-05-02 16:56:38 +02:00
Alexander Couzens 6ea2ec3a76 jobs: osmocom-obs: add support for the nightly build
Change-Id: I59929b4025210e1143e4d09bcfc59f91c81f0d20
2018-05-02 16:56:09 +02:00
Alexander Couzens 0fd4e7d429 jobs: osmocom-obs: introduce template var type
In preparation for the nightly jobs

Change-Id: I315215eb1d5ade257262d0717711c11f3787319f
2018-05-02 16:56:09 +02:00
Alexander Couzens efbe93e789 jobs: rename osmocom-obs-latest.yml -> osmocom-obs.yml
Prepare to template nightly and latest in one file

Change-Id: If080cca2ab51a7aab9c85da9f07c51179134f8c6
2018-05-02 16:50:49 +02:00
Alexander Couzens 212b01a468 jobs: Osmocom_latest_packages: change node to obs
obs node label have the credentials to access OBS

Change-Id: Ifaaa8a9cb2ddddf399e108b2516017a8d60d1d88
2018-05-02 16:47:44 +02:00
Alexander Couzens 9e0367a2e8 jobs: update-osmo-* remove old build nodes
Change-Id: Ia7f98e55895b150da473a38a3e68b188acd0e76a
2018-04-24 11:26:24 +02:00
Alexander Couzens 5c5cca5266 jobs: update-osmo*: remove non-existent node build2-deb8build
The jobs will stall when trying to handle a non-existent node

Change-Id: Id9f25d8a5f6d0521e2b70884f46de5dee14d8092
2018-04-24 09:22:47 +00:00
Harald Welte 3f4289b35c master-builds: Add rtl-sdr
As rtl-sdr is gaining a ./contrib/jenkins.sh script, we can now also
use it just like our other projects, with a template-generated
"master-rtl-sdr" jenkins job, which can replace the old manually-created
"rtl-sdr" jenkins job.

Change-Id: Ia59f12f31d332bda09242fff1d3e215e8cadc915
2018-04-19 00:20:14 +02:00
Pau Espin 8e48f3d75e jobs: bts&pcu: lc15: fetch branch litecell15 instead of litecell15-next
Branch nrw/litecell15-next doesn't exist anymore in the remote of that
repository (https://gitlab.com/nrw_litecell15/litecell15-fw).

Change-Id: I162e81573d7aafc0b2e2e1d2ab90cacc7cbb90d7
2018-04-17 17:13:07 +02:00
Pau Espin 28eff46deb jobs: gerrit-osmo-ttcn3-hacks: Make deps before cleaning
make clean has subdir/Makefile as dependency. As a result,
subdir/gen_links.sh and subdir/makefile-regen.sh are called, and
ttcn3_makefilegen in there fails because the dep symlinks are done
against missing files (because git repos in deps have not been checked
out).

Additionally, since 61c11e9234b3f9e087aba94380892ab66abc1191 make
deps-update is equivalent to make deps since the dependency tracking
system was improved, so we can remove it as it's not needed anymore.

Change-Id: I07fee78bba5b07c7f3f4359869e00ef2583e0769
2018-04-14 11:40:04 +00:00
Alexander Couzens 156990fb07 jobs: master-builds.yml: allow osmo-gsm-manuals to build anywhere
When https://gerrit.osmocom.org/#/c/7725/ has been merged, there
is no need to limit this build to OsmocomApi.

Change-Id: Ic5fe39b643e7a15dbfd2efd55dce78dde30cf099
2018-04-11 16:51:24 +00:00
Alexander Couzens 3e9d6ad7fd jobs: update-osmo-* reformat a list to be human readable
Change-Id: Ic64463d3974fdbf3967e67a77c75490d7ca80fb7
2018-04-11 06:01:24 +00:00
Alexander Couzens bff2750755 jobs: gerrit-osmo-ttcn3-hacks: execute the job on a ttcn3 node
Only ttcn3 nodes have the eclipse-titan compiler installed

Change-Id: If946af8fa3f7bd2d13914c9895d3f74b58fdef24
2018-04-10 18:58:06 +02:00
Alexander Couzens a73b13b80f jenkins: add job osmo-gsm-tester_gerrit
The job verifies the gerrit patchset.

Change-Id: If661675528059bc8a95d39a6489a5a9381f52677
2018-04-06 06:49:52 +00:00
Alexander Couzens 2f71cccf4f jenkins: add osmo-gsm-tester_run-{prod,rnd}
Both jobs doing the actual test run on the prod or rnd tester.

Change-Id: Ic1c4babc547f48402b0bcfaf38e2734e87e565f0
2018-04-06 06:49:31 +00:00
Alexander Couzens be32123023 jenkins: add job osmo-gsm-tester_build-trigger-all
osmo-gsm-tester_build-trigger-all triggers a new build of all
osmo-gsm-tester build jobs.

Change-Id: I8dcf2a6fa2991cb73b4807f8a10d251f3dca77dd
2018-04-06 06:49:08 +00:00
Alexander Couzens 742bcf74da jenkins: add osmo-gsm-tester-build jobs
The build jobs building all osmocom components which will be used by the
osmo-gsm-tester. A .tgz archive will be used as artefact which is copied
later by the osmo-gsm-tester test run.

Change-Id: Ic49c94e9e6639e43f6ae14b868bc826af3ce2085
2018-04-06 06:48:52 +00:00
Alexander Couzens 7a148bff15 jobs/update-osmo*: add new nodes to the update jobs
Change-Id: Ib103b3343d582f7a78f0c4cec00c94078a078584
2018-04-05 19:58:51 +00:00
Neels Hofmeyr 2b526e6941 jobs/master: optimize trigger chain
Avoid as many multiple triggers as still ensure all dependent projects are
rebuilt correctly. Keep the full trigger list as comment, and illustrate in a
comment at libosmocore how the chain is intended to work.

Change-Id: Iea2cf25b3872045778f11a985a1c417f37067cd9
2018-04-04 16:53:34 +00:00
Neels Hofmeyr e30bbc5906 jobs/master-builds: move all builds to debian 9 slave
Change-Id: I6f025c642d5ae57cdda9d7b34bbaeb82ca119354
2018-03-29 16:11:33 +02:00
Neels Hofmeyr 59a15e05c3 jobs/master-builds: drop useless 'node' field
The slaves to build on are determined by the slave_axis, the node parameter has
no useful effect.

Change-Id: I029de2a46f22a1b1dc977bce71137eb78b826157
2018-03-29 16:11:33 +02:00
Pau Espin f49376516b jobs: osmo-trx: Disable temporarily ARM builds
proot crashes with current jenkins node setup, which means we cannot use
it to run ARM based axis.

proot bug is already reported upstream in:
https://github.com/proot-me/PRoot/issues/134

Related: OS#3061

Change-Id: I9bc48349c78f395b3842bc5caaf6e948fb4c299e
2018-03-17 21:25:08 +01:00
Harald Welte b602e355f2 Add laforge@gnumonks.org to all build failure notifications
Change-Id: I989075eb0cd930d42daa36d9d8501592141c0310
2018-03-17 14:40:31 +01:00
Alexander Couzens 8bab2702b4 jenkins: gerrit-builds: replace the label linux_amd64_debian8/9 -> osmocom-gerrit-debian8/9
Introduce more precise labels to allow more flexibility when extending the jenkins setup.
The linux_amd64_debian8 or linux_amd64_debian9 is used across all build jobs which
make it hard to add new nodes which might only support one group of
jobs.

Change-Id: I900b7b50b33cc95e127ca78d2a47f59d32a6dfee
2018-02-25 20:38:13 +01:00
Alexander Couzens 77f5ceb8d4 jenkins: master-builds: replace the label linux_amd64_debian8/9 -> osmocom-master-debian8/9
Introduce more precise labels to allow more flexibility when extending the jenkins setup.
The linux_amd64_debian8 or linux_amd64_debian9 is used across all build jobs which
make it hard to add new nodes which might only support one group of
jobs.

Change-Id: I0fa3d3f81ab01e2488fe07601740f42eb54b6d9c
2018-02-25 19:58:30 +01:00
Alexander Couzens 45bb81c8c0 jenkins: add node admin2-deb8build to the update jobs
Change-Id: I6b703b9f27865b146f20bea953fe3d6500a88166
2018-02-25 17:15:40 +01:00
Alexander Couzens 71cb57cc88 jenkins: add node admin2-deb9build to the update jobs
Change-Id: Ie3803a46ee192dc72823291004ee20f4bdbe0126
2018-02-25 14:07:10 +01:00
Harald Welte 8efadaf793 ttcn3 gerrit verification: Use 'make deps-update' target
In osmo-ttcn3-hacks Idc165425b45872d2eb958a662d03e69aaf60669d
we introduced the new 'deps-update' Makefile target to properly
update all 'deps' repositories without removing them. Let's use it.

Change-Id: Iabc54182d1d30ef26e4f72fb9db52fd25a6c9800
2018-02-15 18:37:38 +01:00
Alexander Couzens e122fef10e jobs: add Coverity Upload Job
Change-Id: I852b42a698a4568b51e993bb5e86efeed6afdb32
2018-02-10 14:48:00 +00:00
Harald Welte 64be006cd2 master-builds: Add missing dependencies / triggers
There were a lot of downstream triggers that we were missing.

I manually reviewed the debian/control files and used that to update
the trigger lists for all jobs in master-builds.yml.

Change-Id: I12057c9bb389041ef3bcabd1c335a0fa8c358092
2018-02-09 11:25:21 +01:00
Alexander Couzens 9ac76472ba jobs/README.adoc: explain the usage of API Tokens instead of passwords
Change-Id: Ie96288913aae2fe97fa11266ffa9ed098044ccfd
2018-02-06 14:39:58 +00:00
Max 9294d2124f jenkins: fix jobs template
The sequential parameter was silently skipped because it was absent from
the project template. Fix this for both master- and gerrit- jobs.

Change-Id: I0bc28695f4f270bc7b1cc4bcd5d4d43ede6172f3
2018-01-22 16:27:38 +01:00
Max ce1d21fec1 libosmocore: use dispatcher script
Get rid of job name comparison because it depends and exact build server
name and hence is highly fragile. Use dispatcher script the same way we
do in osmo-bts.

N. B: this requires I2955e866bce4f000a53369bd601a346c36c82468 in
libosmocore.

Change-Id: I76dfc11a05007ae5c6e0554fe8132695b67cccaa
2018-01-21 21:14:41 +00:00
Harald Welte 9b23074eeb jobs: Add {master,gerrit}-libusrp
Change-Id: I2b208455b7bd008fb25322280894c100e51f2227
2018-01-21 18:34:13 +01:00
Pau Espin f98070d9d5 gerrit-verifications.yml: osmo-sgsn: Remove duplicated concurrent attribute
Change-Id: I808c46c2f4488fd577bb1c23cd13c5b73519265b
2018-01-19 15:11:18 +00:00
Neels Hofmeyr 8bd700d33d jobs: master: also trigger once per day
Recently we had changes to osmo-ci, and I noticed that although some master
builds were broken by that, the builds were still showing success -- of twenty
days ago.

Run each master build at least once a day to indicate odd side effect failure
sooner.

Change-Id: I126de2bab3db22cb693b0fa665f6579de9238fdf
2018-01-19 12:52:22 +00:00
Max 5dbe9a4617 Don't run OsmoPCU tests in parallel
The vty and ctrl tests are enabled by default and are run on hard-coded
ports. This causes some builds to fail when run in parallel.

Change-Id: I23d5b75825a667e4f043d16a12b841cd8f01af5e
2018-01-17 16:01:53 +00:00
Max 595ea2df16 Fix missing OsmoPCU master build
Similar to Idac6e53b1e0addbcb5b6c99b8051e1e0ad26bc5b fix the master
branch builds.

Change-Id: Icdd53a7cb037324a568e8eab529716e030e00583
2018-01-17 14:28:30 +01:00
Pau Espin 13738fa235 jobs: osmo-trx: Set slave_axis to use only debian9
Debian 8 contains quite old qemu and proot packages which have some
issues running the chroot infrastructure set up in osmo-trx's
jenkins.sh.

Change-Id: I24665880fff5a5b918bb6ffaf1e7bb51ae860b0b
2018-01-15 18:40:59 +01:00
Neels Hofmeyr 3eb4a4e4ac README: also hint at /n/home/dub8/.config/jenkins_job_builder/jenkins_jobs.ini
Change-Id: I8bb6792ab061edd3d688e387fa69cd8637617dee
2018-01-15 12:53:57 +00:00
Pau Espin 7d5bfdd722 gerrit-verifications.yml: Build osmo-trx with different optimization instruction sets enabled
Change-Id: I1d73165a397d98d8fb630f7adec45f00887c139a
2018-01-15 10:32:18 +01:00
Pau Espin 02ec80b3cd master-builds.yml: Build osmo-trx with different optimization instruction sets enabled
Change-Id: I651e182dfd62ef4b88d013d8b5960ce7e3562ecf
2018-01-15 10:31:57 +01:00
Pau Espin 7546e94852 master-builds.yml: osmo-sgsn: Remove duplicated concurrent attribute
Change-Id: I32938d4c1854ce65faa718eccaecb5e3143dbcd0
2018-01-15 09:51:12 +01:00
Max 971489df4a Fix missing OsmoPCU gerrit verification
The [yes, no] tuple was automatically converted to [True, False] by the
jenkins-job-builder but the combination filter still used old literal
check. Fix this by using boolean from the very beginning.

Change-Id: Idac6e53b1e0addbcb5b6c99b8051e1e0ad26bc5b
2018-01-12 17:07:27 +00:00
Max 191a374790 Notify per email about master branch build failure
Change-Id: I0a72d36d777ba582815b2cdef8130ee88c060b54
2018-01-12 16:56:05 +00:00
Max 3527fd63ad Send email on update-* job failures
Notify intern@ if either update-osmo-ci or update-osmo-python jobs
failed. Those are essential for our CI and test infrastructure so we
should look into related failures right away.

Change-Id: I0d51e35424a26eab7d38152e13f3ac6fd3f3997c
Related: OS#2821
2018-01-08 12:36:50 +01:00
Neels Hofmeyr c528cc12d0 jobs: master: fix: libosmoabis should trigger osmo-hlr
Change-Id: I9a122cee4fa98115140e4a34f623958697affed2
2017-12-19 23:55:49 +01:00
Neels Hofmeyr 85f74b5c90 jobs: gerrit: fix osmo-python-tests: gerrit project name
Change-Id: Idb4e93d88123f0a7e403af627345300dae86aca7
2017-12-15 20:29:31 +01:00
Neels Hofmeyr 51f77030fb jobs: gerrit: fix osmo-ttcn3-hacks scm and slave
Change-Id: I252c103450ad0da59ab18c88d78f20c750b22c98
2017-12-15 19:55:38 +01:00
Neels Hofmeyr fd7b2aae89 jobs: gerrit: fix URL for osmo-python-tests
Change-Id: Icaa44207ebbdc03c3af1a32f7491d2b4c9fb982d
2017-12-15 19:55:35 +01:00
Neels Hofmeyr 27af5a2c6f jobs: gerrit-verifications: make repos_url configurable
Change-Id: I24aadc2aeeeda762df61e7c56e4159a730010c97
2017-12-15 19:55:15 +01:00
Neels Hofmeyr 7e12155042 jobs: master: osmo-gsm-manuals: use new jenkins.sh, only on OsmoBuild1
Change-Id: Ida1301a3f83caff400e80c8b46504f98cb0894ab
2017-12-15 19:31:27 +01:00
Neels Hofmeyr 163eef27de jobs: cosmetic: readability: docker one-arg-per-line
Change-Id: I8b18a5bc54a879002b40b0fc51cd295e82beba4f
2017-12-15 19:31:27 +01:00
Neels Hofmeyr b62f264eaf jobs: master: adjust triggers to what was found on old jenkins jobs
Change-Id: Ib59247978ed92b72949260a79628b28754a44484
2017-12-15 19:31:27 +01:00
Neels Hofmeyr 4711c92582 jobs: add update-osmo-python-on-slaves.yml
Change-Id: Ib3982e1f18286cc45d5c7b849abfb91cad9e1b27
2017-12-15 19:31:27 +01:00
Neels Hofmeyr 7fd10510d2 jobs: fix poll-scm on update-osmo-ci-on-slaves
poll-scm was missing by accident

Change-Id: I027c5fa12c8be9434e3efec11976004c7924c472
2017-12-15 19:31:26 +01:00
Neels Hofmeyr 520c8a58d4 jobs: add build2-deb8build to update-osmo-ci-on-slaves job
Change-Id: I48246067f05227efc18b46cb1b29d1c50f4eab84
2017-12-15 19:31:26 +01:00
Max 1e857dcf1f Add osmo-python-tests to gerrit verification
Change-Id: Ia5db32b8ffe62f9578a55c9049d0c13fc6da7e83
2017-12-15 15:43:22 +00:00
Neels Hofmeyr 53bb902b3f jobs: master-builds: fix git master branch polling
The 'refs/heads/origin/master' somehow caused that git polling would not
trigger builds. 'origin/master' was succesful in a manual test, so set all jobs
to that.

Change-Id: Id033d1bfce6cc9e20fbbf9be462842b9e44bde83
2017-12-13 02:32:22 +01:00
Harald Welte cb7c6ee40f Add gerrit JJB for osmo-ttcn3-hacks
we simply call 'make compile' which will compile all of the projects
from TTCN-3 to C++

Change-Id: I2bb94c08259c130558f82bb4c084484be5b81c40
2017-12-13 01:21:21 +01:00
Pau Espin 787a51f51f jobs: Fix osmo-ggsn GTP build option
As far as I understand, the variable is populated using the name field.
In openggsn build it matches, but it doesn't in osmo-ggsn.

Change-Id: Ifb1a630b77a8c2f442e26dbef8e608882e8f9a71
2017-12-09 02:45:25 +01:00
Neels Hofmeyr 50201fc9e3 jobs: master: drop legacy openggsn (now is osmo-ggsn, also present)
Change-Id: I219a988f94b465ac8bb77319735aedbe49707c16
2017-12-09 02:45:04 +01:00
Neels Hofmeyr 55ea22ede3 jobs: master: drop unused axis a4
Change-Id: I4b9db4077eacca649c679333e24b2eb7338a96e6
2017-12-09 02:18:04 +01:00
Neels Hofmeyr 3e69d3d7d4 jobs: master: fix post-build trigger of downstream jobs
Firstly, we don't have the downstream-ext plugin installed on our jenkins. We
want to use the 'trigger' publisher instead.

Secondly, since the jobs created here are called master-*, we also want to
trigger master-*.

master-libosmocore also triggers SIMtrace and xgoldmon, which aren't covered by
this jobs config, hence they don't get a master- prefix.

Change-Id: If9e8c4b02fce34fddceb4f07bf024210600f6270
2017-12-09 02:18:04 +01:00
Neels Hofmeyr 28564a6977 jobs: gerrit, master, update-osmo-ci: fix build-discarder section
The build-discarder section was silently not working. It needs to be nested
below a 'properties' node.

Also the names need to be dashed and not camelCased.

Change-Id: I9503200a8873e616f9195d4bb1d6163c464b305e
2017-12-09 01:13:18 +01:00
Neels Hofmeyr 40c52cf1d3 jobs: master-builds: libosmo-sigtran should trigger bsc and iuh
osmo-iuh in turn triggers osmo-msc and osmo-sgsn, no explicit triggers needed
here.

Change-Id: Ifd950660cdc3417e82b0a8f4ce2b1efde880cb7a
2017-12-02 23:15:56 +01:00
Neels Hofmeyr 80d0d8cd9b jobs: master-branches: trigger sgsn from iuh
osmo-sgsn uses libosmo-ranap and hence should be triggered from osmo-iuh. This
naturally "includes" a trigger for libosmo-sigtran.

Change-Id: Ia356dc2a8d5120f9d6262bf8eb25c32fe71e76c9
2017-12-02 23:15:56 +01:00
Neels Hofmeyr 43a1c96075 jobs: master-builds: osmo-bsc is now also a downstream of osmo-mgw
Change-Id: I03c63108bd845ee723d565c3dddd4e930bb68bef
2017-12-02 23:15:56 +01:00
Neels Hofmeyr d2bd8f5095 jobs: master-builds: apply various initial fixes
libosmo-sccp, osmo-ggsn: The osmo-gsm-tester builds are downstream builds, yes,
but we configured that with the osmo-gsm-tester builds: instead of telling
libosmo-sccp to build osmo-gsm-tester_build-osmo-stp when done, we configure
the osmo-gsm-tester_osmo-stp to build after libosmo-sccp. So that the master
branch builds don't need to have any knowledge of osmo-gsm-tester.

osmo-msc build triggers should rather be post-build triggers of osmo-iuh and
osmo-mgw, like the others. Then we can also drop the pollscm here, and use the
pollscm that is common to all other builds.

Call these jobs 'master-*'. It more accurately says what they build, and also
we can install the jobs from this file next to the current, old ones, without
overwriting them and thus we'll have an easy rollback path. The new ones can
co-exist with the old ones until the new ones are verified to work, at which
point we can drop the old ones.  Line 313:

IIUC the safest git branch is 'refs/remotes/origin/master'.

This is still untested!

Change-Id: If2ad9c90a0986d1304cd53383d3df5b375f23ac8
2017-12-02 23:15:56 +01:00
Neels Hofmeyr 30e4b60a13 jobs: rename normal-builds.yml to master-builds.yml
Also apply the rename in the job names

Change-Id: If623e573e49d4f1a409139c112afbc34e4cc450e
2017-12-02 23:15:37 +01:00
Harald Welte 7535f0cd16 Describe our normal (non-gerrit) build jobs in jenkins-job-builder
after the recent successful conversion from manual job definitions
to jenkins-job-buildre of the gerrit jobs, this is an attempt to convert
also the non-gerrit jobs for the common osmocom projects.

WARNING: this file has not been tested yet, it's a WIP.

Change-Id: Ib04707393264a845876659d7bee0cdc9f8b897b6
2017-12-02 22:11:25 +01:00
Neels Hofmeyr 6a97f52b9a jobs: describe how to install jenkins-jobs on deb 9
Change-Id: Id3a0684e567ae26ca8158fda56898eb683374d09
2017-11-28 05:44:06 +01:00
Neels Hofmeyr bb459a2d0b jobs: update-osmo-ci-on-slaves: remove build2-deb8build
The node is offline and has been for a long time. The last osmo-ci-on-slaves
job ran for a week waiting for it to come back online.

Change-Id: I5a315d1ce3d7d5763ba07bf29f9cdd5d6f7c6491
2017-11-28 05:16:37 +01:00
Neels Hofmeyr 716413c5be jobs: add update-osmo-ci-on-slaves.yml
Change-Id: Ia933288f87f53f832732f650ba4be30d58faea7f
2017-11-28 05:16:37 +01:00
Harald Welte 92525a71d4 osmo-ggsn + openggsn: Build with and without kernel GTP support
Change-Id: I974ba11fd8ef1ed87ec87fb64b8da44d5a8fec9f
2017-11-14 14:47:14 +09:00
Harald Welte b9f2e75fbe jenkins: Add gerrit verification job for libgtpnl
Change-Id: I9dfe4a619f75574cc0a61ab978f4450252b6c171
2017-11-12 14:19:38 +00:00
Harald Welte d81f473140 gerrit jenkins jobs: Remove comment-added-event
This trigger is responsible for triggering another build
once the first build is complete and sets a +V

Change-Id: I235e0211a01da0eb74d8e6a9581aa34b59073ca0
2017-11-03 19:46:13 +01:00
Neels Hofmeyr ccafbb7c53 jobs: gerrit: fix openbsc: name must case-sensitively match git repos
Change-Id: I699c4f5f04a416b92be395c303d6bf0edbf320e4
2017-11-01 14:42:09 +01:00
Neels Hofmeyr fdfa976db0 jobs: gerrit: fix osmo-hlr slave label typo
Change-Id: I78a4b600571e79174dbbdd24bbee23df4b2fd221
2017-11-01 14:20:07 +01:00
Harald Welte 64c82cdeaf gerrit-verifications.yml: Remove FreeBSD_amd64 builds
In early September we asked on the public mailing list if there are
any users of the FreeBSD builds, and there was no response at all.

Let's disable the build testing on FreeBSD.  This will significantly
speed up our build testing, as well as pave the way for a more
comprehensive docker/containerization of build testing.

We're still extremely happy to merge any patches for support of
FreeBSD or other operating systems.  But the core Osmocom developers
will not perform related testing / porting.

Change-Id: I2c6d2a17c3cf9d8c78c3675995493e30cbc6be0d
2017-11-01 09:50:16 +00:00
Neels Hofmeyr d753583177 jobs: gerrit: make all docker builds concurrent
The point of using docker is to allow concurrent builds, hence set 'concurrent:
true' for all jobs using docker.

Change-Id: I6333ee2856cbeb0cc3eb14c381ac8faf838c5f97
2017-11-01 01:39:12 +01:00
Neels Hofmeyr 068ed25a2a jobs: README: better explain newlines curiosity and update behavior
Change-Id: I9707091a4dcfc65bd378fab02bf24692debb60ed
2017-11-01 01:34:24 +01:00
Neels Hofmeyr fb06801fee jobs: gerrit: fix missing indents in 4 jobs
fixed in osmo-bsc, osmo-mgw, osmo-sgsn, cellmgr-ng:

Spanning a single shell command across several lines with backslashes in the
end breaks when the newlines are not preserved: the backslashes escape a
following space, which is joined to the following cmdline arg.

Add the leading less-indented comments that curiously lead to preserving the
newline characters in the cmd sections.

Change-Id: Icfd6cfb7ca4172795620e1d7ee60610db4f7226b
2017-11-01 01:26:29 +01:00
Neels Hofmeyr 4cc4060a12 jobs: gerrit: fix osmo-mgw and osmo-bsc: remove stray '
Change-Id: I565876176c3827a2696a228f9a81a1cc10a34ca9
2017-10-30 05:14:34 +01:00
Neels Hofmeyr 0ee68a25f3 jobs: gerrit: fix cellmgr-ng
Change-Id: I4ab24f66909e43c0447265e027593a56d0dfa52c
2017-10-30 05:14:28 +01:00
Neels Hofmeyr cf60aaa5f2 jobs: yml files: set vim expandtab (and shiftwidth)
Having tabs in the yml files cause parse errors. For vim convenience, add
comments that instruct vim to expand the tabs to spaces.

Change-Id: I5f0598a31e30d1a9440c40935644bb782f645664
2017-10-30 04:43:38 +01:00
Neels Hofmeyr 874f03a3a2 jobs: overhaul README to actually help in usage
Change-Id: I5981583d9248bfb47a42e930bd7733bfbce1219c
2017-10-30 04:43:38 +01:00
Neels Hofmeyr 6d9ba13ef0 jobs: fix multiline cmds with less-indented first line comments
Interestingly enough, only a line that has more indenting than the first line
also receives an actual newline in the resulting jenkins Execute Shell section.
Hence insert '# keep first line with less indent' comments.

Change-Id: I13bcb41fa0e59b60a201c2b769bad42067e34ab8
2017-10-30 04:43:38 +01:00
Neels Hofmeyr 4280b49da8 jobs: gerrit: fix: don't do git plugin cleanup
After the "manual" cleanup from I2409b2928b4d7ebbd6c005097d4ad7337307dd93 has
been applied in numerous jenkins.sh scripts of the various osmocom projects,
drop the git plugin cleanup step.

Rationale:
- The git plugin cleanup apparently does not check against non-writable files,
  like leftovers from a failed 'make distcheck'. If any are left behind, the
  build fails even before the build steps start.
- The git cleanup would wipe out all git clones, which we're trying to re-use
  across rebuilds now.

The osmo-clean-workspace.sh takes care of this, so don't use the jenkins
plugin.

Change-Id: I8a43b851cef2ad7e8582f1e9bbe3547e3b77fc1a
2017-10-30 04:13:45 +01:00
Neels Hofmeyr 7b27e14340 jobs: gerrit: fix osmo-msc: missing ARTIFACT_STORE docker mount
Change-Id: Ibeca6f1afad263fb9756ad1d6ce3e55d51ac322b
2017-10-30 04:13:45 +01:00
Harald Welte 9dd60ec017 gerrit-verifications.yml: Don't skip the vote
Change-Id: I4eb153701baf1652394bda7505dcd3bc31e28570
2017-10-29 18:48:15 +01:00
Harald Welte 7c40acc9bb gerrit-verifications.yml: Don't build drafts or no-code-changes
Change-Id: I19e8004a2016626e3525eca690c84800715e4fdc
2017-10-29 18:48:15 +01:00
Harald Welte 0a6bed8905 gerrit-verifcations.yml: Make sure we add a +V=1 on successful builds
Change-Id: I0b3bcb4661a144e231613398031c0aadf8781bb8
2017-10-29 18:48:15 +01:00
Harald Welte 920b27baa3 gerrit-verifications.yml: Add missing git 'name' and 'refspec'
The 'name' and 'refspec' attributes for the git SCM fetcher were
not configured correctly (like in old manual job definitions)

Change-Id: Ibc63751838c14a449464afeec56930021bef37be
2017-10-29 18:48:15 +01:00
Harald Welte 6a582f1177 gerrit-verifications.yml: Turn gerrit URL into hyperlink
Change-Id: Ia9855f8d8c547f32439df2eea50fb755dfeba388
2017-10-29 12:16:03 +00:00
Harald Welte 5ce7f79e68 gerrit-verifications.yml: State in job description that job is managed
to prevent accidential / unintentional manual modification

Change-Id: I26b20a879fe29f153487757ac50f88acb9655338
2017-10-29 12:16:00 +00:00
Harald Welte 4732773c39 gerrit-verifications.yml: Rename from *-gerrit to gerrit-*
Let's rename the auto-generated jobs to make it easier to differentiate
from the old manual jobs with -gerrit suffix.

Change-Id: I9e46f03834e1b500b27c16f4a728f0b82dff0933
2017-10-29 12:15:55 +00:00
Harald Welte 3027ead9e9 gerrit-verifications.yml: Manual sync with current jobs
This is the result of one pass through all gerrit jenkins jobs
currently [manually] configured on jenkins.osmocom.org together
with alphabetically sorting the definitions to match the order in
the Jenkins Web UI.

Change-Id: I42051e76234b2695934183188f074ee7e467f58c
2017-10-29 11:56:34 +00:00
Harald Welte b63da48bd7 Add JJB YML for Osmocom_OBS_latest
Change-Id: I59a901727e35a35ba0fe73c09accb0bd1fa6b7ab
2017-10-28 23:44:05 +02:00
André Boddenberg 6c401be095 Gerrit verification jobs as Jenkins Job Builder YAML [1] file.
All jobs are in jobs/ directory and will be automatically verified and
deployed in a follow-up commit.

Note: osmocom-nightly-nitb-split.yml has been moved to jobs/ dir.

[1] https://docs.openstack.org/infra/jenkins-job-builder/

Change-Id: I04387367a6e2d737bfb50423c81a8908d3c2a89f
2017-09-19 16:05:38 +00:00