Commit Graph

483 Commits

Author SHA1 Message Date
Oliver Smith e26866af0d OBS: make nightly packages conflict with latest
Add conflicting dummy packages osmocom-nightly and osmocom-latest, and
make all packages from each repository depend on the right one.

As usually, the latest packages will only get changed when a new release
appears. So the dependency will get introduced after tagging a new
release. I have tested in an own OBS namespace, that everything works as
expected.

Related: OS#2640
Change-Id: I79c45e798c10a65443b9fb9ecb54393d1918608a
2019-06-17 12:21:32 +02:00
Oliver Smith 83f4f25d7c OBS: build osmo-gsm-manuals-dev in latest
Enable in osmocom-latest-packages.sh. Check it out and create the source
package for the latest release as usually, but also create a second
version for debian 8 with adjusted dependencies (like in nightly [1]).

[1] Change-Id: I3570599ede51b974d350064f44f77e360fafd8b0

Related: OS#3899
Change-Id: Ib7251cca9116151e473798879375cd5eb48ff3ad
2019-05-29 12:41:11 +02:00
Oliver Smith 9dc7e2ad4b OBS: latest: remove redundant checkout in build()
Don't checkout a specific version in build(), this is already done in
checkout().

Change-Id: I74290968fe25a6311da0de26ff675bbd687ba156
2019-05-29 12:37:39 +02:00
Pau Espin 777a2f8060 nightly-packages: Update LimeSuite to latest tag (v19.0.4)
Change-Id: Id6c27a924e3005ffadc7720190b261f089beada1
2019-05-24 09:35:12 +02:00
Oliver Smith d15390302d gitignore: add nightly-3g_* (nightly OBS script)
Change-Id: I943eebc8787b78fef266df5654831e99122a4e6a
2019-05-23 11:47:33 +00: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 02ebc242b8 Fix oc2g poky SDK installation
It's poky_installer_file, not poky_install_file.

Also, don't mandate a version from april that's no longer on
downloads.sysmocom.de.

This was broken since Change-Id I35f34a089311808cb21a064dd50e41cd1887b320

Change-Id: If3adf078fd89b9d0c5151cdbf745123df34bbaba
2019-05-15 14:46:02 +02:00
Harald Welte a72c87cba2 Add osmo-e1d to gerrit-verifications.yml
Change-Id: I78cfd6052aebbe8cfa215928906f18f8afe3c06a
2019-05-11 21:08:47 +02:00
Harald Welte acb2fb6078 osmocom-latest-packages: Enable osmo-sysmon
Since libosmocore 1.1.0 and libosmo-netif 0.5.0 are released, we can
address the TODO and build osmo-sysmon also in our latest feed.

Change-Id: I48bd5aff2ae315b6f462facea70222eb2cdd2d58
2019-05-11 06:15:24 +00:00
Vasil Velichkov a388a9bf8e jenkins docker: Install lcov and lcov-cobertura
They are used for generating code coverage reports

Change-Id: I26896a9807e756b1f935cd3ed524d25ee22efaed
2019-05-10 10:47:27 +00:00
Vadim Yanitskiy f137b5b1a4 coverity: add OsmocomBB (without firmware)
Change-Id: I2a4bcca411361484e872361dfd16d46189f52f35
2019-05-10 10:42:59 +00:00
Oliver Smith 72a84b551e nightly-packages: add osmo-gsm-manuals-debian8-jessie
Create a compatible package for debian 8 with adjusted dependencies.
While at it, refactor create_osmo_trx_debian8_jessie() into a generic
checkout_copy_debian8_jessie() function.

