Process siblings in upload-image push

Otherwise the context might be different and we might have to
rebuild, which would be silly. I mean, not like this isn't
silly already.

Change-Id: I3651390581ad1b4ae66ed336825f60284bd7c4ad
This commit is contained in:
Monty Taylor 2020-05-07 17:01:35 -05:00
parent 53118e79ea
commit bd1ee92542
2 changed files with 31 additions and 0 deletions

View File

@ -1,3 +1,6 @@
- name: Set up siblings
include_tasks: siblings.yaml
- name: Upload tag to dockerhub
# docker buildx doesn't have a separate push command, only the
# ability to push at the end of a build. We run build here with

View File

@ -0,0 +1,28 @@
- 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