Commit Graph

1170 Commits

Author SHA1 Message Date
Pau Espin 6beffab8df ttcn3-hnbgw: Apply latest changes to 'with-pfcp' scenario
Recent commits applied changes to the default scenario, but forgot to
apply them to the 'with-pfcp' subdir.

Fixes: 6de89a5fb5
Fixes: 3736d31fc0
Fixes: 0bdbcd6815
Fixes: 2c22a96355
Fixes: d3711e6710
Change-Id: Ie02a0754a6ca985e60e08f1f171f532b6cc16264
2024-04-18 18:07:19 +00:00
Pau Espin 8d8c48f90e ttcn3-asterisk: Set Asterisk AMI IP address in Asterisk_Tests
The Asterisk_tests testsuite recently gained initial AMI support.
Configure it with the proper IP address.

Depends: osmo-ttcn3-hacks.git Change-Id I2c570e4d04e7ab8c44962cf484e4bbc946209aee
Change-Id: Ibb6af1cbfb652214b2fdd2a6eb9a4887c9a9cfb0
2024-04-18 12:57:36 +02:00
Pau Espin 6de89a5fb5 ttcn3-hnbgw: osmo-hnbgw.cfg: Enable color in log file
Change-Id: Iffd28619ca075e0cf870e10989cfced6096ca8d7
2024-04-16 16:12:22 +02:00
Pau Espin 3736d31fc0 ttcn3-hnbgw: osmo-hnbgw.cfg: Switch from deprecated 'mgcp' node to 'mgw'
Change-Id: Ie27dcae05fa719cd0eac9faa6e2fb6b63581ac28
2024-04-16 16:07:38 +02:00
Pau Espin 0bdbcd6815 ttcn3-hnbgw: Set STATSVTY.CTRL_HOSTNAME to correct IP address
Also update osmo-hnbgw.cfg to configure statsd, as done in
osmo-ttcn3-hacks.git 904b5f1a56629b84f67807a75d5c0b356cc7d726.

Change-Id: I80c228b7ad4b9fb06b1651f23a2932bf19374297
2024-04-16 13:54:53 +02:00
Pau Espin 76d2ce9346 ttcn3-asterisk: Configure AMI
Change-Id: I590d89e9173b0372611790d4178747e28a1215d1
2024-04-16 11:20:35 +00:00
Pau Espin 2c22a96355 ttcn3-hnbgw: Set new mp_local_statsd_ip module paramter to correct IP addr
Depends: osmo-ttcn3-hacks.git Change-Id I213173c99ec314c2eebfb8836c4d3467b3a7f818
Change-Id: I16cddef5833bf2abff0edb82ec3eb9f6ce976364
2024-04-16 12:54:04 +02:00
Oliver Smith bf64337030 debian-bookworm-obs-latest: add build user
Copy the block for configuring the build user and disabling man pages
from debian-bookworm-build. This fixes failures on
ttcn3-ggsn-test-kernel-latest* (non-latest worked fine since these use
containers based on debian-bookworm-build).

Fixes: 5a48bfbe ("scripts/kernel-test: build initrd+kernel as user")
Change-Id: Idee29d5b9796e8905bdf822d076f25612cbc77a0
2024-04-05 14:28:16 +00:00
Oliver Smith 59ca7d5f3e {open5gs,osmo-uecups}-latest: don't hardcode UID
Adjust open5gs-latest and osmo-uecups-latest to not hardcode a UID. This
is in preparation for creating a "build" user in
debian-bookworm-obs-latest, like we have it in debian-bookworm-build.

Change-Id: Icaebf46487056cea745805527fdc545d9a1846cd
2024-04-05 14:28:16 +00:00
Oliver Smith 2a8bd2b621 debian-bookworm-build: add libnftnl-dev
For osmo-hnbgw, osmo-upf.

