--- apiVersion: apps/v1 kind: Deployment metadata: name: nodepool-launcher-{{ provider_name }} labels: app.kubernetes.io/name: nodepool app.kubernetes.io/instance: {{ instance_name }} app.kubernetes.io/part-of: zuul app.kubernetes.io/component: nodepool-launcher operator.zuul-ci.org/nodepool-provider: {{ provider_name }} spec: replicas: 1 selector: matchLabels: app.kubernetes.io/name: nodepool app.kubernetes.io/instance: {{ instance_name }} app.kubernetes.io/part-of: zuul app.kubernetes.io/component: nodepool-launcher template: metadata: labels: app.kubernetes.io/name: nodepool app.kubernetes.io/instance: {{ instance_name }} app.kubernetes.io/part-of: zuul app.kubernetes.io/component: nodepool-launcher spec: containers: - name: launcher image: zuul/nodepool-launcher:latest env: - name: KUBECONFIG value: /etc/kubernetes/kube.config volumeMounts: - name: nodepool-config mountPath: /etc/nodepool readOnly: true - name: zookeeper-client-tls mountPath: /tls/client readOnly: true {%- if 'openstack' in external_config %} - name: openstack mountPath: /etc/openstack readOnly: true {%- endif %} {%- if 'kubernetes' in external_config %} - name: kubernetes mountPath: /etc/kubernetes readOnly: true {%- endif %} volumes: - name: nodepool-config secret: secretName: {{ nodepool_config_secret_name }} - name: zookeeper-client-tls secret: secretName: zookeeper-client-tls {%- if 'openstack' in external_config %} - name: openstack secret: secretName: {{ external_config['openstack']['secretName'] }} {%- endif %} {%- if 'kubernetes' in external_config %} - name: kubernetes secret: secretName: {{ external_config['kubernetes']['secretName'] }} {%- endif %}