Skip to content

Latest commit

 

History

History
26 lines (20 loc) · 2.17 KB

README.md

File metadata and controls

26 lines (20 loc) · 2.17 KB

Semaphore agent controller for Kubernetes

A Kubernetes controller that runs Semaphore jobs in Kubernetes.

Installation

Requirements

  • A Kubernetes cluster
  • A Semaphore API token

Configuration

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.