Related: OS#3899
Depends: I5b9575ceb1141961e570643a5755a2bd6b6a4254 (osmo-gsm-manuals)
Change-Id: I3570599ede51b974d350064f44f77e360fafd8b0
2019-05-08 11:52:22 +00: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
Pau Espin 363015700f ansible: Document how to use ProxyJump to access ipv6 nodes
Change-Id: I31b8f8ea5ed84a676c97ad2f6802be19f0e394d9
2019-04-26 15:59:01 +02:00
Alexander Couzens 0d33d9204a generalize the install-poky-sdk role to support multiple sdks
Change-Id: I35f34a089311808cb21a064dd50e41cd1887b320
2019-04-26 15:38:12 +02:00
Alexander Couzens d745bee443 osmocom-jenkins-slave: fix jessie-backports as it got deprecated
Change-Id: Idae47a6529f6a870e29ab688c3479b7ef4ba200a
2019-04-26 15:38:02 +02:00
Harald Welte bea2c9c70d ttcn3-slave: Add libfftranscode0 + libffstranscode-dev packages
Those proprietary libraries are required for testing APER based
protocols such as those spoken on IuCS, IuPS and Iuh.

Change-Id: I07489575d0b71c36b35096ecf1e2aab9577cb43e
2019-04-21 12:31:04 +02:00
Pau Espin fb69674156 nightly-packages: Update limesuite hash to support LimeNet-Micro
Newer LimeSuite (at least 7557e291209fc66a78ffa74dd8314e75841f7c96) is
required to have LimeNet-Micro working properly with osmo-trx.
We update to current newest master since other fixes related to sample
rate are applied after the commit mentioned above.

Related: OS#3861
Change-Id: I62779f3bdbc4a459363a1d660d96d5f02f7763c1
2019-04-18 13:01:00 +02: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
Oliver Smith dc5fc51c1f OBS: build osmo-gsm-manuals-dev in nightly
Enable in osmo-nightly-packages.sh, and add as coment in
osmocom-nightly-packages.sh for now (needs a tagged release first).

Related: OS#3899
Depends: I7edb5093e5b58eb3b0f7af2376476db4026db735 (osmo-gsm-manuals.git)
Change-Id: Ideeae4f7846fa5626fe2c1f5a77e07a3c6e626fe
2019-04-15 08:53:47 +02:00
Pau Espin 53f2e1585f nightly-packages: Build latest tag of limesuite
Like we actually do already on latest-packages.

Change-Id: I5a9e97a7a93c1d2a9983926cd0f5d7255e9666bd
2019-04-12 17:53:15 +02:00
Pau Espin bfea6499a3 nightly-packages: Move some code and rename some vars to look similar to latest-packages
Change-Id: I177bb7fb75e293ef665e95363a38c6b4f8e49c13
2019-04-12 17:53:15 +02:00
Pau Espin a5a4c5a867 nightly-packages: Remove unused variable
Change-Id: Ic120dbc134cba9bd77098ab14a5dba3d5c4d71b9
2019-04-11 15:32:59 +02:00
Pau Espin 5f9f7ca8b4 nightly-packages: Remove duplicated check
Change-Id: I9659e71d87b03971673da3bfb2101de9d5fe3c6a
2019-04-11 15:32:50 +02:00
Pau Espin 6fa6e95342 ansible: gsm-tester: Install osmo-gsm-tester_netns_setup.sh
Change-Id: Iaa8802b86429abfaf84fc0f20bd207737dbc9812
2019-04-04 16:38:39 +02:00
Pau Espin 8233bf7e9a ansible: gsm-tester: Remove net iface name from hash input
Otherwise every time the interface is added (ie when it goes back to
default netns), the generate name changes due to DEVPATH containing
current name at the end of the path.

Change-Id: I87c686caa23a3b39e48e0762d4323a59be7cd4b8
2019-04-04 15:42:08 +02:00
Pau Espin 1304063a4a ansible: osmo-gsm-tester: Make modem net ifaces persistent
Currently ofono doesn't catch network interface renaming (takes the name
at ofono startup time).
If a modem crashes, its net iface is unregistered and registered again,
and it can happen that the new name is not the same as before (for
instance, wwan8->wwan0 if wwan0 is located on another netns).

