Use new collections in Kayobe

Refactored the code to switch the distribution source of the roles
to new collections for the roles that have already been migrated into
collections.

Updated:

 - requirements
 - role invocations
 - documentation
 - release notes
 - minor whitespace fixes

Change-Id: I8dbb88aa2061b3afcab07caeb30f45b3a5c939af
This commit is contained in:
Jakub Darmach 2024-03-01 14:04:28 +01:00 committed by Matt Crees
parent 6f59b49ab8
commit dbcc3f4ae3
25 changed files with 83 additions and 78 deletions

View File

@ -12,7 +12,7 @@
vars:
venv: "{{ virtualenv_path }}/openstacksdk"
roles:
- role: stackhpc.os_openstacksdk
- role: stackhpc.openstack.os_openstacksdk
os_openstacksdk_venv: "{{ venv }}"
os_openstacksdk_install_epel: "{{ dnf_install_epel }}"
os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}"

View File

@ -12,7 +12,7 @@
vars:
venv: "{{ virtualenv_path }}/openstacksdk"
roles:
- role: stackhpc.os_openstacksdk
- role: stackhpc.openstack.os_openstacksdk
os_openstacksdk_venv: "{{ venv }}"
os_openstacksdk_install_epel: "{{ dnf_install_epel }}"
os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}"

View File

@ -12,7 +12,7 @@
vars:
venv: "{{ virtualenv_path }}/openstacksdk"
roles:
- role: stackhpc.os_openstacksdk
- role: stackhpc.openstack.os_openstacksdk
os_openstacksdk_venv: "{{ venv }}"
os_openstacksdk_install_epel: "{{ dnf_install_epel }}"
os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}"

View File

@ -3,7 +3,7 @@
# Only required to run on a single host.
hosts: controllers[0]
roles:
- role: stackhpc.os-networks
- role: stackhpc.openstack.os_networks
os_openstacksdk_install_epel: "{{ dnf_install_epel }}"
os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}"
os_networks_venv: "{{ virtualenv_path }}/openstacksdk"

View File

@ -62,7 +62,8 @@ ipa_build_dib_env: >
combine(ipa_build_dib_env_extra) }}
# List of default git repositories containing Diskimage Builder (DIB) elements.
# See stackhpc.os-images role for usage. Default is one item for IPA builder.
# See stackhpc.openstack.os_images role for usage.
# Default is one item for IPA builder.
ipa_build_dib_git_elements_default:
- repo: "{{ ipa_builder_source_url }}"
local: "{{ source_checkout_path }}/ironic-python-agent-builder"
@ -70,11 +71,11 @@ ipa_build_dib_git_elements_default:
elements_path: "dib"
# List of additional git repositories containing Diskimage Builder (DIB)
# elements. See stackhpc.os-images role for usage. Default is empty.
# elements. See stackhpc.openstack.os_images role for usage. Default is empty.
ipa_build_dib_git_elements_extra: []
# List of git repositories containing Diskimage Builder (DIB) elements. See
# stackhpc.os-images role for usage. Default is a combination of
# stackhpc.openstack.os_images role for usage. Default is a combination of
# ipa_build_dib_git_elements_default and ipa_build_dib_git_elements_extra.
ipa_build_dib_git_elements: >-
{{ ipa_build_dib_git_elements_default + ipa_build_dib_git_elements_extra }}

View File

