Commit | Line | Data |
---|---|---|
c3c15dc7 KS |
1 | --- |
2 | # The search domain for instance names | |
3 | search_domain: internal.efficios.com | |
4 | # Which DNS server to use for checks + updates | |
5 | name_server: smb-adc02.internal.efficios.com | |
6 | # The host to use for delegating lxd commands | |
7 | lxd_host: ci-host-amd64-1a.internal.efficios.com | |
455bd8ef KS |
8 | # Default host to create libvirt VMs on if not specified |
9 | libvirt_host: ci-host-amd64-1b.internal.efficios.com | |
c3c15dc7 KS |
10 | |
11 | # @see https://docs.ansible.com/ansible/latest/collections/community/general/lxd_container_module.html#ansible-collections-community-general-lxd-container-module | |
12 | # @example a container instance with the default image (deb12 amd64) | |
13 | # - meta: | |
14 | # address: 192.168.1.2 | |
15 | # lxd: | |
16 | # name: ci-node-example | |
17 | # | |
18 | # The meta.address is used to fill in the default lxd.config['user.network-config'] value | |
19 | # templated from the cloud_init_netconf.j2 template. Note that this does not change the | |
20 | # configuration inside an already deployed instances. The merged value of lxd is passed | |
21 | # as arguments to community.general.lxd_container task. | |
22 | # | |
23 | # When a container/vm is created, the target within the cluster is | |
24 | # determined by the allocation strategy configured for the LXD cluster. The | |
25 | # default is to allocate the instance to the cluster member with the fewest | |
26 | # instances (resource usage not considered). | |
27 | # | |
28 | # Once the instances are provisied meta.address and lxd.name are used to update the | |
29 | # DNS records in Samba. @see scripts/update_dns_entry.py. | |
30 | # | |
31 | # @example a container created on a specific cluster member | |
32 | # - meta: | |
33 | # address: 192.168.1.2 | |
34 | # lxd: | |
35 | # name: ci-node-example | |
36 | # # This only affects creation, the container is not moved if it | |
37 | # # already exists in the cluster. | |
38 | # target: ci-host-amd64-1a | |
39 | # | |
40 | # @example a virtual machine with the default image | |
41 | # - meta: | |
42 | # address: 192.168.1.2 | |
43 | # lxd: | |
44 | # name: ci-rootnode-example | |
45 | # type: virtual-machine | |
46 | # profiles: | |
47 | # - ci-rootnode | |
48 | # | |
49 | # @example a VM with an ISO attached as a cdrom | |
50 | # - meta: | |
51 | # address: 192.168.1.2 | |
52 | # lxd: | |
53 | # name: ci-rootnode-example | |
54 | # type: virtual-machine | |
55 | # profiles: | |
56 | # - ci-rootnode | |
57 | # # If there are configuration errors, sometimes the state | |
58 | # # will need to be set to stopped to apply any differences. | |
59 | # # Some values, eg. raw.apparmor, cannot be changed while the | |
60 | # # VM or container is online. Note that the image needs to | |
61 | # # be readable as the user 'nobody'. | |
62 | # # state: stopped | |
63 | # config: | |
64 | # raw.qemu: '-drive file=/path/to/image.iso,media=cdrom' | |
65 | # raw.apparmor: '/path/to/image.iso rk,' | |
66 | # | |
67 | # Console access, assuming the remote 'ci' is connected to the LXD cluster: | |
68 | # lxc console ci:ci-rootnode-example --type vga | |
69 | # Text console (may not have output depending on boot settings) | |
70 | # lxc console ci:ci-rootnode-example | |
71 | # | |
455bd8ef KS |
72 | # @example Define a VM using libvirt |
73 | # - vm: | |
74 | # # host: 'ci-host-example' | |
75 | # name: 'ci-rootnode-example' | |
76 | # disk: '/path/to/disk' | |
77 | # | |
78 | # @note libvirt VMs are created using the task roles/libvirt/vm.yml. | |
79 | # If `vm.host` not specified, then the host will default to the one defined | |
80 | # in `libvirt_host`. | |
81 | # | |
82 | # @note: `meta.address` doesn't set any additional information for libvirt VMs. | |
83 | # | |
c3c15dc7 | 84 | containers: |
09bc9215 KS |
85 | - meta: |
86 | address: 172.18.18.1 | |
87 | lxd: | |
88 | name: git-mirror02 | |
89 | target: ci-host-amd64-1c | |
90 | config: | |
91 | # Using a privileged container here means we can avoid doing | |
92 | # uid/gid mapping and reduce the work done during file IO | |
93 | security.privileged: 'true' | |
94 | devices: | |
95 | git-mirror: | |
96 | path: /storage/git-mirror | |
97 | # This was created manually: | |
98 | # zfs create -o mountpoint=/storage/git-mirror tank/lxd/custom/git-mirror | |
99 | source: /storage/git-mirror | |
100 | type: disk | |
c3c15dc7 KS |
101 | - meta: |
102 | address: 172.18.16.1 | |
103 | lxd: | |
104 | name: ci-node-deb12-amd64-01 | |
105 | jenkins: | |
106 | label: 'deb12-amd64 deb12' | |
7ff14a97 | 107 | mode: EXCLUSIVE |
c3c15dc7 KS |
108 | - meta: |
109 | address: 172.18.16.2 | |
110 | lxd: | |
111 | name: ci-node-deb12-amd64-02 | |
112 | jenkins: | |
113 | label: 'deb12-amd64 deb12' | |
7ff14a97 | 114 | mode: EXCLUSIVE |
c3c15dc7 KS |
115 | - meta: |
116 | address: 172.18.16.3 | |
117 | lxd: | |
118 | name: ci-node-deb12-amd64-03 | |
119 | jenkins: | |
120 | label: 'deb12-amd64 deb12' | |
7ff14a97 | 121 | mode: EXCLUSIVE |
c3c15dc7 KS |
122 | - meta: |
123 | address: 172.18.16.4 | |
124 | lxd: | |
125 | name: ci-node-deb12-amd64-04 | |
126 | jenkins: | |
127 | label: 'deb12-amd64 deb12' | |
7ff14a97 | 128 | mode: EXCLUSIVE |
c3c15dc7 KS |
129 | - meta: |
130 | address: 172.18.16.5 | |
131 | lxd: | |
132 | name: ci-node-deb12-amd64-05 | |
133 | jenkins: | |
134 | label: 'deb12-amd64 deb12' | |
7ff14a97 | 135 | mode: EXCLUSIVE |
c3c15dc7 KS |
136 | - meta: |
137 | address: 172.18.16.6 | |
138 | lxd: | |
139 | name: ci-node-deb12-amd64-06 | |
140 | jenkins: | |
141 | label: 'deb12-amd64 deb12' | |
7ff14a97 | 142 | mode: EXCLUSIVE |
c3c15dc7 KS |
143 | - meta: |
144 | address: 172.18.16.7 | |
145 | lxd: | |
146 | name: ci-node-deb12-amd64-07 | |
147 | jenkins: | |
148 | label: 'deb12-amd64 deb12' | |
7ff14a97 | 149 | mode: EXCLUSIVE |
c3c15dc7 KS |
150 | - meta: |
151 | address: 172.18.16.8 | |
152 | lxd: | |
153 | name: ci-node-deb12-amd64-08 | |
154 | jenkins: | |
155 | label: 'deb12-amd64 deb12' | |
7ff14a97 | 156 | mode: EXCLUSIVE |
455bd8ef KS |
157 | # "Root" nodes in libvirt, since Jenkins can use the "libvirt agents" plugin |
158 | # to revert to a specific snapshot before running a job | |
159 | # | |
160 | # @NOTE: For Jenkins, the node configuration was initially created by cloning | |
161 | # or creating the nodes as they use a type of node which isn't 'simple' to | |
162 | # create through the API. The entire XML configuration would have to be written | |
163 | # from scratch. In effect, templates may be a better long term solution than | |
164 | # the current structure. | |
165 | # | |
166 | - jenkins: | |
167 | name: 'ci-rootnode-deb12-amd64-1a-01' | |
168 | label: 'deb12 deb12-amd64-rootnode' | |
169 | mode: EXCLUSIVE | |
170 | config: | |
171 | remoteFS: '/root' | |
172 | launcher/hypervisorDescription: 'QEMU+ssh - ci-host-amd64-1a.internal.efficios.com' | |
173 | launcher/virtualMachineName: 'ci-rootnode-deb12-amd64-1a-01' | |
174 | launcher/delegate: 'hudson.plugins.sshslaves.SSHLauncher=class' | |
175 | launcher/delegate/port: '22' | |
176 | launcher/delegate/host: 'ci-rootnode-deb12-amd64-1a-01.internal.efficios.com' | |
177 | launcher/delegate/credentialsId: 'bb5a81cf-346b-43fc-8586-3dc5e43801be' | |
178 | ./hypervisorDescription: 'QEMU+ssh - ci-host-amd64-1a.internal.efficios.com' | |
179 | ./virtualMachineName: 'ci-rootnode-deb12-amd64-1a-01' | |
180 | snapshotName: '' | |
181 | beforeJobSnapshotName: 'base-configuration' | |
182 | startupWaitingPeriodSeconds: '20' | |
183 | launcher/waitTimeMs: '20000' | |
184 | shutdownMethod: 'destroy' | |
185 | vm: | |
186 | name: 'ci-rootnode-deb12-amd64-1a-01' | |
187 | disk: '/var/lib/libvirt/images/ci-rootnode-deb12-amd64-1a-01.qcow' | |
188 | host: 'ci-host-amd64-1a.internal.efficios.com' | |
189 | meta: | |
190 | address: 172.18.17.1 | |
191 | - jenkins: | |
192 | name: 'ci-rootnode-deb12-i386-1a-01' | |
193 | label: 'deb12 deb12-i386-rootnode' | |
194 | mode: EXCLUSIVE | |
195 | config: | |
196 | remoteFS: '/root' | |
197 | launcher/hypervisorDescription: 'QEMU+ssh - ci-host-amd64-1a.internal.efficios.com' | |
198 | launcher/virtualMachineName: 'ci-rootnode-deb12-i386-1a-01' | |
199 | launcher/delegate: 'hudson.plugins.sshslaves.SSHLauncher=class' | |
200 | launcher/delegate/port: '22' | |
201 | launcher/delegate/host: 'ci-rootnode-deb12-amd64-1a-01.internal.efficios.com' | |
202 | launcher/delegate/credentialsId: 'bb5a81cf-346b-43fc-8586-3dc5e43801be' | |
203 | ./hypervisorDescription: 'QEMU+ssh - ci-host-amd64-1a.internal.efficios.com' | |
204 | ./virtualMachineName: 'ci-rootnode-deb12-i386-1a-01' | |
205 | snapshotName: '' | |
206 | beforeJobSnapshotName: 'base-configuration' | |
207 | startupWaitingPeriodSeconds: '20' | |
208 | launcher/waitTimeMs: '20000' | |
209 | shutdownMethod: 'destroy' | |
210 | vm: | |
211 | name: 'ci-rootnode-deb12-i386-1a-01' | |
212 | disk: '/var/lib/libvirt/images/ci-rootnode-deb12-i386-1a-01.qcow' | |
213 | host: 'ci-host-amd64-1a.internal.efficios.com' | |
214 | meta: | |
215 | address: 172.18.17.2 | |
216 | - jenkins: | |
217 | label: 'deb12 deb12-amd64-rootnode' | |
218 | name: 'ci-rootnode-deb12-amd64-1b-01' | |
219 | mode: EXCLUSIVE | |
220 | config: | |
221 | remoteFS: '/root' | |
222 | launcher/hypervisorDescription: 'QEMU+ssh - ci-host-amd64-1b.internal.efficios.com' | |
223 | launcher/virtualMachineName: 'ci-rootnode-deb12-amd64-1b-01' | |
224 | launcher/delegate: 'hudson.plugins.sshslaves.SSHLauncher=class' | |
225 | launcher/delegate/port: '22' | |
226 | launcher/delegate/host: 'ci-rootnode-deb12-amd64-1a-01.internal.efficios.com' | |
227 | launcher/delegate/credentialsId: 'bb5a81cf-346b-43fc-8586-3dc5e43801be' | |
228 | ./hypervisorDescription: 'QEMU+ssh - ci-host-amd64-1b.internal.efficios.com' | |
229 | ./virtualMachineName: 'ci-rootnode-deb12-amd64-1b-01' | |
230 | snapshotName: '' | |
231 | beforeJobSnapshotName: 'base-configuration' | |
232 | startupWaitingPeriodSeconds: '20' | |
233 | launcher/waitTimeMs: '20000' | |
234 | shutdownMethod: 'destroy' | |
235 | vm: | |
236 | name: 'ci-rootnode-deb12-amd64-1b-01' | |
237 | disk: '/var/lib/libvirt/images/ci-rootnode-deb12-amd64-1b-01.qcow' | |
238 | host: 'ci-host-amd64-1b.internal.efficios.com' | |
239 | meta: | |
240 | address: 172.18.17.3 | |
241 | - jenkins: | |
242 | label: 'deb12 deb12-amd64-rootnode' | |
243 | name: 'ci-rootnode-deb12-amd64-1c-01' | |
244 | mode: EXCLUSIVE | |
245 | config: | |
246 | remoteFS: '/root' | |
247 | launcher/hypervisorDescription: 'QEMU+ssh - ci-host-amd64-1c.internal.efficios.com' | |
248 | launcher/virtualMachineName: 'ci-rootnode-deb12-amd64-1c-01' | |
249 | launcher/delegate: 'hudson.plugins.sshslaves.SSHLauncher=class' | |
250 | launcher/delegate/port: '22' | |
251 | launcher/delegate/host: 'ci-rootnode-deb12-amd64-1a-01.internal.efficios.com' | |
252 | launcher/delegate/credentialsId: 'bb5a81cf-346b-43fc-8586-3dc5e43801be' | |
253 | snapshotName: '' | |
254 | beforeJobSnapshotName: 'base-configuration' | |
255 | startupWaitingPeriodSeconds: '20' | |
256 | launcher/waitTimeMs: '20000' | |
257 | shutdownMethod: 'destroy' | |
258 | vm: | |
259 | name: 'ci-rootnode-deb12-amd64-1c-01' | |
260 | disk: '/var/lib/libvirt/images/ci-rootnode-deb12-amd64-1c-01.qcow' | |
261 | host: 'ci-host-amd64-1c.internal.efficios.com' | |
262 | meta: | |
263 | address: 172.18.17.4 | |
264 | - jenkins: | |
265 | label: 'deb12 deb12-amd64-rootnode' | |
266 | name: 'ci-rootnode-deb12-amd64-1d-01' | |
267 | config: | |
268 | remoteFS: '/root' | |
269 | launcher/hypervisorDescription: 'QEMU+ssh - ci-host-amd64-1d.internal.efficios.com' | |
270 | launcher/virtualMachineName: 'ci-rootnode-deb12-amd64-1d-01' | |
271 | launcher/delegate: 'hudson.plugins.sshslaves.SSHLauncher=class' | |
272 | launcher/delegate/port: '22' | |
273 | launcher/delegate/host: 'ci-rootnode-deb12-amd64-1a-01.internal.efficios.com' | |
274 | launcher/delegate/credentialsId: 'bb5a81cf-346b-43fc-8586-3dc5e43801be' | |
275 | ./hypervisorDescription: 'QEMU+ssh - ci-host-amd64-1d.internal.efficios.com' | |
276 | ./virtualMachineName: 'ci-rootnode-deb12-amd64-1d-01' | |
277 | snapshotName: '' | |
278 | beforeJobSnapshotName: 'base-configuration' | |
279 | startupWaitingPeriodSeconds: '20' | |
280 | launcher/waitTimeMs: '20000' | |
281 | shutdownMethod: 'destroy' | |
282 | vm: | |
283 | name: 'ci-rootnode-deb12-amd64-1d-01' | |
284 | disk: '/var/lib/libvirt/images/ci-rootnode-deb12-amd64-1d-01.qcow' | |
285 | host: 'ci-host-amd64-1d.internal.efficios.com' | |
286 | meta: | |
287 | address: 172.18.17.5 | |
288 | - jenkins: | |
289 | label: 'deb12 deb12-amd64-rootnode' | |
290 | name: 'ci-rootnode-deb12-amd64-2a-01' | |
291 | mode: EXCLUSIVE | |
292 | config: | |
293 | remoteFS: '/root' | |
294 | launcher/hypervisorDescription: 'QEMU+ssh - ci-host-amd64-2a.internal.efficios.com' | |
295 | launcher/virtualMachineName: 'ci-rootnode-deb12-amd64-2a-01' | |
296 | launcher/delegate: 'hudson.plugins.sshslaves.SSHLauncher=class' | |
297 | launcher/delegate/port: '22' | |
298 | launcher/delegate/host: 'ci-rootnode-deb12-amd64-1a-01.internal.efficios.com' | |
299 | launcher/delegate/credentialsId: 'bb5a81cf-346b-43fc-8586-3dc5e43801be' | |
300 | ./hypervisorDescription: 'QEMU+ssh - ci-host-amd64-2a.internal.efficios.com' | |
301 | ./virtualMachineName: 'ci-rootnode-deb12-amd64-2a-01' | |
302 | snapshotName: '' | |
303 | beforeJobSnapshotName: 'base-configuration' | |
304 | startupWaitingPeriodSeconds: '20' | |
305 | shutdownMethod: 'destroy' | |
306 | vm: | |
307 | name: 'ci-rootnode-deb12-amd64-2a-01' | |
308 | disk: '/var/lib/libvirt/images/ci-rootnode-deb12-amd64-2a-01.qcow' | |
309 | host: 'ci-host-amd64-2a.internal.efficios.com' | |
310 | meta: | |
311 | address: 172.18.17.6 | |
312 | - jenkins: | |
313 | label: 'deb12 deb12-amd64-rootnode' | |
314 | name: 'ci-rootnode-deb12-amd64-2b-01' | |
315 | mode: EXCLUSIVE | |
316 | config: | |
317 | remoteFS: '/root' | |
318 | launcher/hypervisorDescription: 'QEMU+ssh - ci-host-amd64-2b.internal.efficios.com' | |
319 | launcher/virtualMachineName: 'ci-rootnode-deb12-amd64-2b-01' | |
320 | launcher/delegate: 'hudson.plugins.sshslaves.SSHLauncher=class' | |
321 | launcher/delegate/port: '22' | |
322 | launcher/delegate/host: 'ci-rootnode-deb12-amd64-1a-01.internal.efficios.com' | |
323 | launcher/delegate/credentialsId: 'bb5a81cf-346b-43fc-8586-3dc5e43801be' | |
324 | ./hypervisorDescription: 'QEMU+ssh - ci-host-amd64-2b.internal.efficios.com' | |
325 | ./virtualMachineName: 'ci-rootnode-deb12-amd64-2b-01' | |
326 | snapshotName: '' | |
327 | beforeJobSnapshotName: 'base-configuration' | |
328 | startupWaitingPeriodSeconds: '20' | |
329 | launcher/waitTimeMs: '20000' | |
330 | shutdownMethod: 'destroy' | |
331 | vm: | |
332 | name: 'ci-rootnode-deb12-amd64-2b-01' | |
333 | disk: '/var/lib/libvirt/images/ci-rootnode-deb12-amd64-2b-01.qcow' | |
334 | host: 'ci-host-amd64-2b.internal.efficios.com' | |
335 | meta: | |
336 | address: 172.18.17.7 | |
337 | - jenkins: | |
338 | label: 'deb12 deb12-amd64-rootnode' | |
339 | name: 'ci-rootnode-deb12-amd64-2c-01' | |
340 | mode: EXCLUSIVE | |
341 | config: | |
342 | remoteFS: '/root' | |
343 | launcher/hypervisorDescription: 'QEMU+ssh - ci-host-amd64-2c.internal.efficios.com' | |
344 | launcher/virtualMachineName: 'ci-rootnode-deb12-amd64-2c-01' | |
345 | launcher/delegate: 'hudson.plugins.sshslaves.SSHLauncher=class' | |
346 | launcher/delegate/port: '22' | |
347 | launcher/delegate/host: 'ci-rootnode-deb12-amd64-1a-01.internal.efficios.com' | |
348 | launcher/delegate/credentialsId: 'bb5a81cf-346b-43fc-8586-3dc5e43801be' | |
349 | ./hypervisorDescription: 'QEMU+ssh - ci-host-amd64-2c.internal.efficios.com' | |
350 | ./virtualMachineName: 'ci-rootnode-deb12-amd64-2c-01' | |
351 | snapshotName: '' | |
352 | beforeJobSnapshotName: 'base-configuration' | |
353 | startupWaitingPeriodSeconds: '20' | |
354 | launcher/waitTimeMs: '20000' | |
355 | shutdownMethod: 'destroy' | |
356 | vm: | |
357 | name: 'ci-rootnode-deb12-amd64-2c-01' | |
358 | disk: '/var/lib/libvirt/images/ci-rootnode-deb12-amd64-2c-01.qcow' | |
359 | host: 'ci-host-amd64-2c.internal.efficios.com' | |
360 | meta: | |
361 | address: 172.18.17.8 | |
362 | - jenkins: | |
363 | label: 'deb12 deb12-amd64-rootnode' | |
364 | name: 'ci-rootnode-deb12-amd64-2d-01' | |
365 | mode: EXCLUSIVE | |
366 | config: | |
367 | remoteFS: '/root' | |
368 | launcher/hypervisorDescription: 'QEMU+ssh - ci-host-amd64-2d.internal.efficios.com' | |
369 | launcher/virtualMachineName: 'ci-rootnode-deb12-amd64-2d-01' | |
370 | launcher/delegate: 'hudson.plugins.sshslaves.SSHLauncher=class' | |
371 | launcher/delegate/port: '22' | |
372 | launcher/delegate/host: 'ci-rootnode-deb12-amd64-1a-01.internal.efficios.com' | |
373 | launcher/delegate/credentialsId: 'bb5a81cf-346b-43fc-8586-3dc5e43801be' | |
374 | ./hypervisorDescription: 'QEMU+ssh - ci-host-amd64-2d.internal.efficios.com' | |
375 | ./virtualMachineName: 'ci-rootnode-deb12-amd64-2d-01' | |
376 | snapshotName: '' | |
377 | beforeJobSnapshotName: 'base-configuration' | |
378 | startupWaitingPeriodSeconds: '20' | |
379 | launcher/waitTimeMs: '20000' | |
380 | shutdownMethod: 'destroy' | |
381 | vm: | |
382 | name: 'ci-rootnode-deb12-amd64-2d-01' | |
383 | disk: '/var/lib/libvirt/images/ci-rootnode-deb12-amd64-2d-01.qcow' | |
384 | host: 'ci-host-amd64-2d.internal.efficios.com' | |
385 | meta: | |
386 | address: 172.18.17.9 |