These udev rules allow creating persistent unique names to prevent modem
crashes resulting on interface name changing.

dhcpcd is known to race against udev when managing dev interfaces,
bringing them up before udev sometimes, and then udev is unable to
rename it. By denying dhcpcd from managing modem ifaces (ww* and r*
according to kernel/our rules), we get rid of this issue.

Related: OS#3881
Change-Id: Ic3ef75285aa84f9aa606562cd2f6166de186c1a6
2019-04-03 16:06:21 +00:00
Harald Welte 255724fb4a jenkins-slave: Use "jessie-backports" only on jessie systems
Change-Id: Id62c03b9759367bd5bbe20144e9ad7048d12e61b
2019-04-03 12:24:05 +02:00
Harald Welte 15ae47aa99 osmocom-nightly-packages: build osmo-remsim
As of Change-Id Id5044b1835190edc948952d207a5196a18669eb1, osmo-remsim
contains Debian packaging information and hence we can build it as part
of our nightly feeds.

We're not yet enabling 'latest' builds as we need to wait for the next
libosmo-abis release for that (requires the IPA keepalive FSM).

Change-Id: Ic367dc95f46cece4bd769061af860fd82b4bd2e9
2019-04-03 12:23:34 +02:00
Oliver Smith 6c603bac02 docker/rebuild_osmocom_jenkins_image.sh: set -e
Exit with error if one of the docker commands is failing (i.e. don't
exit with 0 when building the jessie image failed, but the stretch
image got built properly).

Change-Id: I6faaf9303b4facb0965131615bc73541dd309c51
2019-04-02 14:15:40 +02:00
Oliver Smith 23d603a3af docker/rebuild_osmocom_jenkins_image.sh: pull images
Prevent building docker images on top of outdated Debian images, where
the package download feeds have been disabled.

Related: Change-Id I1076bbb7d77bdc99f5d60d641c09ce965fb9dfc6
         (docker-playground.git)
Related: OS#3869
Change-Id: Id840094aec51bf51d920aaa017a2f99fcb866f55
2019-04-02 14:15:33 +02:00
Oliver Smith f1e5e56118 Change jessie-backports URL to debian archive
Fix docker/Dockerfile_osmocom_jenkins.amd64 by fetching jessie-backports
from debian archive.

The jessie image is still being used by various jenkins jobs generated
by master-builds.yml and gerrit-verifications.yml. We want to keep using
it for some more time, to make sure that build testing ("make check")
passes on debian8/jessie, as some users may very well be using old
distros.

See also:
* https://lists.debian.org/debian-devel-announce/2019/03/msg00006.html
* https://unix.stackexchange.com/q/508724

Related: OS#3894
Change-Id: Iba033e64876b7ed9d329c2a636a0ee5eb3af946e
2019-04-02 13:50:55 +02:00
Oliver Smith ebb42f8bde build-old-tags: build libosmo-legacy-mgcp
Build osmo-mgw 1.4.0 (which provides libosmo-legacy-mgcp) and install
it into a different temp dir. Allows properly building osmo-bsc 1.2.x,
as soon as a new release is tagged, which makes it use
LIBOSMOLEGACYMGCP_CFLAGS and therefore pick up the include path
properly [1].

osmo-mgw 1.4.0's "make check" doesn't pass right now, so add a check
parameter to build_repo() and disable them when building
libosmo-legacy-mgcp. The checks will get executed later, when the
depends are installed and we are building various tags of Osmocom repos,
including osmo-mgw 1.4.0.

While at it, slightly refactor build_repo() to put all arguments into
descriptive variable names (as it is getting a bit longer now).

[1]: Change-Id: Ibd7948f12da710f8ca2b8fde8870f134308eb908

