---
# Overcloud host disk image configuration.

###############################################################################
# Diskimage-builder configuration for overcloud host disk images.

# Whether to build host disk images with DIB directly instead of through
# Bifrost. Setting it to true disables Bifrost image build and allows images to
# be built with the `kayobe overcloud host image build` command. Default value
# is true.
overcloud_dib_build_host_images: true

# List of additional build host packages to install.
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": "{{
# overcloud_dib_elements }}", "env": "{{ overcloud_dib_env_vars }}",
# "packages": "{{ overcloud_dib_packages }}"}.
overcloud_dib_host_images:
  - name: "deployment_image"
    elements: "{{ overcloud_dib_elements }}"
    env: "{{ overcloud_dib_env_vars }}"
    packages: "{{ overcloud_dib_packages }}"

# DIB base OS element. Default is {{ 'rocky-container' if os_distribution ==
# 'rocky' else os_distribution }}.
overcloud_dib_os_element: "{{ 'rocky-container' if os_distribution == 'rocky' else os_distribution }}"

# DIB image OS release. Default is {{ os_release }}.
overcloud_dib_os_release: "{{ os_release }}"

# List of default DIB elements. Default is ["{{ overcloud_dib_os_element }}",
# "cloud-init-datasources", "enable-serial-console", "vm"].
overcloud_dib_elements_default:
  - "{{ overcloud_dib_os_element }}"
  - "cloud-init-datasources"
  - "enable-serial-console"
  - "vm"

# List of additional DIB elements. Default is none.
overcloud_dib_elements_extra: []

# List of DIB elements. Default is a combination of
# overcloud_dib_elements_default and overcloud_dib_elements_extra.
overcloud_dib_elements: "{{ overcloud_dib_elements_default | select | list + overcloud_dib_elements_extra }}"

# DIB default environment variables. Default is
# {"DIB_BOOTLOADER_DEFAULT_CMDLINE": "nofb nomodeset gfxpayload=text
# net.ifnames=1", "DIB_CLOUD_INIT_DATASOURCES": "ConfigDrive",
# "DIB_CONTAINERFILE_RUNTIME": "docker", "DIB_CONTAINERFILE_NETWORK_DRIVER":
# "host", "DIB_RELEASE": "{{ overcloud_dib_os_release }}"}.
overcloud_dib_env_vars_default:
  DIB_BOOTLOADER_DEFAULT_CMDLINE: "nofb nomodeset gfxpayload=text net.ifnames=1"
  DIB_CLOUD_INIT_DATASOURCES: "ConfigDrive"
  DIB_CONTAINERFILE_RUNTIME: "docker"
  DIB_CONTAINERFILE_NETWORK_DRIVER: "host"
  DIB_RELEASE: "{{ overcloud_dib_os_release }}"

# DIB additional environment variables. Default is none.
overcloud_dib_env_vars_extra: {}

# DIB environment variables. Default is combination of
# overcloud_dib_env_vars_default and overcloud_dib_env_vars_extra.
overcloud_dib_env_vars: "{{ overcloud_dib_env_vars_default | combine(overcloud_dib_env_vars_extra) }}"

# List of DIB packages to install. Default is to install no extra packages.
overcloud_dib_packages: []

# List of default git repositories containing Diskimage Builder (DIB) elements.
# See stackhpc.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.
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
# 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 }}

# Upper constraints file for installing packages in the virtual environment
# used for building overcloud host disk images. Default is {{
# pip_upper_constraints_file }}.
overcloud_dib_upper_constraints_file: "{{ pip_upper_constraints_file }}"

# Upper constraints file for installation of DIB to build overcloud host disk images.
# Default is empty string.
overcloud_dib_dib_upper_constraints_file: ""
