Openshift Pods Driver¶
Selecting the openshift pods driver adds the following options to the providers section of the configuration.
-
providers.[openshiftpods]
¶
Type: list The Openshift Pods driver is similar to the Openshift driver, but it only support pod label to be created in a single project. This enable using an unprivileged service account that doesn’t requires the self-provisioner role.
Example:
providers: - name: cluster driver: openshiftpods context: unprivileged-context-name pools: - name: main labels: - name: openshift-pod image: docker.io/fedora:28
-
providers.[openshiftpods].
context
(required)¶ Name of the context configured in
kube/config
.Before using the driver, Nodepool services need a
kube/config
file manually installed with self-provisioner (the service account needs to be able to create projects) context. Make sure the context is present inoc config get-contexts
command output.
-
providers.[openshiftpods].
launch-retries
¶
Default:3
The number of times to retry launching a pod before considering the job failed.
-
providers.[openshiftpods].
max-pods
¶
Default:infinite
Type: int Maximum number of pods that can be used.
-
providers.[openshiftpods].
pools
¶
Type: list A pool defines a group of resources from an Openshift provider.
-
providers.[openshiftpods].
pools.
name
(required)¶ The project’s name that will be used to create the pods.
-
providers.[openshiftpods].
pools.
node-attributes
¶
Type: dict A dictionary of key-value pairs that will be stored with the node data in ZooKeeper. The keys and values can be any arbitrary string.
-
-
providers.[openshiftpods].
labels
¶
Type: list Each entry in a pool`s labels section indicates that the corresponding label is available for use in this pool.
Each entry is a dictionary with the following keys
-
providers.[openshiftpods].
labels.
name
(required)¶ Identifier for this label; references an entry in the labels section.
-
providers.[openshiftpods].
labels.
image
¶ The image name.
-
providers.[openshiftpods].
labels.
image-pull
¶
Default:IfNotPresent
Type: str The ImagePullPolicy, can be IfNotPresent, Always or Never.
-
providers.[openshiftpods].
labels.
cpu
¶
Type: int The number of cpu to request for the pod.
-
providers.[openshiftpods].
labels.
memory
¶
Type: int The amount of memory in MB to request for the pod.
-
providers.[openshiftpods].
labels.
python-path
¶ -
providers.[openshiftpods].
labels.
:type: str
¶ -
providers.[openshiftpods].
labels.
:default: auto
¶ The path of the default python interpreter. Used by Zuul to set
ansible_python_interpreter
. The special valueauto
will direct Zuul to use inbuilt Ansible logic to select the interpreter on Ansible >=2.8, and default to/usr/bin/python2
for earlier versions.
-
providers.[openshiftpods].
labels.
env
¶
Default:[]
Type: list A list of environment variables to pass to the Pod.
-
providers.[openshiftpods].
labels.
env.
name
(required)¶
Type: str The name of the environment variable passed to the Pod.
-
providers.[openshiftpods].
labels.
env.
value
(required)¶
Type: str The value of the environment variable passed to the Pod.
-
-
providers.[openshiftpods].
labels.
node-selector
¶
Type: dict A map of key-value pairs to ensure the OpenShift scheduler places the Pod on a node with specific node labels.
-
-