The scenario runners provide environments for running RandomTraffic, PythonApi or Visual Scenario Editor (VSE) scripts with the SVL Simulator.
- Linux operating system
- Docker
- SVL Simulator
Here and below the VSE runner is used as an example. To run in developer mode follow these steps:
- Clone the repository
- Run
(or
$ make -f Makefile.vse build
... -f Makefile.python-api ...
,... -f Makefile.random-traffic ...
respectively) to build the development docker image of the desired runner - Run
to start the corresponding docker image
$ make -f Makefile.vse devenv
- Start the SVL simulator, create and start an API Only simulation.
- Run a scenario using the
run
command:Notes:$ run PATH_TO_SCENARIO_JSON_FILE
- the PythonAPI runner expects a path to a python API script as an argument
- the RandomTraffic runner does not take any arguments
To build a local/vse_runner_base
image with a different version of Python from the default, run:
$ make -f Makefile.vse PYTHON_VERSION_TAG=<VERSION> build-base
(the same for the random-traffic
and python-api
runners)
The image will be tagged with vse-<VERSION>
insted of latest
.
The local/vse_runner_devenv
image would not be affected by this setting.
The versions of the dependencies are pinned by the requirements[-<PYTHON_VERSION_TAG>].txt
files. Whenever dependencies are
changed, update them by running:
$ make -f Makefile.vse [PYTHON_VERSION_TAG=<VERSION>] upgrade-base-dependencies
for each of the values of PYTHON_VERSION_TAG
being used.
Run
$ make -f Makefile.vse shell
to access the command shell inside the container
Run
$ make -f Makefile.vse env
to see the default environment variables of the container
(the same for the random-traffic
and python-api
runners).
The final change for a new release must be to set the argument of the
get_version('<VERSION>')
call in vse-runner/setup.py
to the new version.
Then commit this change and tag it with the new version:
git tag -a -m <VERSION> <VERSION>