Commit Graph

160 Commits

Author SHA1 Message Date
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