Attention is currently required from: fixeria.
pespin has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/erlang/osmo-s1gw/+/40377?usp=email )
Change subject: erab_fsm: clarify type spec for teid_addr()
......................................................................
Patch Set 1: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/erlang/osmo-s1gw/+/40377?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: erlang/osmo-s1gw
Gerrit-Branch: master
Gerrit-Change-Id: If649c3436ce60d3b9ceefdcfb695bb2236ebe7ef
Gerrit-Change-Number: 40377
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 27 May 2025 08:07:31 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
osmith has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40373?usp=email )
Change subject: testenv: README: document env vars set by testenv
......................................................................
testenv: README: document env vars set by testenv
Change-Id: I1a43d6b71c4dbc00abd8a4347fb2b35704491591
---
M _testenv/README.md
M _testenv/testenv/cmd.py
2 files changed, 76 insertions(+), 28 deletions(-)
Approvals:
fixeria: Looks good to me, approved
Jenkins Builder: Verified
pespin: Looks good to me, but someone else must approve
diff --git a/_testenv/README.md b/_testenv/README.md
index 1b62d65..53d3440 100644
--- a/_testenv/README.md
+++ b/_testenv/README.md
@@ -128,34 +128,6 @@
`qemu_functions.sh` and using functions from there. See the `ggsn` testsuite
for reference.
-### Executables
-
-#### $PATH
-
-Executables mentioned in `program=`, `prepare=`, `setup=` and `clean=` run
-with a `PATH` environment variable containing:
-
-* The directory of the testsuite
-* The directory for binaries built from source
-* The directory `_testenv/data/scripts` (which has e.g. `respawn.sh`)
-* The directory `_testenv/data/scripts/qemu`
-
-#### $PWD (current working dir)
-
-The executables run inside a directory with the component name, inside the log
-dir. For example:
-
-```
-/tmp/logs
-├── ggsn # Executables from [ggsn] section run in this dir
-│ ├── ggsn.log
-│ └── osmo-ggsn.cfg
-└── testsuite # Executables from [testsuite] run in this dir
- ├── Common.cfg
- ├── GGSN_Tests.cfg
- └── GGSN_Tests.default
-```
-
### Latest configs
Sometimes we need to run test components and/or testsuites with different
@@ -186,6 +158,10 @@
## Environment variables
+### Environment variables read by testenv
+
+You can set the following environment variables to change testenv behaviour.
+
* `TESTENV_SRC_DIR`:
Set the directory for sources of Osmocom components. The default is the
directory above your osmo-ttcn3-hacks.git clone.
@@ -225,6 +201,76 @@
Instead of attempting to automatically detect the LXC host IP, use this IP.
This can be set to 127.0.0.1 for testing.
+### Environment variables set by testenv
+
+Testenv sets the following variables while running shell commands from
+`program=`, `prepare=`, `setup=` and `clean=`. The variables are set in
+`testenv/cmd.py:init_env()`.
+
+* `PATH`:
+ The user's `PATH` environment variable is prefixed with the following paths:
+ * The directory of the testsuite.
+ * The directory for binaries built from source.
+ * The directory `_testenv/data/scripts` (which has e.g. `respawn.sh`).
+ * The directory `_testenv/data/scripts/qemu`.
+
+* `PWD`:
+ The executables run inside a directory with the component name, inside the
+ log dir. For example:
+
+```
+/tmp/logs
+├── ggsn # Executables from [ggsn] section run in this dir
+│ ├── ggsn.log
+│ └── osmo-ggsn.cfg
+└── testsuite # Executables from [testsuite] run in this dir
+ ├── Common.cfg
+ ├── GGSN_Tests.cfg
+ └── GGSN_Tests.default
+```
+
+* `TESTENV_INSTALL_DIR`:
+ The directory into which the SUT binaries and other files are installed. It
+ is set to `/` for `--podman --binary-repo`,
+ `~/.cache/osmo-ttcn3-testenv/podman` for `--podman` and
+ `~/.cache/osmo-ttcn3-testenv/host` otherwise. The
+ `~/.cache/osmo-ttcn3-testenv` part can be changed with the `--cache`
+ argument. Different cache directories for podman and for the host are used
+ as it is very likely that the binary objects from both are incompatible.
+
+* `TESTENV_SRC_DIR`:
+ Is set to the directory for sources of Osmocom components. The default is the
+ directory above the osmo-ttcn3-hacks.git clone. This can be changed by the
+ user by having `TESTENV_USR_DIR` set while running `testenv.py`.
+
+* `OSMO_DEV_MAKE_DIR`:
+ This variable is unset if `--binary-repo` is used as argument. Otherwise it
+ is set to `~/.cache/osmo-ttcn3-testenv/host/make2` or
+ `~/.cache/osmo-ttcn3-testenv/podman/make2` (with `--podman`) by default. The
+ `~/.cache/osmo-ttcn3-testenv` part can be changed with the `--cache`
+ argument.
+
+* `TESTENV_QEMU_KERNEL`:
+ Is only set if `-C`/`--custom-kernel` or `-D`/`--debian-kernel` parameters
+ are set. With `-C` it is set to `<path to osmo-ttcn3-hacks>/.linux`. With
+ `-D` it is set to `debian`.
+
+* `TESTENV_QEMU_SCRIPTS`:
+ Is set to `<path to osmo-ttcn3-hacks>/_testenv/data/scripts/qemu`.
+
+* `CCACHE_DIR`:
+ Is set to the value of the `--ccache` parameter, which is
+ `~/.cache/osmo-ttcn3-testenv/ccache` by default.
+
+* `PKG_CONFIG_PATH`:
+ Is prefixed with `$TESTENV_INSTALL_DIR/usr/lib/pkgconfig:`.
+
+* `LD_LIBRARY_PATH`:
+ Is prefixed with `$TESTENV_INSTALL_DIR/usr/lib:`.
+
+* `TERM`:
+ Is set to the same `TERM` passed to testenv with fallback to `dumb`.
+
## Troubleshooting
### Timeout waiting for RESET-ACK after sending RESET
diff --git a/_testenv/testenv/cmd.py b/_testenv/testenv/cmd.py
index 24dc110..9a81e30 100644
--- a/_testenv/testenv/cmd.py
+++ b/_testenv/testenv/cmd.py
@@ -12,6 +12,8 @@
def init_env():
+ """Adjust "Environment variables set by testenv" in README.md when making
+ changes here."""
global env_extra
global install_dir
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40373?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I1a43d6b71c4dbc00abd8a4347fb2b35704491591
Gerrit-Change-Number: 40373
Gerrit-PatchSet: 5
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
osmith has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40371?usp=email )
Change subject: testenv: add -j/--jobs parameter to run action
......................................................................
testenv: add -j/--jobs parameter to run action
Allow building with less than all CPU cores. This may be desirable
because the NGAP asn1 files are huge and building with -j$(NPROC) eats
all the memory on some systems.
Suggested-by: Pau Espin Pedrol <pespin(a)sysmocom.de>
Change-Id: I191291cabd40e23983d29a350e587c1e11a52c0d
---
M _testenv/testenv/__init__.py
M _testenv/testenv/osmo_dev.py
M _testenv/testenv/podman_install.py
M _testenv/testenv/testsuite.py
4 files changed, 19 insertions(+), 2 deletions(-)
Approvals:
fixeria: Looks good to me, approved
pespin: Looks good to me, but someone else must approve
Jenkins Builder: Verified
diff --git a/_testenv/testenv/__init__.py b/_testenv/testenv/__init__.py
index 07880cc..6118b65 100644
--- a/_testenv/testenv/__init__.py
+++ b/_testenv/testenv/__init__.py
@@ -94,6 +94,12 @@
metavar="OBS_PROJECT",
help="use binary packages from this Osmocom OBS project instead (e.g. osmocom:nightly)",
)
+ group.add_argument(
+ "-j",
+ "--jobs",
+ help="number of jobs to run simultaneously (default: nproc)",
+ type=int,
+ )
group = sub_run.add_argument_group("exit options", "When and how testenv should exit when done.")
group = group.add_mutually_exclusive_group()
diff --git a/_testenv/testenv/osmo_dev.py b/_testenv/testenv/osmo_dev.py
index 1e94cf1..02fe2e8 100644
--- a/_testenv/testenv/osmo_dev.py
+++ b/_testenv/testenv/osmo_dev.py
@@ -73,6 +73,9 @@
os.path.join(testenv.args.cache, "host/usr"),
]
+ if testenv.args.jobs:
+ extra_opts += [f"-j{testenv.args.jobs}"]
+
# Make dirs created without passing --autoreconf-in-src-copy to
# gen_makefile.py (as previous versions of testenv did) are incompatible.
# Add the "2" to avoid potential conflicts.
diff --git a/_testenv/testenv/podman_install.py b/_testenv/testenv/podman_install.py
index 130085c..adc2d70 100644
--- a/_testenv/testenv/podman_install.py
+++ b/_testenv/testenv/podman_install.py
@@ -26,7 +26,10 @@
# errors.
git_dir = os.path.join(testenv.args.cache, "git", f"build_against_{testenv.args.binary_repo}".replace(":", "_"))
- jobs = multiprocessing.cpu_count() + 1
+ if testenv.args.jobs:
+ jobs = testenv.args.jobs
+ else:
+ jobs = multiprocessing.cpu_count()
os.makedirs(git_dir, exist_ok=True)
diff --git a/_testenv/testenv/testsuite.py b/_testenv/testenv/testsuite.py
index 149e47f..5ddbf3e 100644
--- a/_testenv/testenv/testsuite.py
+++ b/_testenv/testenv/testsuite.py
@@ -51,7 +51,12 @@
def build():
logging.info("Building testsuite")
- testenv.cmd.run(["make", testenv.args.testsuite], cwd=ttcn3_hacks_dir, env=builddir_env)
+
+ env = copy.copy(builddir_env)
+ if testenv.args.jobs:
+ env["PARALLEL_MAKE"] = f"-j{testenv.args.jobs}"
+
+ testenv.cmd.run(["make", testenv.args.testsuite], cwd=ttcn3_hacks_dir, env=env)
def is_running(pid):
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40371?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I191291cabd40e23983d29a350e587c1e11a52c0d
Gerrit-Change-Number: 40371
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Attention is currently required from: fixeria.
Hello Jenkins Builder, laforge, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/erlang/osmo-s1gw/+/40368?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
The change is no longer submittable: Verified is unsatisfied now.
Change subject: s1ap_proxy: parse and store Global-ENB-ID IE
......................................................................
s1ap_proxy: parse and store Global-ENB-ID IE
This commit prepares for a follow-up change implementing the NFT-based
KPI (GTP-U packets/bytes stats) reporting, which will need the
Global-ENB-ID.
Change-Id: Icc24d4daf06d161d7b5b386456e8e92ac07d5eba
Related: SYS#7307
---
M src/s1ap_proxy.erl
1 file changed, 56 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/erlang/osmo-s1gw refs/changes/68/40368/2
--
To view, visit https://gerrit.osmocom.org/c/erlang/osmo-s1gw/+/40368?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: erlang/osmo-s1gw
Gerrit-Branch: master
Gerrit-Change-Id: Icc24d4daf06d161d7b5b386456e8e92ac07d5eba
Gerrit-Change-Number: 40368
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Attention is currently required from: fixeria.
laforge has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/erlang/osmo-s1gw/+/40368?usp=email )
Change subject: s1ap_proxy: parse and store Global-ENB-ID IE
......................................................................
Patch Set 1: Code-Review+2
--
To view, visit https://gerrit.osmocom.org/c/erlang/osmo-s1gw/+/40368?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: erlang/osmo-s1gw
Gerrit-Branch: master
Gerrit-Change-Id: Icc24d4daf06d161d7b5b386456e8e92ac07d5eba
Gerrit-Change-Number: 40368
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 26 May 2025 21:01:02 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Attention is currently required from: osmith.
fixeria has posted comments on this change by osmith. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40373?usp=email )
Change subject: testenv: README: document env vars set by testenv
......................................................................
Patch Set 4: Code-Review+2
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40373?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I1a43d6b71c4dbc00abd8a4347fb2b35704491591
Gerrit-Change-Number: 40373
Gerrit-PatchSet: 4
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 26 May 2025 16:50:36 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes