From 79f597e183e1f5b6be570653b5895c35f7f8a7d8 Mon Sep 17 00:00:00 2001 From: Dmitry Tantsur Date: Mon, 20 Jan 2020 15:19:32 +0100 Subject: [PATCH] Start installing DIB from Zuul-cloned sources in the CI We need to be able to pick up fixes quicker than now and to use depends-on with DIB changes. This change achieves it. Change-Id: Ic6ab011370b08d06a5c914736949ead2cb498e56 --- .zuul.yaml | 7 ------- roles/ipa-build-dib-image/defaults/main.yaml | 1 + roles/ipa-build-dib-image/tasks/install.yaml | 16 ++++++++++++++++ 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/.zuul.yaml b/.zuul.yaml index 84899fb..3151e9d 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -23,7 +23,6 @@ name: ironic-python-agent-build-image-dib-centos7 parent: ironic-python-agent-build-image-base required-projects: - # NOTE(dtantsur): used for bindep only - openstack/diskimage-builder vars: image_type: 'dib' @@ -33,7 +32,6 @@ name: ironic-python-agent-build-image-dib-centos8 parent: ironic-python-agent-build-image-base required-projects: - # NOTE(dtantsur): used for bindep only - openstack/diskimage-builder vars: image_type: 'dib' @@ -72,7 +70,6 @@ name: ironic-python-agent-check-image-dib-centos7 parent: ironic-python-agent-check-image-base required-projects: - # NOTE(dtantsur): used for bindep only - openstack/diskimage-builder vars: image_type: 'dib' @@ -82,7 +79,6 @@ name: ironic-python-agent-check-image-dib-centos8 parent: ironic-python-agent-check-image-base required-projects: - # NOTE(dtantsur): used for bindep only - openstack/diskimage-builder vars: image_type: 'dib' @@ -93,7 +89,6 @@ name: ironic-python-agent-check-image-dib-fedora parent: ironic-python-agent-check-image-base required-projects: - # NOTE(dtantsur): used for bindep only - openstack/diskimage-builder vars: image_type: 'dib' @@ -103,7 +98,6 @@ name: ironic-python-agent-check-image-dib-debian parent: ironic-python-agent-check-image-base required-projects: - # NOTE(dtantsur): used for bindep only - openstack/diskimage-builder vars: image_type: 'dib' @@ -113,7 +107,6 @@ name: ironic-python-agent-check-image-dib-ubuntu parent: ironic-python-agent-check-image-base required-projects: - # NOTE(dtantsur): used for bindep only - openstack/diskimage-builder vars: image_type: 'dib' diff --git a/roles/ipa-build-dib-image/defaults/main.yaml b/roles/ipa-build-dib-image/defaults/main.yaml index ff495bb..8783d77 100644 --- a/roles/ipa-build-dib-image/defaults/main.yaml +++ b/roles/ipa-build-dib-image/defaults/main.yaml @@ -7,3 +7,4 @@ requirements_path: '{{ ansible_user_dir }}/src/opendev.org/openstack/requirement ipa_raw_dir: '{{ ansible_user_dir }}/src/opendev.org/openstack/ironic-python-agent/UPLOAD_RAW' ipa_tar_dir: '{{ ansible_user_dir }}/src/opendev.org/openstack/ironic-python-agent/UPLOAD_TAR' dib_extra_args: +dib_from_source: true diff --git a/roles/ipa-build-dib-image/tasks/install.yaml b/roles/ipa-build-dib-image/tasks/install.yaml index 8a9694f..d842bdf 100644 --- a/roles/ipa-build-dib-image/tasks/install.yaml +++ b/roles/ipa-build-dib-image/tasks/install.yaml @@ -9,3 +9,19 @@ name: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/ironic-python-agent-builder'].src_dir }}" extra_args: -c "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/requirements'].src_dir }}/upper-constraints.txt" become: true + +# NOTE(dtantsur): installing requirements separately since DIB itself is in +# upper-constraints and source installations cannot be constrained. + +- name: Install requirements for DIB (if installing from source) + pip: + requirements: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/diskimage-builder'].src_dir }}/requirements.txt" + extra_args: -c "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/requirements'].src_dir }}/upper-constraints.txt" + become: true + when: dib_from_source + +- name: Install DIB (if installing from source) + pip: + name: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/diskimage-builder'].src_dir }}" + become: true + when: dib_from_source