Move build-test-packages as a part of undercloud setup

https://review.opendev.org/c/openstack/tripleo-quickstart/+/790701
removes tripleo-operator-ansible from TQE requires and will be get
installed from rpm as a part for undercloud deps.

In current setup, dlrn build the rpm packages just after undercloud
rpm packages installation but tripleo-operator-ansible is used before
that so that dlrn needs to build the changes early before undercloud
deps installation so that we can consume the changes in the deployment
via updated rpm installed from gating repo.

In order to do that, it moves build-test-packages roles task after repo
setup to install latest packages.

It also removes tripleo-operator-ansible from cloning on nodepool.

Testing different scenarios:
1. https://review.opendev.org/c/openstack/tripleo-heat-templates/+/801296
2. https://review.rdoproject.org/r/c/testproject/+/34676

Patch for moving remove_tags to skip_tag_list:

Depends-On: https://review.opendev.org/c/openstack/tripleo-ci/+/803919

Signed-off-by: Chandan Kumar (raukadah) <chkumar@redhat.com>
Change-Id: I4f9f3f13346761d3dec35844234cb6ae03ad4107
This commit is contained in:
Chandan Kumar (raukadah) 2021-05-12 14:53:38 +05:30 committed by chandan kumar
parent 19e8bdff5f
commit 4c225d6465
8 changed files with 58 additions and 97 deletions

View File

@ -78,6 +78,33 @@
roles:
- tripleo-inventory
- name: Set to_build on undercloud
hosts: undercloud
gather_facts: true
tasks:
- name: set_fact for to_build on undercloud
set_fact:
to_build: "{{ hostvars[groups['virthost'][0]]['to_build'] }}"
cacheable: true
- name: set_fact for image_cache_dir on undercloud
set_fact:
image_cache_dir: "{{ working_dir }}/images-cache"
cacheable: true
- name: set_fact for libguestfs_mode on undercloud
set_fact:
libguestfs_mode: false
cacheable: true
# Always build images even if running a periodic-* named job
# in a check pipeline for testing
- name: Always build images in periodic
set_fact:
to_build: true
cacheable: true
when: "'periodic' in zuul.job"
- name: Setup the undercloud
hosts: undercloud
gather_facts: true
@ -114,54 +141,6 @@
roles:
- baremetal-prep-virthost
- name: Set to_build on undercloud
hosts: undercloud
gather_facts: true
tasks:
- name: set_fact for to_build on undercloud
set_fact:
to_build: "{{ hostvars[groups['virthost'][0]]['to_build'] }}"
cacheable: true
- name: set_fact for image_cache_dir on undercloud
set_fact:
image_cache_dir: "{{ working_dir }}/images-cache"
cacheable: true
- name: set_fact for libguestfs_mode on undercloud
set_fact:
libguestfs_mode: false
cacheable: true
- name: Run DLRN gate role and install repo
hosts: undercloud
gather_facts: true
vars:
artg_compressed_gating_repo: "/home/{{ undercloud_user }}/gating_repo.tar.gz"
artg_repos_dir: "{{ repo_clone_dir|default('/opt/stack/new') }}"
ib_create_web_repo: "{{ hostvars[groups['virthost'][0]]['to_build'] }}"
tasks:
# Always build images even if running a periodic-* named job
# in a check pipeline for testing
- name: Always build images in periodic
set_fact:
to_build: true
cacheable: true
when: "'periodic' in zuul.job"
- include_role:
name: build-test-packages
vars:
artg_compressed_gating_repo: "/home/{{ undercloud_user }}/gating_repo.tar.gz"
artg_repos_dir: "{{ repo_clone_dir|default('/opt/stack/new') }}"
when: build_test_packages|default(false)|bool
- include_role:
name: install-built-repo
vars:
ib_create_web_repo: "{{ to_build|bool }}"
when: compressed_gating_repo is defined
- name: Get images for quickstart
hosts: undercloud
gather_facts: true

View File

