A Kubernetes controller that runs Semaphore jobs in Kubernetes.
- A Kubernetes cluster
- A Semaphore API token
Environment variable | Description |
---|---|
SEMAPHORE_ENDPOINT | The Semaphore control plane endpoint, e.g. <your-organization>.semaphoreci.com . |
KUBERNETES_NAMESPACE | The Kubernetes namespace where the resources for Semaphore jobs will be created. By default, the default namespace is used. |
SEMAPHORE_AGENT_IMAGE | The Semaphore agent image to use when creating agents. By default, semaphoreci/agent:latest . |
SEMAPHORE_AGENT_LOG_LEVEL | The log level for the Semaphore agent. By default, info . |
MAX_PARALLEL_JOBS | The max number of Semaphore jobs to run in parallel. By default, 10. |
KUBERNETES_SERVICE_ACCOUNT | The Kubernetes service account to attach to the pods created for the Semaphore agent. |
SEMAPHORE_AGENT_LABELS | A comma-separated list of Kubernetes labels to apply on all resources created by the controller. |
SEMAPHORE_AGENT_STARTUP_PARAMETERS | Any additional Semaphore agent configuration parameters to pass to the agents being created. |
KEEP_FAILED_JOBS_FOR | A duration string indicating how long to keep failed Kubernetes jobs. For example, 5m . Default is 0. |
KEEP_SUCCESSFUL_JOBS_FOR | A duration string indicating how long to successful failed Kubernetes jobs. For example, 5m . Default is 0. |
JOB_START_TIMEOUT | A duration string indicating how long to wait for a Kubernetes job created to start; after the timeout has passed, the Kubernetes job is deleted. Default is 5m . |