autosubmit-api 4.0.0

Last updated:

0 purchases

autosubmit-api 4.0.0 Image
autosubmit-api 4.0.0 Images
Add to Cart

Description:

autosubmitapi 4.0.0

Autosubmit API
Table of Contents

Overview
Installation
Configuration options
How to run tests

Overview
Autosubmit API is a package that consumes the information generated by Autosubmit and serves it as an API.
Distribution: https://pypi.org/project/autosubmit-api/
See the openapi.json specification and the repository wiki for more information.
Installation
Autosubmit API can be easily installed via pip
pip install autosubmit-api # >=4.0 (recommended)

# Check installation and serving options
autosubmit_api start -h

Start the server:
autosubmit_api start

Configuration options
The Autosubmit API have some configuration options that can be modified by setting their specific environment variable before starting the server:

PROTECTION_LEVEL: Default ALL. Possible values ALL, WRITEONLY, NONE.

If set to ALL, all the endpoints will be protected by needing a valid token inside the Authorization header of the request.
If set to WRITEONLY, only a subset of the endpoints will be protected.
If set to NONE, none of the endpoints will be protected.


SECRET_KEY: The secret key to encode the JWT tokens from the Authorization Module. Important to be set up on production.
CAS_SERVER_URL: CAS Protocol server base URL to request a ticket and verify it. Used for /v4 endpoints. CAS_LOGIN_URL and CAS_VERIFY_URL can be empty if this variable is set (the API will append the protocol URL subpaths).
CAS_LOGIN_URL: CAS Protocol URL to request a ticket. Used for /v3 endpoints.
CAS_VERIFY_URL: CAS Protocol URL to verify a given ticket. Used for /v3 endpoints.
GITHUB_OAUTH_CLIENT_ID: Client ID of the Github Oauth app.
GITHUB_OAUTH_CLIENT_SECRET: Secret key of the Github Oauth app.
GITHUB_OAUTH_WHITELIST_ORGANIZATION: Used to use authorization based on the membership of a Github organization.
GITHUB_OAUTH_WHITELIST_TEAM: Used to use authorization based on the membership of a Github team in an organization. GITHUB_OAUTH_WHITELIST_ORGANIZATION is required

How to run tests
Install pytest
pip install -e .[test]

Run tests:
pytest

Run tests with coverage HTML report:
pytest --cov=autosubmit_api --cov-config=.coveragerc --cov-report=html tests/

You will find the report in htmlcov/index.html

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.