63bd307e63
Docker has experimental support for building multi-arch container images with a buildx command. Currently it only supports pushing to a registry after running and the images don't end up in the local docker images list. To work around that, push to the buildset registry then pull back. This is the inverse of the normal case where we build, then retag, then push. The end result should be the same. Change-Id: I6a4c4f9e262add909d2d5c2efa33ec69b9d9364a
29 lines
963 B
YAML
29 lines
963 B
YAML
- name: Check sibling directory
|
|
stat:
|
|
path: '{{ zuul_work_dir }}/{{ zj_image.context }}/.zuul-siblings'
|
|
register: _dot_zuul_siblings
|
|
|
|
# This should have been cleaned up; multiple builds may specify
|
|
# different siblings to include so we need to start fresh.
|
|
- name: Check for clean build
|
|
assert:
|
|
that: not _dot_zuul_siblings.stat.exists
|
|
|
|
- name: Create sibling source directory
|
|
file:
|
|
path: '{{ zuul_work_dir }}/{{ zj_image.context }}/.zuul-siblings'
|
|
state: directory
|
|
mode: 0755
|
|
when: zj_image.siblings is defined
|
|
|
|
# NOTE(ianw): could use recursive copy: with remote_src, but it's
|
|
# Ansible 2.8 only. take the simple approach.
|
|
- name: Copy sibling source directories
|
|
command:
|
|
cmd: 'cp --parents -r {{ zj_sibling }} {{ ansible_user_dir }}/{{ zuul_work_dir }}/{{ zj_image.context }}/.zuul-siblings'
|
|
chdir: '~/src'
|
|
loop: '{{ zj_image.siblings }}'
|
|
loop_control:
|
|
loop_var: zj_sibling
|
|
when: zj_image.siblings is defined
|