Skip to content
This repository has been archived by the owner on Sep 6, 2024. It is now read-only.

Kubernetes VM Executor for Screwdriver

License

Notifications You must be signed in to change notification settings

screwdriver-cd/executor-k8s-vm

Repository files navigation

Screwdriver Kubernetes VM Executor

Version Downloads Build Status Open Issues License

Kubernetes VM Executor plugin for Screwdriver

Deprecated

Please note that this code is no longer used by the screwdriver.cd team and has not been maintained in a while. You are welcome to use and/or contribute to it at your own risk.

Usage

npm install screwdriver-executor-k8s-vm

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.nodeSelectors Object Object representing node label-value pairs https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#step-one-attach-label-to-the-node
config.ecosystem Object Screwdriver Ecosystem (ui, api, store, pushgateway, 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.jobsNamespace String 'default' Kubernetes namespace where builds are running on
config.baseImage String '' Base image used to start the VM
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 1 Value for MICRO CPU (in cores)
config.kubernetes.resources.disk.space String Value for disk space label (e.g.: screwdriver.cd/disk)
config.kubernetes.resources.disk.speed String Value for disk speed label (e.g.: screwdriver.cd/diskSpeed)

Methods

For more information on start, stop, 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.