@ -14,9 +14,10 @@ overcloud_dib_build_host_images: true
overcloud_dib_host_packages_extra: []
# List of overcloud host disk images to build. Each element is a dict defining
# an image in a format accepted by the stackhpc.os-images role. Default is to
# build an image named "deployment_image" configured with the overcloud_dib_*
# variables defined below: {"name": "deployment_image", "elements": "{{
# an image in a format accepted by the stackhpc.openstack.os_images role.
# Default is to build an image named "deployment_image"
# configured with the overcloud_dib_* variables defined below:
# {"name": "deployment_image", "elements": "{{
# overcloud_dib_elements }}", "env": "{{ overcloud_dib_env_vars }}",
# "packages": "{{ overcloud_dib_packages }}"}.
overcloud_dib_host_images:
@ -70,15 +71,15 @@ overcloud_dib_env_vars: "{{ overcloud_dib_env_vars_default | combine(overcloud_d
overcloud_dib_packages: []
# List of default git repositories containing Diskimage Builder (DIB) elements.
# See stackhpc.os-images role for usage. Default is empty.
# See stackhpc.openstack.os_images role for usage. Default is empty.
overcloud_dib_git_elements_default: []
# List of additional git repositories containing Diskimage Builder (DIB)
# elements. See stackhpc.os-images role for usage. Default is empty.
# elements. See stackhpc.openstack.os_images role for usage. Default is empty.
overcloud_dib_git_elements_extra: []
# List of git repositories containing Diskimage Builder (DIB) elements. See
# stackhpc.os-images role for usage. Default is a combination of
# stackhpc.openstack.os_images role for usage. Default is a combination of
# overcloud_dib_git_elements_default and overcloud_dib_git_elements_extra.
overcloud_dib_git_elements: >-
{{ overcloud_dib_git_elements_default + overcloud_dib_git_elements_extra }}

View File

@ -5,7 +5,7 @@
# Authentication configuration.
# For DellOS switches, this defines a 'provider' argument to the
# dell_powerconnect_switch role.
# stackhpc.network.dell_powerconnect_switch role.
switch_dell_powerconnect_provider:
host: "{{ ansible_host|default(inventory_hostname) }}"
username: "{{ ansible_user }}"

View File

@ -5,7 +5,7 @@
# Authentication configuration.
# For Mellanox switches, this defines a 'provider' argument to the
# mellanox-switch role.
# stackhpc.network.mellanox_switch role.
switch_mellanox_provider:
host: "{{ ansible_host|default(inventory_hostname) }}"
username: "{{ ansible_user }}"

View File

@ -20,7 +20,7 @@
- name: Ensure overcloud host disk images are built
include_role:
name: stackhpc.os-images
name: stackhpc.openstack.os_images
vars:
os_images_package_dependencies_extra: "{{ overcloud_dib_host_packages_extra | select | list }}"
os_images_venv: "{{ virtualenv_path }}/overcloud-host-image-dib"

View File

@ -33,7 +33,7 @@
- name: Ensure the openstack client is installed
include_role:
name: stackhpc.os-openstackclient
name: stackhpc.openstack.os_openstackclient
vars:
os_openstackclient_venv: "{{ venv }}"
os_openstackclient_install_epel: "{{ dnf_install_epel }}"

View File

@ -26,7 +26,7 @@
- block:
- name: Ensure Ironic Python Agent images are built
include_role:
name: stackhpc.os-images
name: stackhpc.openstack.os_images
vars:
os_images_package_dependencies_extra: "{{ ipa_build_dib_host_packages_extra | select | list }}"
os_images_venv: "{{ virtualenv_path }}/ipa-build-dib"

View File

@ -130,7 +130,7 @@
roles:
- role: ssh-known-host
- role: stackhpc.dell-powerconnect-switch
- role: stackhpc.network.dell_powerconnect_switch
dell_powerconnect_switch_type: "{{ switch_type }}"
dell_powerconnect_switch_provider: "{{ switch_dell_powerconnect_provider }}"
dell_powerconnect_switch_config: "{{ switch_config }}"
@ -155,7 +155,7 @@
roles:
- role: ssh-known-host
- role: stackhpc.mellanox-switch
- role: stackhpc.network.mellanox_switch
mellanox_switch_type: "{{ switch_type }}"
mellanox_switch_provider: "{{ switch_mellanox_provider }}"
mellanox_switch_config: "{{ switch_config }}"

View File

@ -63,7 +63,7 @@
- config-validation
- import_role:
name: stackhpc.os-networks
name: stackhpc.openstack.os_networks
vars:
os_openstacksdk_install_epel: "{{ dnf_install_epel }}"
os_openstacksdk_state: "latest"

View File

@ -1,8 +1,8 @@
---
dependencies:
- role: stackhpc.os_openstacksdk
- role: stackhpc.openstack.os_openstacksdk
os_openstacksdk_venv: "{{ ipa_images_venv }}"
os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}"
- role: stackhpc.os-openstackclient
- role: stackhpc.openstack.os_openstackclient
os_openstackclient_venv: "{{ ipa_images_venv }}"
os_openstackclient_upper_constraints_file: "{{ ipa_images_upper_constraints_file }}"

