Commit Graph

852 Commits (8e3b3ff43c721326451e357cc4fbb685138df79f)

Author SHA1 Message Date
Harald Welte 8e3b3ff43c ttcn3-bts-test: use osmo-config-merge to generate config files
This uses the config files from osmo-ttcn3-hacks.git instead of keeping
local copies around here, which has shown many times will get out of
sync.  Extract the original files (*.src.cfg) from the testsuite image
(ttcn3-bts-test) and merge them with the local *.confmerge files using
osmo-config-merge.  Use the resulting files (*.gen.cfg).

Unfortunately, osmo-config-merge is not capable of removing text blocks
or substituting specific parts, so we fall-back to using sed where it's
needed.  A good example is 'log gsmtap', as there is no
command for removing a logging target of such type.

Co-Authored-By: Vadim Yanitskiy <>
Co-Authored-By: Oliver Smith <>
Change-Id: If15461240f3037c142c176fc7da745a1701ae3f8
2022-02-10 22:49:24 +06:00
Vadim Yanitskiy edaa9d3033 ttcn3-bts-test: move generic config files into a directory
Change-Id: I1bc5c51306525c6829e9d8e2991555a99c9b49a2
2022-02-10 19:08:37 +06:00
Pau Espin 500f14e9db ttcn3-ggsn-test-ogs: Configure correct GTP-U GGSN address
Change-Id: Id42b591ba03f451e89b0e332edcf8f2cded9f444
2022-02-08 16:41:59 +00:00
Vadim Yanitskiy 31b54054f7 make/Makefile: generalize passing additional build arguments
Building of some images may require additional options to be passed.

Change-Id: Id1761062ac6ec1d1a4eb6a6b724e42cf576c848f
2022-02-07 17:19:36 +00:00
Vadim Yanitskiy 4403dbb0a5 open5gs-master: ensure consistent install paths with '-latest'
This allows running TTCN-3 test cases against both '-latest' and
'-master' images using the same configuration files.

Change-Id: Ib4dcf3a9f77205dcdd0ff4932763e202cb89001c
Related: SYS#5602
2022-02-07 16:37:21 +06:00
Vadim Yanitskiy e8c1360b92 open5gs-master: install dependencies using apt-get build-dep
This is a 3-rd party project, which may introduce new dependencies
in the future.  Rather than maintaining our own list of packages
to install, let's employ 'apt-get build-dep'.  This tool parses
'debian/control' and installs all dependencies automatically.

Change-Id: I71ad7256116ee30f15aff38fd38588aa2bfab456
Related: SYS#5602
2022-02-07 16:30:20 +06:00
Vadim Yanitskiy f532d78922 fixup: debian-bullseye-titan: run 8 parallel jobs for 'make deps'
Change-Id: I8fe9ff0b7c27ae7c71bd9bac6048b3073adf6bda
2022-02-07 09:37:41 +00:00
Pau Espin 80ac90261b Add ttcn3-ggsn-ogs testsuite
This new setup allows running TTCN3 GGSN_Tests against open5gs, which
will soon gain GTPv1C support.

Change-Id: Ia6c122fce951d369a5d2362cbe99d10d61c15f49
2022-02-07 08:47:33 +00:00
Vadim Yanitskiy c0e6589279 open5gs-master: migrate to debian-bullseye-build
It's a common practice to have a shared '-build' image and base
the '-master' images on top of it to avoid installing same
dependencies across different images.

Finally we can use more recent meson from debian's repositories,
so no need to depend on python and install it using pip.

Change-Id: I93422916b232f686dc27a2ff452e20e73db50f58
Related: SYS#5602
2022-02-04 13:33:40 +00:00
Vadim Yanitskiy 52da726342 debian-{bullseye,buster,jessie}-build: install 'equivs' package
This package is required by Debian's mk-build-deps tool.

