0e4af118eb
Adds support for installing additional build host dependencies when building IPA and overcloud host images via 'ipa_build_dib_host_packages_extra' and 'overcloud_dib_host_packages_extra'. Support for installing additional host packages was added in stackhpc.os-images v1.15.0 [1]. [1] https://github.com/stackhpc/ansible-role-os-images/pull/63 Change-Id: I1a05d448031cb415cec4cd601a030abdb8a5eba5
56 lines
2.0 KiB
YAML
56 lines
2.0 KiB
YAML
---
|
|
# Build and install an Ironic Python Agent (IPA) image for the overcloud's
|
|
# ironic and ironic-inspector services.
|
|
#
|
|
# The images will be stored in {{ image_cache_path }}/{{ ipa_image_name }}.
|
|
|
|
- name: Check whether Ironic is enabled
|
|
hosts: controllers
|
|
gather_facts: False
|
|
tags:
|
|
- ipa-build
|
|
tasks:
|
|
- name: Create controllers group with ironic enabled
|
|
group_by:
|
|
key: "controllers_for_ipa_build_{{ kolla_enable_ironic | bool }}"
|
|
changed_when: false
|
|
|
|
- name: Ensure Ironic Python Agent images are built and installed
|
|
hosts: controllers_for_ipa_build_True[0]
|
|
tags:
|
|
- ipa-build
|
|
vars:
|
|
ipa_image_name: "ipa"
|
|
ipa_image_force_rebuild: false
|
|
tasks:
|
|
- block:
|
|
# TODO(priteau): Move this to stackhpc.os-images
|
|
- name: Ensure libgcrypt is updated
|
|
package:
|
|
name: "libgcrypt"
|
|
state: latest
|
|
become: True
|
|
when: ansible_facts.os_family == 'RedHat'
|
|
|
|
- name: Ensure Ironic Python Agent images are built
|
|
include_role:
|
|
name: stackhpc.os-images
|
|
vars:
|
|
os_images_package_dependencies_extra: "{{ ipa_build_dib_host_packages_extra | select | list }}"
|
|
os_images_venv: "{{ virtualenv_path }}/ipa-build-dib"
|
|
os_images_package_state: latest
|
|
os_images_upper_constraints_file: "{{ ipa_build_upper_constraints_file }}"
|
|
os_images_cache: "{{ image_cache_path }}"
|
|
os_images_common: ""
|
|
os_images_list:
|
|
- name: "{{ ipa_image_name }}"
|
|
elements: "{{ ipa_build_dib_elements }}"
|
|
env: "{{ ipa_build_dib_env }}"
|
|
packages: "{{ ipa_build_dib_packages }}"
|
|
# Avoid needing to install qemu-img for qcow2 image.
|
|
type: raw
|
|
os_images_git_elements: "{{ ipa_build_dib_git_elements }}"
|
|
os_images_upload: False
|
|
os_images_force_rebuild: "{{ ipa_image_force_rebuild }}"
|
|
when: ipa_build_images | bool
|