orangeqs.juice.orchestration.system_services#

Utilities for collecting service information.

Module Contents#

Functions#

system_services_from_settings

Return a list of containers and build services based on the settings.

render_supervisor_configurations

Render the supervisord configuration for the services.

render_orchestrator_service

Render the orchestrator systemd service file.

API#

orangeqs.juice.orchestration.system_services.system_services_from_settings(settings: orangeqs.juice.orchestration.settings.OrchestrationSettings) tuple[list[orangeqs.juice.orchestration.settings.ContainerSettings], list[orangeqs.juice.orchestration.settings.BuildSettings]]#

Return a list of containers and build services based on the settings.

This functions collects all containers (and image builds) required for the full OrangeQS Juice installation based on the provided settings.

This includes:

  • Containers for each OrangeQS Juice service defined in services.

  • Build services for each environment defined in the services.<key>.environment.

  • (TODO) Containers for system services like the database, JupyterHub, etc.

orangeqs.juice.orchestration.system_services.render_supervisor_configurations(config: orangeqs.juice.orchestration.settings.OrchestrationSettings) None#

Render the supervisord configuration for the services.

orangeqs.juice.orchestration.system_services.render_orchestrator_service() str#

Render the orchestrator systemd service file.

This is a systemd service that exposes RPC methods for orchestrating Juice services.

Returns#

  • (str): The name of the rendered service file without extension.