Change-Id: Id599d70dc7e5222d62aa5c155bbc75420b913de5
Related: SYS#5602
2022-02-04 13:33:40 +00:00
Vadim Yanitskiy 078d8c10d8 debian-bullseye-titan: run 8 parallel jobs for 'make deps'
This reduces the time required for building test suites.

Change-Id: I6349d8304a248c7ae2a5373bf23a691f3a1cb991
2022-02-04 13:33:40 +00:00
Oliver Smith d6c5c7a034 debian-stretch-jenkins: install libelf-dev
Add libelf-dev to be able to build kernel modules with

Related: OS#5407
Change-Id: Id72d19ad08681cd7cb3194de2226292f19e96df5
2022-02-04 12:36:06 +01:00
Pau Espin 9e9066cca8 make: Add OPEN5GS_BRANCH build arg
Change-Id: I29f85a18f5629e50dc1db527e931a248ab69f8e4
2022-02-03 18:53:52 +01:00
Vadim Yanitskiy 27031af313 open5gs-master: remove both and
Having these scripts makes no sense anymore, because:

  * was moved to ttcn3-pgw-test,
  * runs non-existing open5gs-pgwd.

Change-Id: I96abc3ac57ade34cd79af6451bb201e36f5cd7f7
Related: SYS#5602
2022-02-03 13:56:25 +06:00
Vadim Yanitskiy bfabf9aa42 ttcn3-pgw-test: configure the 'ogstun' device for open5gs-upfd
Unlike osmo-ggsn, open5gs-upfd does not configure the tun interface
itself.  All IPv4/IPv6 addresses must be assigned manually.  This
is exactly why both PGW_Tests.TC_createSession_ping4[_256] fail:

  [sock] ERROR: ogs_write() failed (5:Input/outputerror) (../lib/tun/tunio.c:84)
  [upf] WARNING: ogs_tun_write() failed (../src/upf/gtp-path.c:448)

Take Harald's from open5gs-master and execute it in the
container running open5gs-upfd.  This fixes the ogs_write() errors.

Change-Id: I0730b1f69285484a0aa0ebd664dafd8e476b294f
Related: SYS#5602
2022-02-03 13:55:41 +06:00
Vadim Yanitskiy 647a5fdef9 ttcn3-pgw-test: set PGW_Tests.mp_run_prog_log_path to '/data'
Change-Id: Idd5a37e5768c400d410958149b97869db1e92fb1
Depends: I04ab92c13fcd893d39dbb6a8a8af5ff41d207e36
Related: SYS#5602
2022-02-02 23:34:56 +06:00
Vadim Yanitskiy 79534bb59e osmo-uecups-master: install iputils-ping for ttcn3-pgw-test
In ttcn3-pgw-test we order osmo-uecups-daemon to execute `ping`,
which is not available in Debian images.  Install it.

Change-Id: I73a78949d2e433d7cc4233395e45665056f083c8
Related: SYS#5602
2022-02-02 23:31:47 +06:00
Vadim Yanitskiy cb73113dc4 ttcn3-pgw-test: make osmo-uecups-daemon more verbose
Change-Id: Id491b4f9db63c82f3dc58f3fc523b4f84fea01e0
Related: SYS#5602
2022-02-02 23:31:47 +06:00
Oliver Smith 3817abe0e4 treewide: use almalinux instead of centos8
CentOS Linux 8 is EOL, attempting to install packages in it results in
an error. CentOS Linux is a rebuild of RHEL (stable versions). The
CentOS projects recommends to use CentOS Stream instead, which is a
build of the "public development branch for RHEL".

After the early EOL was announced on 2020-12-08, alternative projects
AlmaLinux and Rocky Linux have been established as binary compatible
forks of RHEL 8 (stable versions).

Both Alma and Rocky seem to be solid projects, see related Wikipedia
articles and their sources. Pick Alma and adjust the whole tree to use
the almalinux:8 docker image instead of centos:centos8.

Fix for:
  Error: Failed to download metadata for repo 'appstream': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried

