spacelift workerpool v0.0.41

WorkerPool.spec.pod.binariesCacheVolume.emptyDir.sizeLimit.spec.pod

Pod contains the configuration options for Pods created as a result of runs being scheduled on the pool.

32 fields
WorkerPool.spec.pod.binariesCacheVolume.emptyDir.sizeLimit.spec.pod fields and descriptions
Field / TypeDescription
activeDeadlineSeconds
integer

Optional duration in seconds the pod may be active on the node relative to StartTime before the system will actively try to mark it failed and kill associated containers. Value must be a positive integer. That could be used to specify the maximum duration of a run. Default: 70 minutes

  • format: int64
object[]

AdditionalSidecarContainers allows you to add any custom container to the pod. If an additional container is running a long-running process like a database or a daemon, it will be terminated when the spacelift run succeed.

object

If specified, the pod's scheduling constraints

map[string]string

Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations

automountServiceAccountToken
boolean

AutomountServiceAccountToken indicates whether a service account token should be automatically mounted.

object

Special volume used to cache binaries like tool downloads (e.g. terraform, kubectl, etc). These binaries can be reused by multiple runs, and potentially by multiple workers in your pool. To support this you need to use a volume type that can be read and written to by multiple Pods at the same time.

customBinariesPath
string

CustomBinariesPath allows you to add additional directories to the start of the path used by the worker. This allows you to do things like use a custom tool version provided on the runner image instead of the version downloaded by Spacelift.

object[]

CustomInitContainers allow you to define a list of custom init containers to be run before the builtin init one.

defaultAnsibleRunnerImage
string

DefaultAnsibleRunnerImage overrides the default runner image for Ansible runs. When set, this image will be used instead of the backend-provided runner image for Ansible stacks. Default: public.ecr.aws/spacelift/runner-ansible:latest

defaultIntentImage
string

DefaultIntentImage overrides the image used for the intent-worker container when running intent tasks. When set, this image is used instead of the backend-provided image for every intent task on this pool.

defaultRunnerImage
string

DefaultRunnerImage overrides the default runner image for non-Ansible runs. When set, this image will be used instead of the backend-provided runner image for Terraform and other non-Ansible stacks. Default: public.ecr.aws/spacelift/runner-terraform:latest

object

Specifies the DNS parameters of a pod. Parameters specified here will be merged to the generated DNS configuration based on DNSPolicy.

dnsPolicy
string

Specifies the DNS policy of a pod. Parameters specified here will be merged to the generated DNSPolicy.

object

GRPCServerContainer allows you to override parts of the builtin grpc-server container.

object[]

HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts file if specified. This is only valid for non-hostNetwork pods.

object[]

ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. If specified, these secrets will be passed to individual puller implementations for them to use. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod

object

InitContainer allows you to override parts of the builtin init container.

map[string]string

Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels

launcherImage
string

This field can be used to pin the image used for the built-in init container and gRPC container to a specific image version, or to allow you to mirror the image in your own container registry. NOTE: we do not recommend that you set this field unless completely necessary. By default the correct image to use will be sent from the Spacelift backend, to ensure that the image used is compatible with the current Spacelift backend.

nodeName
string

NodeName is a request to schedule this pod onto a specific node. If it is non-empty, the scheduler simply schedules this pod onto that node, assuming that it fits resource requirements.

map[string]string

NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/

  • x-kubernetes-map-type: "atomic"
runtimeClassName
string

RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used to run this pod. If no RuntimeClass resource matches the named class, the pod will not be run. If unset or empty, the "legacy" RuntimeClass will be used, which is an implicit class with an empty definition that uses the default runtime handler. More info: https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class

schedulerName
string

If specified, the pod will be dispatched by specified scheduler. If not specified, the pod will be dispatched by default scheduler.

object

SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field.

serviceAccountName
string

ServiceAccountName is the name of the ServiceAccount to use to run this pod.

shareProcessNamespace
boolean

ShareProcessNamespace lets the containers in the pod see and signal each other's processes, which a sidecar can use to coordinate with the builtin containers during shutdown. Optional: Default to false.

terminationGracePeriodSeconds
integer

Optional duration in seconds the pod needs to terminate gracefully. May be decreased in delete request. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). If this value is nil, the default grace period will be used instead. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. Defaults to 30 seconds.

  • format: int64
object[]

If specified, the pod's tolerations.

object[]

TopologySpreadConstraints describes how a group of pods ought to spread across topology domains. Scheduler will schedule pods in a way which abides by the constraints. All topologySpreadConstraints are ANDed.

object[]

List of volumes that can be mounted by containers belonging to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes

object

WorkerContainer allows you to override parts of the worker that is used to run jobs.

object

Special volume shared between init containers and the worker container. Used to populate the workspace with the repository content. It's always mounted in the same path: /opt/spacelift/workspace IMPORTANT: when using a custom value for this volume bear in mind that data stored in it is sensitive. We recommend to make sure this volume is ephemeral and is not shared with other pods.