---
# List of enabled Ironic hardware types.
enabled_hardware_types: "{{ kolla_bifrost_enabled_hardware_types | join(',') }}"

# IP address range for DHCP.
dhcp_pool_start: "{{ kolla_bifrost_dhcp_pool_start }}"
dhcp_pool_end: "{{ kolla_bifrost_dhcp_pool_end }}"

{% if kolla_bifrost_dnsmasq_router %}
# Default route provided to nodes via DHCP.
dnsmasq_router: "{{ kolla_bifrost_dnsmasq_router }}"
{% endif %}

{% if kolla_bifrost_dnsmasq_dns_servers %}
# DNS servers provided to nodes via DHCP.
dnsmasq_dns_servers: "{{ kolla_bifrost_dnsmasq_dns_servers | join(',') }}"
{% endif %}

{% if kolla_bifrost_domain %}
# DNS domain provided to nodes via DHCP.
domain: "{{ kolla_bifrost_domain }}"
{% endif %}

{% if kolla_bifrost_inspector_processing_hooks %}
# Comma-separated list of inspector processing plugins.
inspector_processing_hooks: "{{ kolla_bifrost_inspector_processing_hooks | join(',') }}"
{% endif %}

{% if kolla_bifrost_inspector_port_addition %}
# Which MAC addresses to add as ports during introspection. One of 'all',
# 'active' or 'pxe'.
inspector_port_addition: "{{ kolla_bifrost_inspector_port_addition }}"
{% endif %}

{% if kolla_bifrost_inspector_extra_kernel_options %}
# Extra kernel parameters for the inspector default PXE configuration.
inspector_extra_kernel_options: "{{ kolla_bifrost_inspector_extra_kernel_options | join(' ') }}"
{% endif %}

# Whether to download Ironic Python Agent (IPA) images.
download_ipa: "{{ kolla_bifrost_download_ipa }}"

# URL of Ironic Python Agent (IPA) kernel image.
ipa_kernel_upstream_url: "{{ kolla_bifrost_ipa_kernel_upstream_url }}"

# URL of checksum of Ironic Python Agent (IPA) kernel image.
ipa_kernel_upstream_checksum_url: "{{ kolla_bifrost_ipa_kernel_checksum_url }}"

# NOTE(mgoddard): In bifrost 7.1.0, the default for ipa_kernel and
# ipa_kernel_url was changed from .vmlinuz to .kernel. This broke our inspector
# rule which uses .vmlinuz when setting driver_info.deploy_kernel. It will also
# break existing nodes if the IPA kernel is updated e.g. following an upgrade.
# Use the old value of .vmlinuz here.
# TODO(mgoddard): Remove these when we use IPA builder.
{# Using double jinja escaping here since this will be templated by kayobe #}
{# and kolla ansible, then interpreted as Ansible variables by Bifrost. #}
{{ '{% raw %}' }}
{% raw %}
ipa_kernel: "{{http_boot_folder}}/ipa.vmlinuz"
ipa_kernel_url: "{{ ipa_file_protocol }}://{{ hostvars[inventory_hostname]['ansible_' + ans_network_interface]['ipv4']['address'] }}:{{file_url_port}}/ipa.vmlinuz"
{% endraw %}
{{ '{% endraw %}' }}

# Algorithm of checksum of Ironic Python Agent (IPA) kernel image.
ipa_kernel_upstream_checksum_algo: "{{ kolla_bifrost_ipa_kernel_checksum_algorithm }}"

# URL of Ironic Python Agent (IPA) ramdisk image.
ipa_ramdisk_upstream_url: "{{ kolla_bifrost_ipa_ramdisk_upstream_url }}"

# URL of checksum of Ironic Python Agent (IPA) ramdisk image.
ipa_ramdisk_upstream_checksum_url: "{{ kolla_bifrost_ipa_ramdisk_checksum_url }}"

# Algorithm of checksum of Ironic Python Agent (IPA) ramdisk image.
ipa_ramdisk_upstream_checksum_algo: "{{ kolla_bifrost_ipa_ramdisk_checksum_algorithm }}"

{% if kolla_bifrost_extra_globals %}
###############################################################################
# Extra configuration

{{ kolla_bifrost_extra_globals|to_nice_yaml }}
{% endif %}
