- we agreed to basically throw away the old log checker (as it is
unmaintainable)
- now: provide list of analysis to do
* all checkers in cls_log_analysis, can be unit tested (see also next
commit)
* looked up dynamically to simplify adding of new tests + config
* configured with
<analysis>
<services>DESCRIPTION [DESCRIPTION...]</services>
<service>DESCRIPTION</service>
...
</analysis>
where DESCRIPTION follows service=func[=options]:
- service is name of service to check
- func is function to call, which receives filename
- option are arbitary options to pass to func
<services> is whitespace delimited (so can take multiple service
analysis definitions)
<service> exists to allow service definitions with whitespace
changes that would not work in <services>
- I initially planned to check return code, but most softmodems actually
exit with non-zero return code, so this is still TODO
- Default analyzer (checking for assertions, ...) is always run if a
service is listed
- checks for file size
- add unit tests
In this directory and subdirectories are various CI code test cases and helper scripts.
Unit test
This repository contains unit tests. To run them, switch to the parent
directory, i.e., ci-scripts/, and run
python3 -m unittest tests/*.py
To run individual unit tests, start them like so:
python tests/analysis.py -v
python tests/build.py -v
python tests/cmd.py -v
python tests/corenetwork.py -v
python tests/deployment.py -v
python tests/iperf-analysis.py -v
python tests/log-analysis.py -v
python tests/ping-iperf.py -v
python tests/pull-clean-int-registry.py -v
The logs will indicate if all tests passed. tests/deployment.py requires
these images to be present:
oai-ci/oai-nr-ue:develop-12345678oai-ci/oai-gnb:develop-12345678
It will try to download oaisoftwarealliance/oai-{gnb,nr-ue}:develop
automatically and retag the images.
test-runner test
This is not a true test, because the results need to be manually inspected. To run this "test", run
./run.sh
inside the test-runner/ directory (important!).