Describe how to reproduce CI
This commit is contained in:
@@ -165,3 +165,53 @@ Webhook ~documentation ~BUILD-ONLY ~4G-LTE ~5G-NR
|
|||||||
- [RAN-SA-Module-CN5G](https://jenkins-oai.eurecom.fr/view/RAN/job/RAN-SA-Module-CN5G/)
|
- [RAN-SA-Module-CN5G](https://jenkins-oai.eurecom.fr/view/RAN/job/RAN-SA-Module-CN5G/)
|
||||||
- asterix + N310 (gNB), nrmodule2 + Quectel, porcepix w/ OAI 5GC
|
- asterix + N310 (gNB), nrmodule2 + Quectel, porcepix w/ OAI 5GC
|
||||||
- NR 2x2 (standalone)
|
- NR 2x2 (standalone)
|
||||||
|
|
||||||
|
## How to reproduce CI results
|
||||||
|
|
||||||
|
The CI builds docker images at the beginning of every test run. To see the
|
||||||
|
exact command line steps, please refer to the `docker/Dockerfile.build.*`
|
||||||
|
files. Note that the console log of each pipeline run also lists the used
|
||||||
|
docker files.
|
||||||
|
|
||||||
|
The CI uses these images for *most* of the pipelines. It uses docker-compose to
|
||||||
|
orchestrate the images. To identify the docker-compose file, follow these
|
||||||
|
steps:
|
||||||
|
|
||||||
|
1. Each CI test run HTML lists the XML file used for a particular test run.
|
||||||
|
Open the corresponding XML file under `ci-scripts/xml_files/`.
|
||||||
|
2. The XML file has a "test case" that refers to deployment of the image; it
|
||||||
|
will reference a directory containing a YAML file (the docker-compose file)
|
||||||
|
using option `yaml_path`, which will be under `ci-scripts/yaml_files/`. Go
|
||||||
|
to this directory and open the docker-compose file.
|
||||||
|
3. The docker-compose file can be used to run images locally, or you can infer
|
||||||
|
the used configuration file and possible additional options that are to be
|
||||||
|
passed to the executable to run from source.
|
||||||
|
|
||||||
|
For instance, to see how the CI runs the multi-UE 5G RFsim test case, the above
|
||||||
|
steps look like this:
|
||||||
|
|
||||||
|
1. The first tab in the 5G RFsim test mentions
|
||||||
|
`xml_files/container_5g_rfsim.xml`, so open
|
||||||
|
`ci-scripts/xml_files/container_5g_rfsim.xml`.
|
||||||
|
2. This XML file has a `DeployGenObject` test case, referencing the directory
|
||||||
|
`yaml_files/5g_rfsimulator`. The corresponding docker-compose file path is
|
||||||
|
`ci-scripts/yaml_files/5g_rfsimulator/docker-compose.yaml`.
|
||||||
|
3. To know how to run the gNB, realize that there is a section `oai-gnb`. It
|
||||||
|
mounts the configuration
|
||||||
|
`ci-scripts/conf_files/gnb.sa.band78.106prb.rfsim.conf` (note that the path
|
||||||
|
is relative to the directory in which the docker-compose file is located).
|
||||||
|
Further, an environment variable `USE_ADDITIONAL_OPTIONS` is declared,
|
||||||
|
referencing the relevant options `--sa -E --rfsim` (you can ignore logging
|
||||||
|
options). You would therefore run the gNB from source like this:
|
||||||
|
```
|
||||||
|
sudo ./cmake_targets/ran_build/build/nr-softmodem -O ci-scripts/conf_files/gnb.sa.band78.106prb.rfsim.conf --sa -E --rfsim
|
||||||
|
```
|
||||||
|
To run this on your local machine, assuming you have a 5GC installed, you
|
||||||
|
might need to change IP information in the config to match your core.
|
||||||
|
|
||||||
|
If you wish, you can rebuild CI images locally following [these
|
||||||
|
steps](../docker/README.md) and then use the docker-compose file directly.
|
||||||
|
|
||||||
|
Some tests are run from source (e.g.
|
||||||
|
`ci-scripts/xml_files/gnb_phytest_usrp_run.xml`), which directly give the
|
||||||
|
options they are run with.
|
||||||
|
|||||||
Reference in New Issue
Block a user