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
runcommand: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>