A template repository for creating provider meson implementations.
main_service.py: The main entry point for the meson, containing the FastAPI application and route definitions for services.main_compute.py: The main entry point for the meson, containing the FastAPI application and route definitions for compute operations.main_storage.py: The main entry point for the meson, containing the FastAPI application and route definitions for storage operations.infrastructure: Contains the compute and storage related function implementations.platforms: Contains the PaaS related services function implementations.software: Contains the SaaS related services function implementations.commons/provider_iam: Contains the authentication functions on external cloud provider.commons/utils: Contains utility functions that can be used/useful across the meson.commons/elemento_iam: Contains the Elemento IAM related functions, MUST not be touched.
All the logs must use the Logging functionality, here are the possible log levels:
import logging
logging.debug("This is a debug log")
logging.info("This is an info log")
logging.warning("This is a warning log")
logging.error("This is an error log")
logging.critical("This is a critical log")- Download submodules:
git submodule update --init --recursive- Install dependencies:
pip install -r requirements.txt- Generate dummy TLS certificates for testing:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout tls.key \
-out tls.crt \
-subj "/CN=localhost"- Run the mesons:
docker compose up --build