diff --git a/README.md b/README.md index 12333fd089a0b00d89c683d15378b51ff492c716..f98b83f477237d5d7631be8c463b9818d36276c9 100644 --- a/README.md +++ b/README.md @@ -1,23 +1,17 @@ +# DOML Model Checker [](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).