View File

@ -1,5 +1,5 @@
---
dependencies:
- role: stackhpc.os_openstacksdk
- role: stackhpc.openstack.os_openstacksdk
os_openstacksdk_venv: "{{ ironic_inspector_venv }}"
os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}"
os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}"

View File

@ -30,7 +30,7 @@
- name: Configure systemd-networkd
import_role:
name: stackhpc.systemd_networkd
name: stackhpc.linux.systemd_networkd
vars:
systemd_networkd_link: "{{ network_interfaces | networkd_links }}"
systemd_networkd_netdev: "{{ network_interfaces | networkd_netdevs }}"

View File

@ -16,7 +16,7 @@
- block:
- name: Ensure Ironic Python Agent images are built
include_role:
name: stackhpc.os-images
name: stackhpc.openstack.os_images
vars:
os_images_package_dependencies_extra: "{{ ipa_build_dib_host_packages_extra | select | list }}"
os_images_venv: "{{ virtualenv_path }}/ipa-build-dib"

View File

@ -80,18 +80,18 @@ image build``.
``ipa_build_dib_env_default`` and ``ipa_build_dib_env_extra``.
``ipa_build_dib_git_elements_default``
List of default git repositories containing Diskimage Builder (DIB)
elements. See `stackhpc.os-images
<https://galaxy.ansible.com/stackhpc/os-images>`__ role for usage. Default
is one item for IPA builder.
elements. See `stackhpc.openstack.os_images
<https://galaxy.ansible.com/ui/repo/published/stackhpc/openstack/content/role/os_images/>`__
role for usage. Default is one item for IPA builder.
``ipa_build_dib_git_elements_extra``
List of additional git repositories containing Diskimage Builder (DIB)
elements. See `stackhpc.os-images
<https://galaxy.ansible.com/stackhpc/os-images>`__ role for usage. Default
is none.
elements. See `stackhpc.openstack.os_images
<https://galaxy.ansible.com/ui/repo/published/stackhpc/openstack/content/role/os_images/>`__
role for usage. Default is none.
``ipa_build_dib_git_elements``
List of git repositories containing Diskimage Builder (DIB) elements. See
`stackhpc.os-images <https://galaxy.ansible.com/stackhpc/os-images>`__ role
for usage. Default is combination of ``ipa_build_dib_git_elements_default``
`stackhpc.openstack.os_images <https://galaxy.ansible.com/ui/repo/published/stackhpc/openstack/content/role/os_images/>`__
role for usage. Default is combination of ``ipa_build_dib_git_elements_default``
and ``ipa_build_dib_git_elements_extra``.
``ipa_build_dib_packages``
List of DIB packages to install. Default is none.

View File