Related: SYS#5818
Change-Id: I30e1a773b901b1d2187214445116c7f2aecc4e36
2022-02-02 10:02:54 +00:00
Vadim Yanitskiy bd5b02050d ttcn3-bsc-test-sccplite: set OSMO_SUT_{HOST,PORT}
This enables the test suite to obtain talloc reports between the
test case executions, which get stored together with the PCAP files.

Change-Id: I4e5474e8fc51d2ba8a0baca68e11df1346d7d4ab
2022-01-31 09:54:06 +00:00
Vadim Yanitskiy a0c91c8dbb ttcn3-bsc-test-vamos: set OSMO_SUT_{HOST,PORT}
This enables the test suite to obtain talloc reports between the
test case executions, which get stored together with the PCAP files.

Change-Id: Ia9525778fcecc60177be651624e2b2cf9bc75422
2022-01-31 09:54:06 +00:00
Vadim Yanitskiy 290df47815 ttcn3-pgw-test: fix do not use bash specific syntax
On some systems /bin/sh is a symbolic link to bash, so everything
works fine.  On systems where /bin/sh is a real sh, copy fails:

  cp: cannot access 'open5gs-{smf,upf,nrf}.yaml': No such file or directory

Change-Id: I64e9ddefdb6deb21b3bce3bc1af875a92919e6c9
Related: SYS#5602
2022-01-29 18:54:08 +06:00
Vadim Yanitskiy ed54b1c967 ttcn3-bsc-test/ fix '--ulimit core=-1' set twice
Change-Id: I3223f8f4cc09797de44971215a94fc62ad8d263b
2022-01-26 16:43:27 +00:00
Vadim Yanitskiy da4fcd23b2 osmo-uecups-master: add more complete osmo-uecups-daemon.cfg
Change-Id: I16e3f60485039efd3b965009608982c27511b680
Related: SYS#5602
2022-01-26 16:43:04 +00:00
Vadim Yanitskiy a4d794163e osmo-uecups-master/Dockerfile: fix copy-pasted ARG OSMO_BSC_BRANCH
Change-Id: Id713ddd24b7ba674d1a2035a0b3b62b1b9d26d9e
Related: SYS#5602
2022-01-26 16:42:45 +00:00
Vadim Yanitskiy 4f57079115 ttcn3-pgw-test: set '--ulimit core=-1' for osmo-uecups-daemon
Change-Id: I16f4eefa2bb48486c139ca63f2a48346f0532a8c
Related: SYS#5602
2022-01-26 00:23:13 +06:00
Vadim Yanitskiy 13d4b200b2 ttcn3-pgw-test: set '--ulimit core=-1' for open5gs-{nrf,upf,smf}
Change-Id: I2da2d502f339fc4cbea8fa72414eeaeb6078dfd9
Related: SYS#5602
2022-01-26 00:23:13 +06:00
Harald Welte 7c32f1deb7 ttcn3-pgw-test: add Dockerfile, and configs for open5gs
Change-Id: I69e2f5be8204cc4fd0cc0f4eb019ef1104121b60
Tweaked-By: Vadim Yanitskiy <>
Related: SYS#5602
2022-01-26 00:23:13 +06:00
Harald Welte 181c41e725 gerrit: Upgrade to 3.4.3
Change-Id: I91ebd53ea7279f76950cde959ffa2472d8f78593
Closes: OS#5404
2022-01-17 17:50:23 +01:00
Harald Welte e8c4a7fa65 gerrit: upgrade to 3.3.9 based container
... primarily as intermediate step towards 3.4

Related: OS#5404
Change-Id: Iabb36f0754773dc2e8a5be7d44979b85034e2d01
2022-01-17 17:50:13 +01:00
Pau Espin f6dee7ff95 Use osmo-hnbgw from osmo-hnbgw.git instead of osmo-iuh.git
Starting with release 1.2.0 of both repos, osmo-hnbgw binary is in
osmo-hnbgw.git, not osmo-iuh.git anymore.

