2
2
name : Build IPA images
3
3
on :
4
4
workflow_dispatch :
5
+ inputs :
6
+ rocky9 :
7
+ description : Build Rocky Linux 9
8
+ type : boolean
9
+ default : true
10
+ ubuntu-jammy :
11
+ description : Build Ubuntu 22.04 Jammy
12
+ type : boolean
13
+ default : true
5
14
secrets :
6
15
KAYOBE_VAULT_PASSWORD :
7
16
required : true
@@ -188,8 +197,8 @@ jobs:
188
197
env :
189
198
KAYOBE_VAULT_PASSWORD : ${{ secrets.KAYOBE_VAULT_PASSWORD }}
190
199
191
- - name : Build an Ironic Python Agent ( IPA) image
192
- id : build_ipa
200
+ - name : Build a Ubuntu 22.04 Jammy IPA image
201
+ id : build_ubuntu_jammy_ipa
193
202
continue-on-error : true
194
203
run : |
195
204
source venvs/kayobe/bin/activate &&
@@ -200,6 +209,7 @@ jobs:
200
209
-e ipa_build_dib_env_extra='{"DISTRO_NAME": "ubuntu"}'
201
210
env :
202
211
KAYOBE_VAULT_PASSWORD : ${{ secrets.KAYOBE_VAULT_PASSWORD }}
212
+ if : inputs.ubuntu-jammy
203
213
204
214
- name : Show last error logs
205
215
continue-on-error : true
@@ -209,9 +219,9 @@ jobs:
209
219
kayobe seed host command run --command "tail -200 /opt/kayobe/images/ipa/ipa.stdout" --show-output
210
220
env :
211
221
KAYOBE_VAULT_PASSWORD : ${{ secrets.KAYOBE_VAULT_PASSWORD }}
212
- if : steps.build_ipa .outcome == 'failure'
222
+ if : steps.build_ubuntu_jammy_ipa .outcome == 'failure'
213
223
214
- - name : Upload IPA kernel image to Ark
224
+ - name : Upload Ubuntu 22.04 Jammy IPA kernel image to Ark
215
225
run : |
216
226
source venvs/kayobe/bin/activate &&
217
227
source src/kayobe-config/kayobe-env --environment ci-builder &&
@@ -225,9 +235,9 @@ jobs:
225
235
-e file_regex='*.kernel'
226
236
env :
227
237
KAYOBE_VAULT_PASSWORD : ${{ secrets.KAYOBE_VAULT_PASSWORD }}
228
- if : steps.build_ipa .outcome == 'success'
238
+ if : inputs.ubuntu-jammy && steps.build_ubuntu_jammy_ipa .outcome == 'success'
229
239
230
- - name : Upload IPA ramdisk image to Ark
240
+ - name : Upload Ubuntu 22.04 Jammy IPA ramdisk image to Ark
231
241
run : |
232
242
source venvs/kayobe/bin/activate &&
233
243
source src/kayobe-config/kayobe-env --environment ci-builder &&
@@ -241,7 +251,63 @@ jobs:
241
251
-e file_regex='*.initramfs'
242
252
env :
243
253
KAYOBE_VAULT_PASSWORD : ${{ secrets.KAYOBE_VAULT_PASSWORD }}
244
- if : steps.build_ipa.outcome == 'success'
254
+ if : inputs.ubuntu-jammy && steps.build_ubuntu_jammy_ipa.outcome == 'success'
255
+
256
+ - name : Build a Rocky 9 IPA image
257
+ id : build_rocky_9_ipa
258
+ continue-on-error : true
259
+ run : |
260
+ source venvs/kayobe/bin/activate &&
261
+ source src/kayobe-config/kayobe-env --environment ci-builder &&
262
+ kayobe overcloud deployment image build --force-rebuild \
263
+ -e os_distribution="rocky" \
264
+ -e os_release="9" \
265
+ -e ipa_build_dib_env_extra='{"DISTRO_NAME": "rocky"}'
266
+ env :
267
+ KAYOBE_VAULT_PASSWORD : ${{ secrets.KAYOBE_VAULT_PASSWORD }}
268
+ if : inputs.rocky9
269
+
270
+ - name : Show last error logs
271
+ continue-on-error : true
272
+ run : |
273
+ source venvs/kayobe/bin/activate &&
274
+ source src/kayobe-config/kayobe-env --environment ci-builder &&
275
+ kayobe seed host command run --command "tail -200 /opt/kayobe/images/ipa/ipa.stdout" --show-output
276
+ env :
277
+ KAYOBE_VAULT_PASSWORD : ${{ secrets.KAYOBE_VAULT_PASSWORD }}
278
+ if : steps.build_rocky_9_ipa.outcome == 'failure'
279
+
280
+ - name : Upload Rocky 9 IPA kernel image to Ark
281
+ run : |
282
+ source venvs/kayobe/bin/activate &&
283
+ source src/kayobe-config/kayobe-env --environment ci-builder &&
284
+ kayobe playbook run \
285
+ src/kayobe-config/etc/kayobe/ansible/pulp-artifact-upload.yml \
286
+ -e artifact_path=/opt/kayobe/images/ipa \
287
+ -e artifact_name=ipa \
288
+ -e artifact_tag=${{ steps.ipa_image_tag.outputs.ipa_image_tag }} \
289
+ -e os_distribution="rocky" \
290
+ -e os_release="9" \
291
+ -e file_regex='*.kernel'
292
+ env :
293
+ KAYOBE_VAULT_PASSWORD : ${{ secrets.KAYOBE_VAULT_PASSWORD }}
294
+ if : inputs.rocky9 && steps.build_rocky_9_ipa.outcome == 'success'
295
+
296
+ - name : Upload Rocky 9 IPA ramdisk image to Ark
297
+ run : |
298
+ source venvs/kayobe/bin/activate &&
299
+ source src/kayobe-config/kayobe-env --environment ci-builder &&
300
+ kayobe playbook run \
301
+ src/kayobe-config/etc/kayobe/ansible/pulp-artifact-upload.yml \
302
+ -e artifact_path=/opt/kayobe/images/ipa \
303
+ -e artifact_name=ipa \
304
+ -e artifact_tag=${{ steps.ipa_image_tag.outputs.ipa_image_tag }} \
305
+ -e os_distribution="rocky" \
306
+ -e os_release="9" \
307
+ -e file_regex='*.initramfs'
308
+ env :
309
+ KAYOBE_VAULT_PASSWORD : ${{ secrets.KAYOBE_VAULT_PASSWORD }}
310
+ if : inputs.rocky9 && steps.build_rocky_9_ipa.outcome == 'success'
245
311
246
312
- name : Copy logs back
247
313
continue-on-error : true
0 commit comments