@ -44,11 +44,11 @@ the configuration drive built by Bifrost during provisioning.
List of additional host packages to install. Default is an empty list.
``overcloud_dib_host_images``
List of overcloud host disk images to build. Each element is a dict
defining an image in a format accepted by the `stackhpc.os-images
<https://galaxy.ansible.com/stackhpc/os-images>`__ role. Default is to
build an image named ``deployment_image`` configured with the
``overcloud_dib_*`` variables defined below: ``{"name": "deployment_image",
"elements": "{{ overcloud_dib_elements }}", "env": "{{
defining an image in a format accepted by the `stackhpc.openstack.os_images
<https://galaxy.ansible.com/ui/repo/published/stackhpc/openstack/content/role/os_images/>`__
role. Default is to build an image named ``deployment_image`` configured
with the ``overcloud_dib_*`` variables defined below: ``{"name":
"deployment_image", "elements": "{{ overcloud_dib_elements }}", "env": "{{
overcloud_dib_env_vars }}", "packages": "{{ overcloud_dib_packages }}"}``.
``overcloud_dib_os_element``
DIB base OS element. Default is ``{{ 'rocky-container' if os_distribution == 'rocky' else os_distribution }}``.
@ -80,13 +80,15 @@ the configuration drive built by Bifrost during provisioning.
List of DIB packages to install. Default is to install no extra packages.
``overcloud_dib_git_elements_default``
List of default git repositories containing Diskimage Builder (DIB)
elements. See stackhpc.os-images role for usage. Default is empty.
elements. See stackhpc.openstack.os_images role for usage.
Default is empty.
``overcloud_dib_git_elements_extra``
List of additional git repositories containing Diskimage Builder (DIB)
elements. See stackhpc.os-images role for usage. Default is empty.
elements. See stackhpc.openstack.os_imagesimages role for usage.
Default is empty.
``overcloud_dib_git_elements``
List of git repositories containing Diskimage Builder (DIB) elements. See
stackhpc.os-images role for usage. Default is a combination of
stackhpc.openstack.os_images role for usage. Default is a combination of
``overcloud_dib_git_elements_default`` and
``overcloud_dib_git_elements_extra``.
``overcloud_dib_upper_constraints_file``
@ -211,10 +213,11 @@ Example: Building multiple images
It can be necessary to build multiple images to support the various types of
hardware present in a deployment or the different functions performed by
overcloud hosts. This can be configured with the ``overcloud_dib_host_images``
variable, using a format accepted by the `stackhpc.os-images
<https://galaxy.ansible.com/stackhpc/os-images>`__ role. Note that image names
should not include the file extension. For example, to build a second image
with a development user account and the ``biosdevname`` package:
variable, using a format accepted by the `stackhpc.openstack.os_images
<https://galaxy.ansible.com/ui/repo/published/stackhpc/openstack/content/role/os_images/>`__
role. Note that image names should not include the file extension. For example,
to build a second image with a development user account and the ``biosdevname``
package:
.. code-block:: yaml
:caption: ``dib.yml``

View File

@ -250,7 +250,7 @@ Dell PowerConnect
-----------------
Configuration for these devices is applied using the
``stackhpc.dell-powerconnect-switch`` Ansible role. The role uses the
``stackhpc.network.dell_powerconnect_switch`` Ansible role. The role uses the
``expect`` Ansible module to automate interaction with the switch CLI via SSH.
``switch_type`` should be set to ``dell-powerconnect``.
@ -299,8 +299,8 @@ Mellanox MLNX OS
----------------
Configuration for these devices is applied using the
``stackhpc.mellanox-switch`` Ansible role. The role uses the ``expect``
Ansible module to automate interaction with the switch CLI via SSH.
``stackhpc.network.mellanox_switch`` Ansible role. The role uses the
``expect`` Ansible module to automate interaction with the switch CLI via SSH.
``switch_type`` should be set to ``mellanox``.

View File

@ -50,15 +50,16 @@
#ipa_build_dib_env:
# List of default git repositories containing Diskimage Builder (DIB) elements.
# See stackhpc.os-images role for usage. Default is one item for IPA builder.
# See stackhpc.openstack.os_images role for usage.
# Default is one item for IPA builder.
#ipa_build_dib_git_elements_default:
# List of additional git repositories containing Diskimage Builder (DIB)
# elements. See stackhpc.os-images role for usage. Default is empty.
# elements. See stackhpc.openstack.os_images role for usage. Default is empty.
#ipa_build_dib_git_elements_extra:
# List of git repositories containing Diskimage Builder (DIB) elements. See
# stackhpc.os-images role for usage. Default is a combination of
# stackhpc.openstack.os_images role for usage. Default is a combination of
# ipa_build_dib_git_elements_default and ipa_build_dib_git_elements_extra.
#ipa_build_dib_git_elements:

View File

