screwdriver-executor-k8s
v16.0.0
Published
Kubernetes Executor plugin for Screwdriver
Downloads
402
Readme
Screwdriver Kubernetes Executor
Kubernetes Executor plugin for Screwdriver
This is an executor for the Screwdriver continuous delivery solution that interacts with Kubernetes.
Usage
npm install screwdriver-executor-k8s
Initialization
The class provides a couple options that are configurable in the instantiation of this Executor
| Parameter | Type | Default | Description |
| :------------- | :---- | :----------| :-----------|
| config | Object | | Configuration Object |
| config.kubernetes | Object | {} | Kubernetes configuration Object |
| config.kubernetes.token | String | '' | The JWT token used for authenticating to the Kubernetes cluster. (If not passed in, we will read from /var/run/secrets/kubernetes.io/serviceaccount/token
.) |
| config.kubernetes.host | String | 'kubernetes.defaults' | The hostname for the Kubernetes cluster (kubernetes) |
| config.kubernetes.serviceAccount | String | 'default' | The service account to use in Kubernetes (default) |
| config.ecosystem | Object | | Screwdriver Ecosystem (ui, api, store, etc.) |
| config.launchImage | String | 'screwdrivercd/launcher' | Launcher image to use |
| config.launchVersion | String | 'stable' | Launcher container version to use (stable) |
| config.prefix | String | '' | Prefix to container names ("") |
| config.kubernetes.dnsPolicy | String | 'ClusterFirst' | DNS Policy for build pod |
| config.kubernetes.imagePullPolicy | String | 'Always' | Image Pull Policy for build pod |
| config.kubernetes.imagePullSecretName | String | '' | Name of image pull secret |
| config.kubernetes.jobsNamespace | String | 'default' | Kubernetes namespace where builds are running on |
| config.kubernetes.nodeSelectors | Object | {} | Object representing node label-value pairs |
| config.kubernetes.preferredNodeSelectors | Object | {} | Object representing preferred node label-value pairs |
| config.kubernetes.podLabels | Object | { app: 'screwdriver', tier: 'builds', sdbuild: buildContainerName } | Object representing custom pod label key-value pairs |
| config.kubernetes.resources.memory.turbo | Number | 16 | Value for TURBO memory (in GB) |
| config.kubernetes.resources.memory.high | Number | 12 | Value for HIGH memory (in GB) |
| config.kubernetes.resources.memory.low | Number | 2 | Value for LOW memory (in GB) |
| config.kubernetes.resources.memory.micro | Number | 1 | Value for MICRO memory (in GB) |
| config.kubernetes.resources.cpu.turbo | Number | 12 | Value for TURBO CPU (in cores) |
| config.kubernetes.resources.cpu.high | Number | 6 | Value for HIGH CPU (in cores) |
| config.kubernetes.resources.cpu.low | Number | 2 | Value for LOW CPU (in cores) |
| config.kubernetes.resources.cpu.micro | Number | 0.5 | Value for MICRO CPU (in cores) |
| config.kubernetes.runtimeClass | String | '' | Runtime class |
Methods
For more information on start
, stop
, verify
and stats
please see the executor-base-class.
Testing
npm test
License
Code licensed under the BSD 3-Clause license. See LICENSE file for terms.