The point of using docker is to allow concurrent builds, hence set 'concurrent:
true' for all jobs using docker.
Change-Id: I6333ee2856cbeb0cc3eb14c381ac8faf838c5f97
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
libgtpnl is the userspace library for using kenrel GTP-U support,
which is used by openggsn (and will be used by osmo-ggsn).
Change-Id: Iad600a36cb658bbd874b4587ec514f49703d6a45
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
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
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
The 'name' and 'refspec' attributes for the git SCM fetcher were
not configured correctly (like in old manual job definitions)
Change-Id: Ibc63751838c14a449464afeec56930021bef37be
Let's rename the auto-generated jobs to make it easier to differentiate
from the old manual jobs with -gerrit suffix.
Change-Id: I9e46f03834e1b500b27c16f4a728f0b82dff0933
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
Make sure osmo-deps.sh passes no $deps in to osmo-clean-workspace.sh.
In most builds, $deps is a relative path, and when within a dir that contains
no such subir, calling osmo-clean-workspace.sh has no effect. However, in some,
$deps is passed in as absolute path, so when within a deps/... subdir in
osmo-deps.sh, the script would still find the abspath and clean out all deps
subdirs; for example in osmo-bts.
Change-Id: I431d20aedefc708645a1f1862334cffaef20b928
'checkout -f' more accurately does what is intended. 'reset' changes the
current branch to some hash, 'checkout -f' force-checkouts another branch.
Change-Id: Ic6279ebaf8160bceb3fa2ab40eff0b888ecd5009
In osmo-deps.sh, add second arg $branch, and also name the first one (i.e.
$project). Use the passed branch or 'origin/master' by default.
In osmo-build-dep.sh, it's not necessary to do a second 'git rev-parse HEAD',
osmo-deps.sh already does it.
Change-Id: I598c41a12352acea6e49a321ad2f665f6ea07a44
So far, each jenkins job does its own cleanup, more or less well. Also, jenkins
git config offers the 'Clean before checkout' option, which seems to fail when
there are non-writable leftovers from a failed 'make distcheck'.
Furthermore, our jenkins build slaves have unused compiled binaries piling up
by the gigabytes: each matrix build x each parallel build and each compiled
dependency therein builds .o, .a, .so and executables plus installs them to a
local prefix, and just leaves them sitting around to rot until the job runs
again. Instead, we want to clean them out when building is done.
All of this calls for a unified cleanup script that knows how to clean a
workspace properly, to run once before and once after each jenkins build.
Here it is.
Use that function in osmo-deps.sh instead of duplicating cleanup steps.
Change-Id: I2409b2928b4d7ebbd6c005097d4ad7337307dd93
This was the last package that we only built in
osmocom:nitb-split:nightly, so we can remove the latter, too
Change-Id: Ib99e0775e9db30ec3c5263bb3a364d8cab4633c3
this package doesn't exist in the OBS anyway, yet we continue to attempt
to upload it there. Stop that :)
Change-Id: I0f0726ed412e4a281dcf99047ca22b494216b4ad
We don't need a separate build_foo function if it is identical in
its body except for the 'foo' (project name). Let's clean this up.
Change-Id: I27e9fc94142b42a7b7c2f9eca89056e1f90f1f0e
If a given git clone already exists, simply do a fetch + checkout -f,
rather than cloning a decade worth of history from scratch.
Change-Id: Icecb2d00a75bc303d84efafee5c1f2d52ba1b6b3
This is no longer needed by upstream osmo-bts since Change-Id
I9f004fb5c4c1db29d4792dfd281d388c7063da13
Change-Id: Ie53482a1538d1559e764da86dbbb78031c9c386b
For some strange reason, in commit
8e9fe08080, the osmocom:nitb-split:nightly
package feed was rendered to use old packages for sgsn+ggsn, rather than
current ones by removing the "osc upload" from this script, but still
leaving the packages in OBS at
https://build.opensuse.org/project/show/network:osmocom:nitb-split:nightly
Removing them half (only in osmo-ci but not at OBS) is a bad idea, as
it leaves people with old packages who actually want to use nightly
builds.
Also, removing the packages in general is a very bad idea. People
are *either* using osmocom:nightly, *or* they are using the
osmocom:nitb-split:nightly feed, but not both. So we cannot remove
any packages from the osmocom:nitb-split:nightly feed until we have
introduced all those packages to osmocom:nightly *and* we have given
people sufficient notice to update!
Change-Id: I5c091127d92a4b4beb7355e16abd9788fa3b9fe5
* use coverity check on osmo-ggsn instead of openggsn
* move osmo-sgsn and osmo-ggsn from nightly-split into nightly
Change-Id: Ia49969cbfb9ef57b635a3b5759f411f71a54f8e1
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
We are not using the Docker registry due difficult GPL compliance
but build the image on the build node itself. After prototyping
if containers can be used for building these files remained forked
on the node. These days it seems to be easier to complain than to
say thank you that this new approach has its merits. Copy the files
from the build slave to the directory they should have been in.
Change-Id: Icb0406f96b0c18e77be51ad8317c2668fb23a45e
The script by Neels Hofmeyr <nhofmeyr@sysmocom.de> has actually nothing
to do with libosmocore itself - it's a generic build-time check used by
jenkins so it should be part of this repo to avoid extra checkout of
libosmocore just for this script.
Change-Id: I079218b61f512975ec5bfc7dc23503ec369cbb5a