Related: OS#6425
Change-Id: I5fdaa634d12bc6c8643c130a43d30e840890d572
2024-04-04 10:52:41 +02:00
Oliver Smith 5a48bfbe24 scripts/kernel-test: build initrd+kernel as user
Refactor code to build the initramfs and kernel as user, instead of
running related code as root. Put the smoke_test.log into /tmp instead
of the cache dir, so we don't write as root into the cache dir. We cat
it on error anyway, so we don't need to have it in the workspace.

Change-Id: I1670dd86f2670f42eb99e4527d483965d8222402
2024-04-03 12:41:11 +00:00
Oliver Smith 10e6a00476 scripts/kernel-test: put mknod commands in init.sh
Prepare to run the preparation without root rights.

Change-Id: I07648f058ca55515ffc7396598147a03dcfe7976
2024-04-03 12:41:11 +00:00
Oliver Smith 363e268cdc jenkins-common: fix_perms: chown files too
Ensure the user that runs docker owns files in cache and data dirs
during fix_perms, if an old job created them as root.

Change-Id: I43af48bd87e27abad5ad52e734256d78651f67c3
2024-04-03 12:41:11 +00:00
Oliver Smith c1056236b5 kernel-test/kernel-build: update net-next branch
The branch of net-next is now called main. Update the default
KERNEL_BRANCH to main, as the default KERNEL_URL points to net-next.git.

Related: https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/
Change-Id: Ic4b13c3cbc0933db9d520e6d737c45b6b08e8c48
2024-04-03 12:41:11 +00:00
Oliver Smith ad154fc565 scripts/kernel-test: do shallow fetch
Instead of fetching the entire history, only fetch the most recent
commit.

Change-Id: I92d90c1451ff6abff2df3b1318b5194880e77f2e
2024-04-03 12:41:11 +00:00
Oliver Smith 2af9f16715 debian-bookworm-build: add virtualenv
Fixes: OS#6430
Change-Id: I5d087b8edb9e77a5226df9e4f55e04480eea45dd
2024-04-03 11:40:04 +00:00
Pau Espin 882c26b0d8 Introduce ttcn3-asterisk-ims-ue-test
This dockerized setup allows running the Asterisk_Tests ttcn3 testsuite
against Asterisk from the asterisk-master docker image, in order to test
the IMS UE feature which will be developed soon.