Change-Id: I4ac6ede6a5b25ada211674bf3c46d79d7720a4bc
2022-01-05 12:44:16 +01:00
Pau Espin 878139ec79 osmo-hnodeb-master: no longer depend on libgtp
Newer osmo-hnodeb no longer depend on libgtp, get rid od the dependency.

Depends: osmo-hnodeb.git Change-Id I53ad4915aaed3bc7574036e963be10514e370fe2
Related: SYS#5516
Change-Id: I4e223823d08c7e9e17d87f54d9554429d31c8091
2021-12-24 12:22:27 +00:00
Oliver Smith f621a7d96f osmo-remsim-test-latest: install client-shell
Fix for failing ttcn3-remsim-test-latest, in osmo-remsim-client.log:
  /bin/sh: 1: osmo-remsim-client-shell: not found

Change-Id: Ia3041ea6f19ebe53e05117806acf88d3f86d4479
2021-12-24 10:52:12 +00:00
Oliver Smith 140a227472 add d9 to upstream_distro func
After the default UPSTREAM_DISTRO was changed from debian:stretch to
debian:bullseye, the "debian9-repo-install-test" container has gotten
built with bullseye instead of stretch. This is the reason for failures
of the jenkins job Osmocom-repo-install-debian9 we have seen over the
past days.

With this patch applied, it runs through again:

Change-Id: I98a19184ba936114c03cd5cc4f54a3173cbd9cfe
2021-12-23 16:52:11 +01:00
Oliver Smith 2aee5862d8 osmo-ggsn-*: install iproute2 for kernel tests
Add the package providing "ip", as debian bullseye doesn't have it
installed by default anymore.

Fix for:
  /kernel-test/ 9: ip: not found

Related: OS#4969
Change-Id: I95560868a899169bf0cb05a02d5034d9a77b6af7
2021-12-17 10:38:51 +01:00
Oliver Smith a7865832fa scripts/kernel-test/ update qemu args
Get rid of -nodefconfig, it has been removed in qemu 3.1. We are
supposed to use -no-user-config instead, which we already do.

Fix for this error we see since migrating to debian-bullseye:
  qemu-system-x86_64: -nodefconfig: invalid option

Related: OS#4969
Change-Id: I4a00f90980bf6d141ef8d86786e08d405db6db0b
2021-12-17 10:20:58 +01:00
Oliver Smith dc29c67909 debian-bullseye-titan: install ping
Add ping, so from osmo-ttcn3-hacks.git works as
expected. It is supposed to wait until tcpdump is properly capturing
packets, by generating dummy packets with ping and waiting until the
pcap file gains size. However since ping is currently not installed, it
will just wait 10 seconds before executing tests.

Fix for:
  Waiting for packet dumper to start... 0
  Waiting for packet dumper to start... 1
  Waiting for packet dumper to start... 2
  Waiting for packet dumper to start... 3
  Waiting for packet dumper to start... 4
  Waiting for packet dumper to start... 5
  Waiting for packet dumper to start... 6
  Waiting for packet dumper to start... 7
  Waiting for packet dumper to start... 8
  Waiting for packet dumper to start... 9

Related: OS#4969
Change-Id: I46cf22e7eab7dcd4b3835a8c7aa48654aef6c65a
2021-12-16 16:02:24 +00:00
Oliver Smith f0e60705c0 debian-bullseye-titan: sort pkgs alphabetically
Change-Id: Id5e1d6a3a1705234f25e7c346e2fcf1d3741570d
2021-12-16 16:02:24 +00:00
Vadim Yanitskiy f7290d31ff Add Dockerfile for OpenBTS-UMTS
Change-Id: Ibbab5973b84047ee7654a5fb2a8e4b36e1d43847
2021-12-16 13:39:02 +00:00
Oliver Smith 5118a44ed8 debian-bullseye-obs-latest: new image
Add missing container for -latest tests. Currently this causes the
-latest tests to fail.

