undercloud-setup rols is used by ipa-multinode role while setting up ipaserver undercloud. Not all the tasks of undercloud-setup is used there and recently we moved the build-test-packages as a part of undercloud-setup and added condition[1] specific to ipa for skipping build-test-packages. Which leads to skip fs039 (ovb based IPA deployment) Run DLRN gate role tasks which calls build-test-packages role. Here is the example from the job: https://review.rdoproject.org/zuul/builds?job_name=periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp_1supp-featureset039-master ``` 2021-09-02 01:48:42.859718 | primary | TASK [Run DLRN gate role] ****************************************************** 2021-09-02 01:48:42.859779 | primary | Thursday 02 September 2021 01:48:42 +0000 (0:00:00.122) 0:01:08.801 **** 2021-09-02 01:48:42.955410 | primary | skipping: [undercloud] 2021-09-02 01:48:42.970685 | primary | 2021-09-02 01:48:42.970728 | primary | TASK [Install gated repo] ****************************************************** 2021-09-02 01:48:42.971064 | primary | Thursday 02 September 2021 01:48:42 +0000 (0:00:00.111) 0:01:08.912 **** 2021-09-02 01:48:43.086896 | primary | skipping: [undercloud] ``` In order to avoid that, we are reusing specific tasks of undercloud-setup in ipa-multinode role to fix the issue. [1].https://review.opendev.org/c/openstack/tripleo-quickstart-extras/+/804971 Testproject: https://review.rdoproject.org/r/c/testproject/+/35104 Signed-off-by: Chandan Kumar (raukadah) <chkumar@redhat.com> Change-Id: Ifba29f9045d4e7e0d6b5ef1446e4ce4e28b44cad
undercloud-setup
This role encompasses the setup required when using a standard CentOS/RHEL undercloud host in substitution for a 'ready-made' undercloud image. If an undercloud machine or node is launched a 'vanilla' CentOS and RHEL image, there are a number of steps that need to be run to get the undercloud to the point where TripleO Quickstart can be run.
Some steps are generic to all undercloud nodes or machines and some steps are specific to the environment in which the undercloud is launched.
Steps to download or build overcloud images are included in the overcloud-images role. Steps to prepare the undercloud repos are included in the repo-setup role.
Requirements
This role should not be included in a generic virtual TripleO Quickstart playbook. Therefore including environment-specific code (which is switch cased to run only on the desired environment) is acceptable. It will not add complexity to the default TripleO Quickstart workflow.
Role Variables
-
local_working_dir: <"{{ lookup('env', 'HOME') }}/.quickstart"> -- Directory for quickstart.sh script
-
non_root_user: -- The non-root user operating on the virthost
-
undercloud_user: -- The non-root user operating on the undercloud
-
undercloud_key: <"{{ local_working_dir }}/id_rsa_undercloud"> -- Key to access the undercloud node/machine
-
non_root_user_setup: -- Switch to setup a non-root user
-
vxlan_networking: -- Switch to setup the VXLAN networking from devstack-gate (for multinode)
-
vxlan_networking_addr_prefix: -- The IPv4 subnet that will be used for the overcloud bridge between multinode hosts.
-
vxlan_networking_addr_netmask: -- The CIDR notation of the subnet mask that will be used for the overcloud bridge.
-
undercloud_hostname: -- Optionally, the hostname to set on the host.
-
hostname_correction: -- Switch to set the transient hostname to the static hostname (TripleO requirement)
-
step_set_undercloud_hostname: -- Switch to set the undercloud hostname explicitly
-
package_installs: -- Switch to install required OpenStack packages for an undercloud (requires repos to already be setup)
-
custom_nameserver: <['8.8.8.8']> -- A list, added to /etc/resolv.conf for access in custom environments
-
ovb_setup_connectivity: -- Setup external network, custom nameserver and set MTUS valuse for OVB environments
-
undercloud_ara: -- Install ara on undercloud
-
undercloud_ansible_cfg
: <'true'> -- Configure ara on the host -
undercloud_ara_version
: <'0.15.0'> -- Default version of ara to install Dependencies
This playbook has no dependencies. If a provisioning step is not included in this role, it is assumed that the node/machine to set up already exists and is accessible.
Example Playbook
- Sample playbook to call the role
- name: Set up CentOS undercloud node to run TripleO Quickstart
hosts: undercloud
gather_facts: false
roles:
- undercloud-setup
License
Apache-2.0
Author Information
RDO-CI Team