Newer
Older
The Project serves the Engine API and handles state management of multiple Engine instances.
This project is based on a swagger-enabled Flask server using an *API First* approach. It also uses the [Connexion](https://github.com/zalando/connexion) library on top of Flask.
```bash
pip3 install -r requirements.txt
# Additional requirements for the chosen database
pip3 install -r contrib/mariadb-requirements.txt
# Create database and user (change password in script)
sudo mysql -u root -p < contrib/mariadb-database.sql
To run the server, please execute the following from the root directory:
```
./run.sh api
```
To run the API in an local development server execute:
```
./run.sh api-dev
```
You can access the interactive documentation here:
To launch the integration tests, use tox:
```
sudo pip install tox
```
## Running with Docker
To run the server on a Docker container, please execute the following from the root directory:
```bash
# Building the image
./run.sh docker:build
# Push the current image to dockerhub.com
./run.sh docker:push