@@ -185,14 +185,56 @@ jobs:
185185 secrets :
186186 QUAY_PASSWORD : ${{ secrets.QUAY_PASSWORD }}
187187
188+ # Build and push the peerpod-ctrl image (per-arch)
189+ peerpod_ctrl_image_amd64 :
190+ uses : ./.github/workflows/peerpod-ctrl_build_and_push.yaml
191+ with :
192+ registry : ${{ inputs.registry }}
193+ image_tags : ${{ inputs.caa_image_tag }}
194+ git_ref : ${{ inputs.git_ref }}
195+ arch : linux/amd64
196+ runner : ubuntu-24.04
197+ permissions :
198+ contents : read
199+ packages : write # Required to publish the image to ghcr
200+ secrets :
201+ QUAY_PASSWORD : ${{ secrets.QUAY_PASSWORD }}
202+
203+ peerpod_ctrl_image_s390x :
204+ uses : ./.github/workflows/peerpod-ctrl_build_and_push.yaml
205+ with :
206+ registry : ${{ inputs.registry }}
207+ image_tags : ${{ inputs.caa_image_tag }}
208+ git_ref : ${{ inputs.git_ref }}
209+ arch : linux/s390x
210+ runner : ubuntu-24.04-s390x
211+ permissions :
212+ contents : read
213+ packages : write # Required to publish the image to ghcr
214+ secrets :
215+ QUAY_PASSWORD : ${{ secrets.QUAY_PASSWORD }}
216+
217+ # Build and push the webhook image
218+ webhook_image :
219+ uses : ./.github/workflows/webhook_image.yaml
220+ with :
221+ registry : ${{ inputs.registry }}
222+ image_tags : ${{ inputs.caa_image_tag }}
223+ git_ref : ${{ inputs.git_ref }}
224+ permissions :
225+ contents : read
226+ packages : write # Required to publish the image to ghcr
227+ secrets :
228+ QUAY_PASSWORD : ${{ secrets.QUAY_PASSWORD }}
229+
188230 # Run AWS e2e tests if pull request labeled 'test_e2e_aws'
189231 aws :
190232 name : aws
191233 if : |
192234 github.event_name == 'schedule' ||
193235 github.event_name == 'workflow_dispatch' ||
194236 contains(github.event.pull_request.labels.*.name, 'test_e2e_aws')
195- needs : [podvm_ubuntu_amd64, caa_image_amd64]
237+ needs : [podvm_ubuntu_amd64, caa_image_amd64, peerpod_ctrl_image_amd64, webhook_image ]
196238 strategy :
197239 fail-fast : false
198240 matrix :
@@ -207,6 +249,8 @@ jobs:
207249 container_runtime : ${{ matrix.container_runtime }}
208250 podvm_image : ${{ needs.podvm_ubuntu_amd64.outputs.qcow2_oras_image }}
209251 git_ref : ${{ inputs.git_ref }}
252+ peerpod_ctrl_image : ${{ inputs.registry }}/peerpod-ctrl:${{ inputs.caa_image_tag }}-amd64
253+ webhook_image : ${{ inputs.registry }}/peer-pods-webhook:${{ inputs.caa_image_tag }}
210254 secrets :
211255 AWS_IAM_ROLE_ARN : ${{ secrets.AWS_IAM_ROLE_ARN }}
212256
@@ -234,13 +278,15 @@ jobs:
234278 github.event_name == 'workflow_dispatch' ||
235279 contains(github.event.pull_request.labels.*.name, 'test_e2e_libvirt') ||
236280 contains(github.event.pull_request.labels.*.name, 'test_e2e_libvirt_amd64')
237- needs : [podvm_mkosi_amd64, libvirt_e2e_arch_prep, caa_image_amd64]
281+ needs : [podvm_mkosi_amd64, libvirt_e2e_arch_prep, caa_image_amd64, peerpod_ctrl_image_amd64, webhook_image ]
238282 uses : ./.github/workflows/e2e_libvirt.yaml
239283 with :
240284 runner : ubuntu-24.04
241285 caa_image : ${{ inputs.registry }}/cloud-api-adaptor:${{ inputs.caa_image_tag }}-dev-amd64
242286 podvm_image : ${{ needs.podvm_mkosi_amd64.outputs.qcow2_oras_image }}
243287 git_ref : ${{ inputs.git_ref }}
288+ peerpod_ctrl_image : ${{ inputs.registry }}/peerpod-ctrl:${{ inputs.caa_image_tag }}-amd64
289+ webhook_image : ${{ inputs.registry }}/peer-pods-webhook:${{ inputs.caa_image_tag }}
244290 secrets :
245291 REGISTRY_CREDENTIAL_ENCODED : ${{ secrets.REGISTRY_CREDENTIAL_ENCODED }}
246292
@@ -252,13 +298,15 @@ jobs:
252298 github.event_name == 'workflow_dispatch' ||
253299 contains(github.event.pull_request.labels.*.name, 'test_e2e_libvirt') ||
254300 contains(github.event.pull_request.labels.*.name, 'test_e2e_libvirt_s390x')
255- needs : [podvm_mkosi_s390x, libvirt_e2e_arch_prep, caa_image_s390x]
301+ needs : [podvm_mkosi_s390x, libvirt_e2e_arch_prep, caa_image_s390x, peerpod_ctrl_image_s390x, webhook_image ]
256302 uses : ./.github/workflows/e2e_libvirt.yaml
257303 with :
258304 runner : s390x-large
259305 caa_image : ${{ inputs.registry }}/cloud-api-adaptor:${{ inputs.caa_image_tag }}-dev-s390x
260306 podvm_image : ${{ needs.podvm_mkosi_s390x.outputs.qcow2_oras_image }}
261307 git_ref : ${{ inputs.git_ref }}
308+ peerpod_ctrl_image : ${{ inputs.registry }}/peerpod-ctrl:${{ inputs.caa_image_tag }}-s390x
309+ webhook_image : ${{ inputs.registry }}/peer-pods-webhook:${{ inputs.caa_image_tag }}
262310 secrets :
263311 REGISTRY_CREDENTIAL_ENCODED : ${{ secrets.REGISTRY_CREDENTIAL_ENCODED }}
264312
@@ -270,13 +318,15 @@ jobs:
270318 github.event_name == 'workflow_dispatch' ||
271319 contains(github.event.pull_request.labels.*.name, 'test_e2e_libvirt') ||
272320 contains(github.event.pull_request.labels.*.name, 'test_e2e_libvirt_amd64')
273- needs : [podvm_ubuntu_amd64, libvirt_e2e_arch_prep, caa_image_amd64]
321+ needs : [podvm_ubuntu_amd64, libvirt_e2e_arch_prep, caa_image_amd64, peerpod_ctrl_image_amd64, webhook_image ]
274322 uses : ./.github/workflows/e2e_libvirt.yaml
275323 with :
276324 runner : ubuntu-24.04
277325 caa_image : ${{ inputs.registry }}/cloud-api-adaptor:${{ inputs.caa_image_tag }}-amd64-dev
278326 podvm_image : ${{ needs.podvm_ubuntu_amd64.outputs.qcow2_oras_image }}
279327 git_ref : ${{ inputs.git_ref }}
328+ peerpod_ctrl_image : ${{ inputs.registry }}/peerpod-ctrl:${{ inputs.caa_image_tag }}-amd64
329+ webhook_image : ${{ inputs.registry }}/peer-pods-webhook:${{ inputs.caa_image_tag }}
280330 secrets :
281331 REGISTRY_CREDENTIAL_ENCODED : ${{ secrets.REGISTRY_CREDENTIAL_ENCODED }}
282332
@@ -288,13 +338,15 @@ jobs:
288338 github.event_name == 'workflow_dispatch' ||
289339 contains(github.event.pull_request.labels.*.name, 'test_e2e_libvirt') ||
290340 contains(github.event.pull_request.labels.*.name, 'test_e2e_libvirt_s390x')
291- needs : [podvm_ubuntu_s390x, libvirt_e2e_arch_prep, caa_image_s390x]
341+ needs : [podvm_ubuntu_s390x, libvirt_e2e_arch_prep, caa_image_s390x, peerpod_ctrl_image_s390x, webhook_image ]
292342 uses : ./.github/workflows/e2e_libvirt.yaml
293343 with :
294344 runner : s390x-large
295345 caa_image : ${{ inputs.registry }}/cloud-api-adaptor:${{ inputs.caa_image_tag }}-s390x-dev
296346 podvm_image : ${{ needs.podvm_ubuntu_s390x.outputs.qcow2_oras_image }}
297347 git_ref : ${{ inputs.git_ref }}
348+ peerpod_ctrl_image : ${{ inputs.registry }}/peerpod-ctrl:${{ inputs.caa_image_tag }}-s390x
349+ webhook_image : ${{ inputs.registry }}/peer-pods-webhook:${{ inputs.caa_image_tag }}
298350 secrets :
299351 REGISTRY_CREDENTIAL_ENCODED : ${{ secrets.REGISTRY_CREDENTIAL_ENCODED }}
300352
@@ -305,7 +357,7 @@ jobs:
305357 github.event_name == 'schedule' ||
306358 github.event_name == 'workflow_dispatch' ||
307359 contains(github.event.pull_request.labels.*.name, 'test_e2e_docker')
308- needs : [podvm_mkosi_amd64, caa_image_amd64]
360+ needs : [podvm_mkosi_amd64, caa_image_amd64, peerpod_ctrl_image_amd64, webhook_image ]
309361 strategy :
310362 fail-fast : false
311363 matrix :
@@ -323,6 +375,8 @@ jobs:
323375 container_runtime : ${{ matrix.container_runtime }}
324376 podvm_image : ${{ needs.podvm_mkosi_amd64.outputs.docker_oci_image }}
325377 git_ref : ${{ inputs.git_ref }}
378+ peerpod_ctrl_image : ${{ inputs.registry }}/peerpod-ctrl:${{ inputs.caa_image_tag }}-amd64
379+ webhook_image : ${{ inputs.registry }}/peer-pods-webhook:${{ inputs.caa_image_tag }}
326380 secrets :
327381 QUAY_PASSWORD : ${{ secrets.QUAY_PASSWORD }}
328382
@@ -333,9 +387,11 @@ jobs:
333387 github.event_name == 'schedule' ||
334388 github.event_name == 'workflow_dispatch' ||
335389 contains(github.event.pull_request.labels.*.name, 'test_e2e_byom')
336- needs : [podvm_ubuntu_amd64, caa_image_amd64]
390+ needs : [podvm_ubuntu_amd64, caa_image_amd64, peerpod_ctrl_image_amd64, webhook_image ]
337391 uses : ./.github/workflows/e2e_byom.yaml
338392 with :
339393 caa_image : ${{ inputs.registry }}/cloud-api-adaptor:${{ inputs.caa_image_tag }}-dev-amd64
340394 podvm_image : ${{ needs.podvm_ubuntu_amd64.outputs.byom_e2e_image }}
341395 git_ref : ${{ inputs.git_ref }}
396+ peerpod_ctrl_image : ${{ inputs.registry }}/peerpod-ctrl:${{ inputs.caa_image_tag }}-amd64
397+ webhook_image : ${{ inputs.registry }}/peer-pods-webhook:${{ inputs.caa_image_tag }}
0 commit comments