@ -36,14 +36,4 @@
- standalone
- undercloud
- name: Run DLRN gate role and install repo
hosts: undercloud
vars:
artg_compressed_gating_repo: "${HOME}/gating_repo.tar.gz"
roles:
- build-test-packages
- {role: install-built-repo, when: compressed_gating_repo is defined}
tags:
- build
- import_playbook: content-provider-containers.yml

View File

@ -24,16 +24,6 @@
tags:
- standalone
- name: Run DLRN gate role and install repo
hosts: undercloud
vars:
artg_compressed_gating_repo: "${HOME}/gating_repo.tar.gz"
roles:
- build-test-packages
- {role: install-built-repo, when: compressed_gating_repo is defined}
tags:
- build
- name: Download amphora image for octavia
hosts: undercloud
gather_facts: false

View File

@ -41,16 +41,6 @@
tags:
- undercloud-setup
- name: Run DLRN gate role and install repo
hosts: undercloud
vars:
artg_compressed_gating_repo: "${HOME}/gating_repo.tar.gz"
roles:
- build-test-packages
- {role: install-built-repo, when: compressed_gating_repo is defined}
tags:
- build
- name: Install built packages on subnodes
hosts: overcloud
vars:

View File

@ -11,6 +11,12 @@
roles:
- tripleo-inventory
# Small playbook with logic for when to build images or not.
# The logic there can be completely overridden by setting the
# to_build variable.
- name: When to build images or not
import_playbook: to-build-or-not-to-build.yml
- name: Setup the undercloud
hosts: undercloud
gather_facts: true
@ -40,23 +46,6 @@
roles:
- tripleo-inventory
# Small playbook with logic for when to build images or not.
# The logic there can be completely overridden by setting the
# to_build variable.
- include: to-build-or-not-to-build.yml
- name: Run DLRN gate role and install repo
hosts: undercloud
vars:
artg_compressed_gating_repo: "${HOME}/gating_repo.tar.gz"
artg_repos_dir: "{{ repo_clone_dir|default('/opt/stack/new') }}"
ib_create_web_repo: "{{ to_build|bool }}"
roles:
- {role: build-test-packages, when: build_test_packages|default(false)|bool}
- {role: install-built-repo, when: compressed_gating_repo is defined}
tags:
- build
- name: Get images for quickstart
hosts: undercloud
gather_facts: false

View File

@ -14,7 +14,6 @@ repos:
- https://opendev.org/openstack/openstack-ansible-os_tempest
- https://opendev.org/openstack/ansible-config_template
- https://opendev.org/openstack/ansible-role-python_venv_build
- https://opendev.org/openstack/tripleo-operator-ansible
- https://opendev.org/openstack/ansible-collections-openstack
zuul_changes: "{{ lookup('env', 'ZUUL_CHANGES') }}"
subnode_swap_size: 8388608 # 8GB

View File

@ -42,7 +42,6 @@
- "ansible-role-python_venv_build"
- "openstack-ansible-os_tempest"
- "tripleo-ha-utils"
- "tripleo-operator-ansible"
- "ansible-collections-openstack"
- name: Create /opt/cache/files directory

View File

@ -16,6 +16,31 @@
- name: Run atop for monitoring
include: atop.yml
# to_build is enabled via featureset files or featureset overrides
- name: Set variables for gating repos for ovb jobs
set_fact:
artg_repos_dir: "{{ repo_clone_dir|default('/opt/stack/new') }}"
ib_create_web_repo: "{{ to_build|default(false)|bool }}"
cacheable: true
when: to_build|default(false)|bool
tags:
- build
- name: Run DLRN gate role
vars:
artg_compressed_gating_repo: "${HOME}/gating_repo.tar.gz"
include_role:
name: build-test-packages
tags:
- build
- name: Install gated repo
when: compressed_gating_repo is defined
include_role:
name: install-built-repo
tags:
- build
- name: Including package_installs tasks
include: package_installs.yml
when: package_installs|bool