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
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
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
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
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
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
This requires Change-ID I800ebe0f33cf7c86eea65d2e186c6af12fee6db7 from
osmo-ttcn3-hacks.
Fixes: OS#3179
Change-Id: Idee5a986e4cda8db601982ac3f2662bc20fe3f5f
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
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
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
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
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
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
Add the same build discarder as we have in master-builds.yml. This
should help with the disk space problems.
Change-Id: Ib7f01751ca5f6fb3e29a436982e2891d9cab0488
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
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
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
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
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
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
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
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
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
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
Let all TTCN3 related Jenkins jobs get generated by
ttcn3-testsuites.yml, overwriting the old manually generated jobs.
Related: OS#3268
Change-Id: Ib4c0949d21fcbc16c61c6ffe9d3eedea198aaf1d
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
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
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
The gerrit-osmo-bts job is used for build verification of osmo-bts
patches. This adds (untested) support for OC2G
Change-Id: I62a9a5ec357b7246b2d7915681c646c79eda4b76
* 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
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
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
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
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
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
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
This is the same as done for the master builds in
I6f025c642d5ae57cdda9d7b34bbaeb82ca119354,
seems I forgot to follow up with this one.
Change-Id: I9204ca2f083c8a6a04c6c0fc7d51752a4f1a4830
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
It's not any more used, neither does the job even work, because
the split file got already removed.
Change-Id: I6e85d6384f2a377f1ebe0e06c9ca92a594050eec
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
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
When https://gerrit.osmocom.org/#/c/7725/ has been merged, there
is no need to limit this build to OsmocomApi.
Change-Id: Ic5fe39b643e7a15dbfd2efd55dce78dde30cf099
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
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
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
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
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
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
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