Related: OS#4969
Change-Id: I1230e87784bc21b5a6424db0bd8734181ead9bfd
2021-12-16 13:06:47 +01:00
Harald Welte 14221979b4 sctp-test: Upgrade to bullseye
Change-Id: I681802fd779530878c2d2358ebf90b8e2adb4870
2021-12-16 11:51:33 +01:00
Harald Welte f0554efa92 nplab: Switch from stretch to buster
The test suites require guile-2.0 so we have to stay with buster
and cannot upgrade to bullseye (guile-3.0 only).

Related: OS#4969
Change-Id: I30c05efbc6c7a21cad71b207e723ef958f1ac9be
2021-12-16 11:40:17 +01:00
Harald Welte c3874143c0 Switch ttcn3-* master tests from Debian stretch to bullseys
So far we were using ancient Debian 9 (stretch) for our IUT
containers.  Let's upgrade that to Debian 11 (bullseye).

Related: OS#4969
Change-Id: Ic6bece9cb695e6eccfcb1e83fdbf1048724a3cf9
2021-12-16 11:40:17 +01:00
Harald Welte 0f74af6083 titan: move from debian-stetch-titan to debian-bullseye-titan
So far we were executing all our TTCN-3  tests from a container
image with Debian stretch (9) plus a custom more recent eclipse-titan
package from the osmocom feed.

Let's update the container base OS from stretch (9) to bullseye (11)
while using the same packaged eclipse-titan version (8.0.0) for running
the tests.  So this should be a low-risk change, as titan runtime
remains identical.

I've executed all test suites locally and couldn't see any regressions.

Related: OS#4969
Change-Id: Ib3bdfa3bec8f8ef42c55ca61cdee8fbca923874f
2021-12-16 11:40:17 +01:00
Oliver Smith 6f43284ee5 non-jenkins: unique build tag
Support running multiple TTCN-3 testsuites in parallel when the scripts get called from outside of jenkins too.

Closes: OS#5358
Change-Id: Iaaf5719f758553687f2ab57975be275e7ac07e36
2021-12-16 11:27:57 +01:00
Harald Welte 84a3680666 nplab-*test: Fix printing of junit on stdout
Before this patch the printing of the junit.xml to stdout fails:

+ collect_logs
+ cat '/tmp/tmp.CzafJpQyw8/*/junit-*.log'
cat: '/tmp/tmp.CzafJpQyw8/*/junit-*.log': No such file or directory
+ true

Change-Id: I600d3bdb3de23ef6f381cd5b81e2b851856b2b9b
2021-12-15 20:08:07 +00:00
Harald Welte 650870c9f5 bsc-test: Reduce log verbosity of osmo-stp
I don't really see the point of crating 19 MBytes of logs for every
ttcn3-bsc-* test run that consists mainly of debug messages about
sending a message from left to right. osmo-stp is not the IUT here,
but merely a part of the test fixture.  Let's reduce log verbosity.

Change-Id: If1d22814d89c4e52b3b7804110256d896b7cc99f
2021-12-15 18:05:19 +00:00
Harald Welte ab69bcc39b debian-{buster,stretch}-*: Explicitly specify DISTRO variables
It seems a manual 'make' in the respective directories no longer
works, as always the default distro is used as upstream reference.

Let's work around this by adding DISTRO variable assignments to the
respective makefiles.

Change-Id: I8769d504ca7afde07d4a0ad1f03aaaec892bf576
2021-12-15 18:05:19 +00:00
Harald Welte d3d4bcec41 Add debian-bullseye-build container
Change-Id: Ie2c75f30a5fc46979812ddfbea349e3d2fa91a7d
2021-12-15 18:04:45 +00:00
Harald Welte 7b607306b7 sync debian-buster-build with debian-stretch-build
Change-Id: I6f871613fc4e8dd069cbe8c4a0ef3d1725be8c7a
2021-12-15 18:04:45 +00:00