Mohammed Naser | e70062f | 2025-01-28 18:15:17 -0500 | [diff] [blame] | 1 | - name: Query Zuul API for image information |
| 2 | uri: |
| 3 | url: "{{ promote_depot_bake_api }}/builds?{{ promote_depot_bake_query }}" |
| 4 | register: promote_depot_bake_build |
| 5 | |
| 6 | - name: Parse build response |
| 7 | set_fact: |
| 8 | promote_depot_bake_build: "{{ promote_depot_bake_build.json[0] }}" |
| 9 | |
| 10 | - name: Promote Images |
| 11 | block: |
| 12 | - name: Log in to registry |
| 13 | no_log: true |
| 14 | ansible.builtin.command: >- |
| 15 | skopeo login {{ promote_depot_bake_registry.host }}{% if promote_depot_bake_registry.port != 443 %}:{{ promote_depot_bake_registry.port }}{% endif %} -u {{ promote_depot_bake_registry.username }} -p {{ promote_depot_bake_registry.password }} |
| 16 | register: result |
| 17 | until: result.rc == 0 |
| 18 | retries: 3 |
| 19 | delay: 30 |
| 20 | |
| 21 | - name: Copy image |
| 22 | ansible.builtin.command: >- |
Mohammed Naser | 8bd2ec0 | 2025-01-28 19:09:30 -0500 | [diff] [blame^] | 23 | skopeo --insecure-policy copy --all {{ zj_zuul_artifact.url }} docker://{{ zj_zuul_artifact.metadata.repository | regex_replace('/ci/', '/' + promote_depot_bake_namespace + '/', 1) }}:{{ zuul.branch | replace('stable/', '') }} |
Mohammed Naser | e70062f | 2025-01-28 18:15:17 -0500 | [diff] [blame] | 24 | loop: '{{ promote_depot_bake_build | json_query("artifacts[?metadata.type==''container_image'']") }}' |
| 25 | loop_control: |
| 26 | loop_var: zj_zuul_artifact |
| 27 | |
| 28 | always: |
| 29 | - name: Log out of registry |
| 30 | command: skopeo logout {{ promote_depot_bake_registry.host }}{% if promote_depot_bake_registry.port != 443 %}:{{ promote_depot_bake_registry.port }}{% endif %} |