Related: OS#3867
Change-Id: I63d16f8e44c14dee46e2ef3fd050a421017c56b0
2019-04-02 08:03:24 +00:00
Oliver Smith e73ac2aea4 Cosmetic: build-old-tags: osmo-msc: note fixed in
Change-Id: If4d84e3c8c2b8d75136f7440a737956d654f2297
2019-03-30 09:30:47 +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
Oliver Smith e9fbc29e5a build-old-tags: known error: osmo-bts-1.0.0
Change-Id: Ifa9953161ad4dbead09675f367baeffe19c788b7
2019-03-28 09:32:14 +00: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 15c1f80dcc Add osmocom-build-old-tags-against-master.sh
Build old releases of Osmocom programs and libraries against
"master of the day" to detect breakage.

Redirect each build's output to its own log file, so it is easy to see
what is currently getting build, and what failed. On error, print the
end of the new failing build logs, along with a note to find the full
logs in the jenkins artifacts.

This initial configuration builds the last three release tags of the
Osmocom repositories against master. The configuration can be changed
easily.

Indicate known failures with "err" instead of "ERR" in the output, do
not cause them to fail the build and do not print the beginning of the
error log (it is still in the artifacts). This way, new errors stand out
and don't get overlooked among the known errors.

Related: OS#3765
Change-Id: I7cb45cc40c9930840a3d4e6a86f39e1400478ed3
2019-03-26 15:54:38 +01:00
Oliver Smith e81f90f7e1 osmo-build-dep.sh: run 'make check' when CHECK=1
Prepare for osmocom-build-old-tags-against-master.sh.

Related: OS#3765
Change-Id: I248b53d7a6fe1b64f2a994c568c0466dc93858de
2019-03-26 10:39:13 +01:00
Oliver Smith f8653decf5 osmo-build-dep.sh: cd into subdir before building
Support building the legacy openbsc source with osmo-build.dep.sh. This
will be used by the upcoming osmocom-build-old-tags-against-master.sh
script.

Related: OS#3765
Change-Id: I852e103e80bf295f692cf13c4cb38e80fbc19eca
2019-03-26 10:39:13 +01:00
Oliver Smith 3b3a250f6b osmocom-list-commits.sh: move functions to common.sh
Prepare for the upcoming osmocom-build-old-tags-against-master.sh
script, which will benefit from querying the last n git tags in advance.

Related: OS#3765
Change-Id: I61be4cffb9275cabc1b253f0b298503ad0d3aea4
2019-03-26 10:38:58 +01:00
Oliver Smith bb714ca042 osmocom-list-commits.sh: fix sorting release tags
Properly sort "git ls-remote" output, which looks like:
352f32c9cffef2e5df99cd2f03368dc56c99ee23	refs/tags/0.4.0

Use / as field separator and field no 3, instead of assuming that the
string gets split automatically after the tab character (which it does
not).

Use -V (version sort) instead of numeric sort.

Change-Id: I334e684ac5109fc289b68af78165862148074ea7
2019-03-22 15:57:38 +00:00
Pau Espin b3b2e37246 scripts: Enable osmo-sysmon debian package OBS build
Change-Id: I638c58be1ddf5e7fcf5a51de532ae8c4c06dcdbb
2019-03-22 12:51:14 +00:00
Oliver Smith 60a4fb2062 jobs: add osmocom-list-commits.yml
Related: OS#3840
Change-Id: I9a65cb750bbe6c278b9f67eb70bdb36759cb775b
2019-03-20 11:41:28 +01:00
Oliver Smith 391bdf542f Add scripts/osmocom-list-commits.sh
Generate a table of Osmocom CNI repositories and their latest tag,
related commit, and last commit on master.

Related: OS#3840
Change-Id: I91cab0139229e6c1c67e889d33b3d984025bc9da
2019-03-20 11:11:32 +01:00
Harald Welte 915a2f76aa build_deps: add libulfius-dev and libjansson-dev for osmo-remsim
Change-Id: I8d490babb4f1f47e94d15c74a8fba439522e1e18
2019-03-15 08:21:00 +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