@ -14,9 +14,10 @@
#overcloud_dib_host_packages_extra:
# List of overcloud host disk images to build. Each element is a dict defining
# an image in a format accepted by the stackhpc.os-images role. Default is to
# build an image named "deployment_image" configured with the overcloud_dib_*
# variables defined below: {"name": "deployment_image", "elements": "{{
# an image in a format accepted by the stackhpc.openstack.os_images role.
# Default is to build an image named "deployment_image" configured with the
# overcloud_dib_* variables defined below:
# {"name": "deployment_image", "elements": "{{
# overcloud_dib_elements }}", "env": "{{ overcloud_dib_env_vars }}",
# "packages": "{{ overcloud_dib_packages }}"}.
#overcloud_dib_host_images:
@ -57,15 +58,15 @@
#overcloud_dib_packages:
# List of default git repositories containing Diskimage Builder (DIB) elements.
# See stackhpc.os-images role for usage. Default is empty.
# See stackhpc.openstack.os_images role for usage. Default is empty.
#overcloud_dib_git_elements_default:
# List of additional git repositories containing Diskimage Builder (DIB)
# elements. See stackhpc.os-images role for usage. Default is empty.
# elements. See stackhpc.openstack.os_images role for usage. Default is empty.
#overcloud_dib_git_elements_extra:
# List of git repositories containing Diskimage Builder (DIB) elements. See
# stackhpc.os-images role for usage. Default is a combination of
# stackhpc.openstack.os_images role for usage. Default is a combination of
# overcloud_dib_git_elements_default and overcloud_dib_git_elements_extra.
#overcloud_dib_git_elements:

View File

@ -15,7 +15,7 @@
"""
This module provides Ansible filters that generate configuration for
systemd-networkd NetDevs, links and networks. The results are compatible with
the stackhpc.ansible_role_systemd_networkd role.
the stackhpc.linux.systemd_networkd role.
Systemd-networkd uses INI-style configuration files, with the provision for
multiple sections with the same name, and multiple options with the same name
@ -504,7 +504,7 @@ def networkd_netdevs(context, names, inventory_hostname=None):
"""Return a dict representation of networkd NetDev configuration.
The format is compatible with the systemd_networkd_netdev variable in the
stackhpc.ansible_role_systemd_networkd role.
stackhpc.linux.systemd_networkd role.
:param context: a Jinja2 Context object.
:param names: List of names of networks.
@ -554,7 +554,7 @@ def networkd_links(context, names, inventory_hostname=None):
"""Return a dict representation of networkd link configuration.
The format is compatible with the systemd_networkd_link variable in the
stackhpc.ansible_role_systemd_networkd role.
stackhpc.linux.systemd_networkd role.
:param context: a Jinja2 Context object.
:param names: List of names of networks.
@ -570,7 +570,7 @@ def networkd_networks(context, names, inventory_hostname=None):
"""Return a dict representation of networkd network configuration.
The format is compatible with the systemd_networkd_network variable in the
stackhpc.ansible_role_systemd_networkd role.
stackhpc.linux.systemd_networkd role.
:param context: a Jinja2 Context object.
:param names: List of names of networks.

View File

@ -0,0 +1,8 @@
---
upgrade:
- |
Bumps ``stackhpc.linux`` collection to 1.2.0 to include new roles. Adds
``stackhpc.network`` and ``stackhpc.openstack`` collections to
requirements. Refactors invocation of the roles moved into collections
mentioned above, and updates the documentation - role names and outdated
Ansible Galaxy documentation links.

View File

@ -8,13 +8,15 @@ collections:
- name: openstack.cloud
version: '<3'
- name: stackhpc.linux
version: 1.1.0
version: 1.2.1
- name: stackhpc.network
version: 1.0.0
- name: stackhpc.openstack
version: 0.1.0
roles:
- src: ahuffman.resolv
version: 1.3.1
- src: stackhpc.systemd_networkd
version: v1.0.5
- src: giovtorres.tuned
version: 1.1.0
- src: jriguera.configdrive
@ -30,8 +32,6 @@ roles:
version: v0.1.1
- src: singleplatform-eng.users
version: v1.2.5
- src: stackhpc.dell-powerconnect-switch
version: v1.2.1
- src: stackhpc.drac
version: 1.1.6
- src: stackhpc.drac-facts
@ -42,17 +42,7 @@ roles:
version: v1.14.2
- src: stackhpc.luks
version: 0.4.2
- src: stackhpc.mellanox-switch
version: v1.0.1
- src: stackhpc.os-images
version: v1.16.0
- src: stackhpc.os-ironic-state
version: v1.3.1
- src: stackhpc.os-networks
version: v1.5.8
- src: stackhpc.os-openstackclient
version: v1.5.0
- src: stackhpc.os_openstacksdk
version: v1.3.0
- src: stackhpc.timezone
version: 1.2.1