Related: SYS#6782
Depends: osmo-ttcn3-hacks.git Change-Id I66f776d5df6fb5dc488d9e589b84a6b2385406e8
Change-Id: Idd262b9224ea879a6e941792944fe0b0db3e68ba
2024-04-02 10:32:30 +02:00
Pau Espin 08f9121396 Introduce asterisk-master docker image
This Docker image allows building and running Asterisk from git.
Default config is to build the sysmocom fork used to develop new
features (hence pointing to sysmocom/master branch in that repo.

Related: SYS#6782
Change-Id: Iaa3816f8ceefac8956e61e15f79ed708dec55238
2024-04-02 10:32:27 +02:00
Vadim Yanitskiy 9f40fef768 ttcn3-bsc-test-sccplite: osmo-bsc.cfg: remove deprecated 'mgw remote-ip'
Change-Id: Ie322315dd1608636002d4003e5f8629925041476
2024-03-28 04:43:16 +07:00
Vadim Yanitskiy 0448871bac */osmo-bsc.cfg: BTS type 'sysmobts' (deprecated) -> osmo-bts
Change-Id: I98ea9e96d490473efbbe189842ed9f547060dc7d
2024-03-28 04:42:35 +07:00
Vadim Yanitskiy 9c63801efe ttcn3-bts-test: fix start_config_oml(): do not start BSC
As the comment states, the BSC container is not needed for the OML
tests.  The testsuite itself "speaks" OML to the IUT in this case.

Change-Id: Iab44b9ed83e917475c9e2e86ad32b303b05b2ace
Fixes: aad045f5 "ttcn3-bts-test: add env var to not run all configs"
Fixes: OS#6421
2024-03-26 21:05:14 +07:00
Vadim Yanitskiy 78fde8b936 ttcn3-*-test: set OSMO_SUT_{HOST,PORT} for more testsuites
Let's also retrieve talloc reports for these testsuites.

Change-Id: Iaa94dd200fdb98962b784cb507c9995096232dc9
2024-03-25 17:35:13 +00:00
Oliver Smith d7c50db104 ttcn3-ggsn-test: ignore failure to kill osmo-ggsn
Don't fail if osmo-ggsn can't be killed at the end of a testsuite
run. This happens currently with ttcn3-ggsn-test-kernel-latest-* jobs,
in the v6_only configurations, because osmo-ggsn latest doesn't support
ipv6 yet and exits. The jenkins.sh should keep going and try other
combinations, and exit without error in the end.

Fixes: d8c51cce ("ttcn3-ggsn-test: run with multiple configurations")
Change-Id: I6f3154a9ef114f31bcb5868ee09d1ebc10f35d07
2024-03-25 13:56:47 +00:00
Oliver Smith 7c6f7f466c ttcn3-bts-test: use start_config functions
As suggested by Pau in code review, refactor the file to use functions
for starting the testsuites, SUT and related containers with specific
configurations.

Related: https://gerrit.osmocom.org/c/docker-playground/+/36389/comment/67a7c35e_766943a3/
Change-Id: If3cb7dbe585c03d21e5ec6353fd25575ccac7af0
2024-03-25 13:31:09 +00:00
Oliver Smith ef173eb534 ttcn3-bts-test: abort if missing osmo-config-merge
Change-Id: I9cea4affac0b3981c88078581a070f98649da667
2024-03-25 14:13:39 +01:00
Oliver Smith d8c51cce64 ttcn3-ggsn-test: run with multiple configurations
The kernel ttcn3-ggsn-tests have been failing since the osmo-ggsn
config for kernel-gtp has been adjusted for v4v6 instead of v4 only.

This new configuration caused a regression with:
* linux kernel without Pablo's GTP IPv6 patches
* latest stable release of osmo-ggsn, which does not support IPv6

As the kernel patches aren't merged yet, this caused all tests to fail.

Avoid this by running the ttcn3-ggsn-test with multiple configurations:
* v4_only: one APN with v4
* v6_only: one APN with v6
* v4v6_only: one APN with v4v6
* all: multiple APNs with all of the above

With this change, the tests running in the v4_only configuration will
pass again with the stable versions of osmo-ggsn, libgtpnl and kernel.
And with new versions, most test in the other configurations will pass
too.

As discussed with Harald, this does not only split up the configuration
for osmo-ggsn with kernel gtp-u, but also with the userspace
implementation. The "all" config currently only works with the
userspace gtp implementation (OS#6106).

Related: OS#6096
Depends: osmo-ttcn3-hacks I6d94a8b18200fbb2119406827b74b83e912e3ecc
Fixes: e24442f9 ("ttcn3-ggsn-test: kernel-gtp: add ipv6")
Change-Id: Ia2fe0c3ed4ccf06e72fd258d085e4a79cecd5f26
2024-03-25 12:21:12 +01:00
Oliver Smith 59dcbf762c ttcn3-ggsn-test: move confgs to subdirs
Prepare to add variations of the configs: move them to subdirs, so we
don't cullter the main directory.

Related: OS#6096
Change-Id: I03a06f9f516922c47e3092ff7d7c2c68b0852c1b
2024-03-25 12:21:12 +01:00
Oliver Smith 5946a075fa ttcn3-ggsn-test/jenkins: add functions for start ggsn/testsuite
Prepare to run start_ggsn and start_testsuite multiple times with
different configurations in a follow-up patch.

Related: OS#6096
Change-Id: I0754b0df5f1b0b162732c3db0797f65676553ab0
2024-03-25 12:21:12 +01:00
Oliver Smith aad045f5b6 ttcn3-bts-test: add env var to not run all configs
Make it possible to e.g. run only one of the generic/oml/hopping
configurations.

I made a version of this patch a few weeks ago for testing OS#6375,
and I'm submitting it now so I can add multiple configurations for
ttcn3-ggsn-test in the next patch with the same logic.

Change-Id: I1dce5e6aa4b5d67f9f8c96ced611ab2875c353c8
2024-03-25 12:21:09 +01:00
Vadim Yanitskiy 97b719db53 openbts-umts: fix apt: use archive.debian.org
This helps to get access to Debian 8 repositories in 2024.

Change-Id: Ia869476feeb67e2b3313b5d75ca01eaff41597ba
2024-03-20 17:09:46 +07:00
Oliver Smith 3342c16ca7 debian-bookworm-build: add libbladerf-dev
Related: OS#6409
Change-Id: I3c3fe95d8ebb21f7691a491144885c7deb8049a5
2024-03-18 12:39:37 +01:00
Vadim Yanitskiy 47c44ac537 ttcn3-stp-test: enable M3UA-over-TCP testing for master
Change-Id: I210b7d62845075dcfe147f2f77603625cc1e64f9
Depends: osmo-ttcn3-hacks.git I5d0b05aa434c057ad379125ac293f5fc9a240b6f
Related: osmo-ttcn3-hacks.git I1e2a887aa22f317783b3207494fd707d7b426439
Related: SYS#5424
2024-03-07 18:24:13 +07:00
Pau Espin 78d8eb2f4a ttcn3-epdg: Test GTP-U userplane
Set the assigned IP address for the UE in the EPDG docker container on
the eth0 interface. This way the emulated UPF (ttcn3) can test
decaps+encaps of osmo-epdg tun by pinging the UE IP address and
expecting a pong back.

Related: OS#6235
Change-Id: Icc5710b42e5a5374aade6b952e1c543565ffad2e
2024-03-04 19:06:06 +00:00
Pau Espin 988fe310e7 ttcn3-epdg: Set up params to get GTP-U echo working
Set the new module parameter added in the test.
Make sure the gtp_u_kmod osmo-epdg.config IP address is updated to the
proper docker network subnet.

Depends: osmo-ttcn3-hacks.git Change-Id I3fd96f212175959cb113d2f6a362c0e77e5ca0d7
Change-Id: I5cd9dcd6188227baed71823b0cbceb77dc771011
2024-03-04 19:06:06 +00:00
Harald Welte 8f8568b1e3 cosmetic: .txt file shouldn't have execute permissions set
Change-Id: Ib1e0a79b97ae1af07e206b3be7762cc805820ae1
2024-03-04 12:01:01 +00:00
Oliver Smith 73348e51df ttcn3-ggsn-test: tweak log options
Change-Id: I6c3095f4d3378d2026d3720bc32e27ce4c8345b3
2024-03-04 09:32:07 +01:00
Oliver Smith f2786e8573 ttcn3-ggsn-test: enable dynamic debug
Enable loglevel=8, as otherwise the messages do not show up.

Change-Id: I048646c4f90233939809546d30c94c4218eedbb1
2024-03-04 09:31:34 +01:00
Oliver Smith 5494300e60 scripts/kernel-test: add /dev/null
Some busybox programs need /dev/null, add it to the initramfs.

Change-Id: Ie583ae816b517c10d13d77aa45155fc4d1209c26
2024-03-04 07:50:38 +00:00
Pau Espin 772482145f ttcn3-pgw-test: Configure open5gs-smfd S2b/S6b/P-CSCF related bits
Depends: osmo-ttcn3-hacks.git Change-Id I38e469edf0e00feca5a648035b64645e2c905937
Change-Id: I3ff503990167f52ddb94a7719e2773db3f889a39
2024-02-28 13:12:01 +00:00
Oliver Smith e24442f9a9 ttcn3-ggsn-test: kernel-gtp: add ipv6
Related: OS#6096
Change-Id: If3549db216ff89bdb963744bb38015ad68d4cf6a
2024-02-28 10:06:32 +00:00
Pau Espin 5d0361210b ttcn3-epdg: Give some time for osmo-epdg to start
erlang osmo-epdg is a bit slow starting up, and sometimes the first ttcn3
test may start when osmo-epdg is still not yet listening on the GSUP
socket, specially when the system is on high load.
Give some head time to make sure it is properly started.

Change-Id: I14e39db6548409b203e15fb562e0b44a90bd44cd
2024-02-21 18:23:21 +01:00
Pau Espin db7d74263c ttcn3-epdg: Create tun with iface name gtp0
As done in the default/usual config.

Change-Id: I066c22a381ab85762c8ef247a5eb248f7adf6c71
2024-02-21 18:22:41 +01:00
Oliver Smith e39bea3ae5 ttcn3-ggsn-test/fragment.config: add NET_NS, VETH
Build the kernel with NET_NS and VETH, so libgtpnl's qemu tests can
download the kernel and use it.

Related: OS#1952
Related: libgtpnl Ibf75514b866fffb11e90529e4705f126b23d7415
Change-Id: I6e893b64718f853b8595de36c090a1326db34419
2024-02-19 09:39:42 +00:00
Pau Espin 11b9d4c85c epdg: Configure gtpu tunnel
Related: OS#6235
Change-Id: Ifeece08cdcceb378ae1e195cada5bfef54a1e2bd
2024-02-14 18:35:06 +01:00
Vadim Yanitskiy ca7db6c794 fixup: ttcn3-bts-test: do not start osmo-bts-virtual / virtphy containers
Change-Id: I9a38356be1f970a2b8f1bf51bfc220471502682f
Related: OS#6352
2024-02-12 03:34:07 +07:00
Vadim Yanitskiy 8c6ebc8c76 ttcn3-bts-test: do not start osmo-bts-virtual / virtphy containers
We cannot execute the virtphy based testcases due to the limitations
of Docker (see https://github.com/moby/libnetwork/issues/2397).  The
function starting the testsuite was already commented out, but not
the lines starting containers with osmo-bts-virtual and virtphy.

To put it simple, we start and immediately terminate those containers.
And since recently (Feb 1st), we started seeing socket creation errors
in both containers, causing jenkins.sh to abort early.  It's yet
unclear what's the cause of those socket errors, but regardless of
that we should still be running other pending testcases.

Change-Id: I7c9ccc9cc400edb7a05e222e51671fd49631a4cd
Fixes: OS#6352
2024-02-09 18:02:36 +07:00
Pau Espin 27a8a92deb ttcn3-epdg: Run osmo-epdg with CAP_NET_ADMIN
This will be needed since soon osmo-epdg will start creating tunnel
devices througth gtp_u_kmod, which requires CAP_NET_ADMIN, plus it will
need probably need to set up local IP addresses.

Change-Id: I48eea0e8d7969cc0a3ad2ed08f696decf064c474
2024-01-22 13:46:17 +01:00
Pau Espin 26d9e95c11 ttcn3-epdg: Add section to control logging
Similar as to what's defined in osmo-epdg.git/config/sys.config.

Change-Id: I7b9a3421b5f0f384324bb0f9b6de3fffdceaef53
2024-01-18 14:10:40 +01:00
Pau Espin dcb9a59bad osmo-epdg-master: Remove rebar.lock to force build against updated dependencies
This way we notice when some dependency update breaks build, and
prevents running against old dependencies if developer forgot to update
rebar.lock.

Change-Id: Ia9112d641e80d1eddcddea1e54e4c135d6efcc5b
2024-01-17 19:32:59 +01:00
Pau Espin e988b37ea5 ttcn3-epdg: Update renamed config fields
The config file fields have been renamed recently, update them.

Depends: osmo-epdg.git Change-Id I63fe4c7acc7460575a921b254adf066134c0527f
Change-Id: Ic9f2f33b8ffae7b4273e6fac8a42b6e9e1e38ed8
2024-01-16 19:48:57 +01:00