Skip to content
Snippets Groups Projects
Unverified Commit b09ed209 authored by Andrea Franchini's avatar Andrea Franchini
Browse files

Update readme

parent c63b79a3
No related branches found
No related tags found
No related merge requests found
Pipeline #124839 failed
# DOML Model Checker
[![Documentation Status](https://readthedocs.org/projects/piacere-model-checker/badge/?version=latest)](https://piacere-model-checker.readthedocs.io/en/latest/?badge=latest)
# PIACERE Model Checker
## Description of the component
**📖 You can read the [docs here](https://piacere-model-checker.readthedocs.io/en/latest/) for more details. 📖**
The DOML Model Checker is a component of the [PIACERE](https://www.piacere-project.eu/) framework in charge of checking the correctness and consistency of [DOML](https://www.piacere-doml.deib.polimi.it/) models.
The DOML Model Checker is a component of the [PIACERE](https://www.piacere-project.eu/) framework
in charge of checking the correctness and consistency of
[DOML](https://www.piacere-doml.deib.polimi.it/) models.
It consists of a web server exposing a REST API that receives a DOML model in XMI format (also called DOMLX) and provides as output a result detailing whether the model satisfies a set of internal requirements, and in case of negative results, what elements are in violation and how to fix the issue.
It also bundles a Cloud Service Provider (CSP) Compatibility tool that can provide the compatibility results of a model against common Cloud Service Providers.
We provide a `requirements.txt` file for CI/CD purposes.
## Installation
If you add a new package, regenerate it by running:
```sh
pip freeze > requirements.txt
```
## Setup
### Setup
Activate the Python Virtual Environment with:
```sh
......@@ -28,26 +22,25 @@ Install the required packages with:
pip install -r requirements.txt
```
## Run the model checker web server
### Run the model checker web server
```sh
python -m mc_openapi
```
## Run with Uvicorn
### Run with Uvicorn
The project may be run with [Uvicorn](https://www.uvicorn.org/) as follows:
```sh
uvicorn --port 8080 --host 0.0.0.0 --interface wsgi --workers 2 mc_openapi.app_config:app
```
## Run tests
### Run tests
Run tests with:
```sh
python -m pytest
```
## Run with Docker
### Run with Docker
First, build the docker image with the usual
```sh
......@@ -61,12 +54,13 @@ The Uvicorn server will be running and listening on port `8080` of the container
To use it locally, you may bind it with port `8080` of `localhost`
by adding `-p 127.0.0.1:8080:8080/tcp` to the `docker run` command.
## Documentation
You can read the latest version at [readthedocs.io](https://piacere-model-checker.readthedocs.io/en/latest/)
## Building the Documentation
### Building the Documentation
The documentation has been written in [Sphinx](https://www.sphinx-doc.org/)
and covers both usage through the PIACERE IDE and the REST APIs.
You can read the latest version at [readthedocs.io](https://piacere-model-checker.readthedocs.io/en/latest/)
If you want to build the documentation manually, run:
```sh
......@@ -75,3 +69,14 @@ make html
```
The documentation will be generated in `docs/_build`.
## License
This work is licensed under the Apache License 2.0.
## Contact
andrea.franchini@polimi.it
## Acknowledgement
This project has received funding from the European Union’s Horizon 2020 research and innovation programme under Grant
Agreement No. 101000162 (PIACERE).
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment