Update documentation for Cluster-API and Flux
[icn.git] / deploy / ironic / base / ironic / ironic.yaml
1 apiVersion: apps/v1
2 kind: Deployment
3 metadata:
4   name: capm3-ironic
5 spec:
6   replicas: 1
7   strategy:
8     # We cannot run Ironic with more than one replica at a time. The recreate
9     # strategy makes sure that the old pod is gone before a new is started.
10     type: Recreate
11   selector:
12     matchLabels:
13       name: capm3-ironic
14   template:
15     metadata:
16       labels:
17         name: capm3-ironic
18     spec:
19       hostNetwork: true
20       containers:
21         - name: ironic-dnsmasq
22           image: quay.io/metal3-io/ironic
23           imagePullPolicy: Always
24           securityContext:
25              capabilities:
26                add: ["NET_ADMIN"]
27           command:
28             - /bin/rundnsmasq
29           volumeMounts:
30             - mountPath: /shared
31               name: ironic-data-volume
32           envFrom:
33             - configMapRef:
34                 name: ironic-bmo-configmap
35         - name: mariadb
36           image: quay.io/metal3-io/ironic
37           imagePullPolicy: Always
38           command:
39             - /bin/runmariadb
40           volumeMounts:
41             - mountPath: /shared
42               name: ironic-data-volume
43           env:
44             - name: MARIADB_PASSWORD
45               valueFrom:
46                 secretKeyRef:
47                   name: mariadb-password
48                   key: password
49             - name: RESTART_CONTAINER_CERTIFICATE_UPDATED
50               valueFrom:
51                  configMapKeyRef:
52                   name: ironic-bmo-configmap
53                   key: RESTART_CONTAINER_CERTIFICATE_UPDATED
54         - name: ironic-api
55           image: quay.io/metal3-io/ironic
56           imagePullPolicy: Always
57           command:
58             - /bin/runironic-api
59           volumeMounts:
60             - mountPath: /shared
61               name: ironic-data-volume
62           envFrom:
63             - configMapRef:
64                 name: ironic-bmo-configmap
65           env:
66             - name: MARIADB_PASSWORD
67               valueFrom:
68                 secretKeyRef:
69                   name: mariadb-password
70                   key: password
71         - name: ironic-conductor
72           image: quay.io/metal3-io/ironic
73           imagePullPolicy: Always
74           command:
75             - /bin/runironic-conductor
76           volumeMounts:
77             - mountPath: /shared
78               name: ironic-data-volume
79           envFrom:
80             - configMapRef:
81                 name: ironic-bmo-configmap
82           env:
83             - name: MARIADB_PASSWORD
84               valueFrom:
85                 secretKeyRef:
86                   name: mariadb-password
87                   key: password
88         - name: ironic-log-watch
89           image: quay.io/metal3-io/ironic
90           imagePullPolicy: Always
91           command:
92             - /bin/runlogwatch.sh
93           volumeMounts:
94             - mountPath: /shared
95               name: ironic-data-volume
96         - name: ironic-inspector
97           image: quay.io/metal3-io/ironic
98           imagePullPolicy: Always
99           command:
100             - /bin/runironic-inspector
101           envFrom:
102             - configMapRef:
103                 name: ironic-bmo-configmap
104       initContainers:
105         - name: ironic-ipa-downloader
106           image: quay.io/metal3-io/ironic-ipa-downloader
107           imagePullPolicy: Always
108           command:
109             - /usr/local/bin/get-resource.sh
110           envFrom:
111             - configMapRef:
112                 name: ironic-bmo-configmap
113           volumeMounts:
114             - mountPath: /shared
115               name: ironic-data-volume
116       volumes:
117         - name: ironic-data-volume
118           emptyDir: {}