zuul-jobs/roles/upload-docker-image/tasks/main.yaml
Albin Vass 0f55195335 Add tests for upload-docker-image
This also adds support for using a self hosted registry
with the docker roles.

Change-Id: I43caf46cfcc5d335ce14d72ad2abbef732b24645
2020-06-22 06:55:11 -07:00

32 lines
958 B
YAML

- name: Verify repository names
when: |
docker_credentials.repository is defined
and not zj_image.repository | regex_search(docker_credentials.repository)
loop: "{{ docker_images }}"
loop_control:
loop_var: zj_image
fail:
msg: "{{ zj_image.repository }} not permitted by {{ docker_credentials.repository }}"
- name: Log in to registry
command: "docker login -u {{ docker_credentials.username }} -p {{ docker_credentials.password }} {{ docker_registry }}"
no_log: true
- name: Determine if we need to use buildx
set_fact:
use_buildx: "{{ docker_images | selectattr('arch', 'defined') | list }}"
- name: Upload image to dockerhub normally
loop: "{{ docker_images }}"
loop_control:
loop_var: zj_image
include_tasks: push.yaml
when: not use_buildx
- name: Upload image to dockerhub using buildx
loop: "{{ docker_images }}"
loop_control:
loop_var: zj_image
include_tasks: buildx.yaml
when: use_buildx