Lightweight TOSCA orchestrator lightweight API
Project description
xOpera API
An HTTP API interface to the opera orchestrator.
Mimics CLI commands.
WIP.
Development
To begin:
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
OpenAPI base code is generated with generate.sh and is not checked in to the repository.
Other useful commands:
# openapi-generator basics
java -jar openapi-generator-cli-4.3.0.jar
java -jar openapi-generator-cli-4.3.0.jar help generate
java -jar openapi-generator-cli-4.3.0.jar validate --input-spec openapi-spec.yml --recommend
java -jar openapi-generator-cli-4.3.0.jar config-help --generator-name python-flask --full-details
Usage
With Docker:
docker-compose up --build
curl localhost:8080
With a local development installation:
./generate.sh
python3 -m venv .venv
source .venv/bin/activate
pip install wheel
pip install -r requirements.txt
cd src/
python3 -m opera.api.cli
curl localhost:8080
Building for PyPI, releases
- Generate sources with
./generate.sh. - Test built packages in a Docker container.
- Only release tags without any local changes present.
- Manually create and upload releases onto GitHub, no automation for that.
- Build and test before pushing tags to reduce rollbacks.
pip3 install -r requirements.txt
./generate.sh
git tag -a 1.2.3 -m 1.2.3
rm -rfv dist/
python setup.py sdist bdist_wheel
docker run -it --rm -v $(realpath ./dist/):/dist/:ro python:3.8-buster bash
pip3 install dist/*.whl
opera-api
pip3 uninstall -y opera-api
pip3 install dist/*.tar.gz
opera-api
twine upload --repository <pypi|testpypi> dist/*
# upload to github manually
git push --tags
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
opera-api-0.1.0.tar.gz
(18.8 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
opera_api-0.1.0-py3-none-any.whl
(20.4 kB
view details)
File details
Details for the file opera-api-0.1.0.tar.gz.
File metadata
- Download URL: opera-api-0.1.0.tar.gz
- Upload date:
- Size: 18.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c593afeede6cfb05ac96c2ae46590cdfd2295d5c705475836bc5a3c8c9817e2a
|
|
| MD5 |
ea6a999250bbfbce8d02933777601503
|
|
| BLAKE2b-256 |
e87b417b612c53227adcf2f5c6562752f0e96326d5c2b4aede96624563e764f8
|
File details
Details for the file opera_api-0.1.0-py3-none-any.whl.
File metadata
- Download URL: opera_api-0.1.0-py3-none-any.whl
- Upload date:
- Size: 20.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7df967eace62592a55a005e8f4042c719e42f186b30d96b543c9d23546c33a01
|
|
| MD5 |
7a0fd5b065ed3dc2616fb9510681e98e
|
|
| BLAKE2b-256 |
08aa2e2a25624081656197898305b7e138f8990e2909d6b879f0a66a21905b51
|