Skip to content

RENCI/APSViz-Supervisor

Repository files navigation

image not found

APSViz Supervisor

A Workflow manager that creates and monitors K8s jobs for each data processing component.

Licenses...

MIT License GPLv3 License RENCI License

Components and versions...

Python Linting Pylint Pytest

Build status...

PyLint the codebase Build and push the Docker image

Description

This product is a workflow manager that sequences microservices deployed in a K8s environment.

The APSViz Job supervisor has the following features:

  • Integrates directly with K8s using the K8s API to create and monitor jobs.
  • Monitors each K8s job from creation to completion
  • Robust error handling.
  • Broadcasts the run state of each request (success, failure) using Slack.
  • K8s Job definitions for each workflow process are stored in a database.
  • K8s Job settings are configurable via the APSViz settings application.

There are GitHub actions to maintain code quality in this repo:

  • Pylint (minimum score of 10/10 to pass),
  • Build/publish a Docker image.

Helm/k8s charts for this product are available at: APSViz-Helm.