1e5db8127e
With recent gate failures, the possibility exists that the fact, via being a default, for my_ip_address, is being fullfilled as part of template expansion as opposed to runtime. Since it is possible that things are still in flight with a test run, we should utilize the entire variable so it is expanded when it is needed, after a refresh has occured. Also moved the collection of facts to later after the completion of package installation, into the bootstrap step since it is only required in the bootstrap step, and not until users and database access configuration has already been asserted. Change-Id: I74f936ee0440d4afaedafc8eff5936196186d743
91 lines
2.8 KiB
Django/Jinja
91 lines
2.8 KiB
Django/Jinja
# {{ ansible_managed }}
|
|
# For additional details on configuring ironic, you may wish to reference
|
|
# the sample configuration file which can be located at
|
|
# http://git.openstack.org/cgit/openstack/ironic/tree/etc/ironic/ironic.conf.sample
|
|
|
|
|
|
[DEFAULT]
|
|
# NOTE(TheJulia): Until Bifrost supports neutron or some other network
|
|
# configuration besides a flat network where bifrost orchustrates the
|
|
# control instead of ironic, noop is the only available network driver.
|
|
enabled_network_interfaces = noop
|
|
{% if testing | bool == true %}
|
|
enabled_drivers = agent_ssh,pxe_ssh
|
|
debug = true
|
|
{% else %}
|
|
enabled_drivers = {{ enabled_drivers }}
|
|
debug = false
|
|
{% endif %}
|
|
|
|
rabbit_userid = ironic
|
|
rabbit_password = {{ ironic_db_password }}
|
|
|
|
{% if enable_keystone is defined and enable_keystone | bool == true %}
|
|
auth_strategy = keystone
|
|
{% else %}
|
|
auth_strategy = noauth
|
|
{% endif %}
|
|
|
|
[pxe]
|
|
pxe_append_params = systemd.journald.forward_to_console=yes {{ extra_kernel_options | default('') }}
|
|
pxe_config_template = $pybasedir/drivers/modules/ipxe_config.template
|
|
tftp_server = {{ hostvars[inventory_hostname]['ansible_' + ans_network_interface]['ipv4']['address'] }}
|
|
tftp_root = /tftpboot
|
|
pxe_bootfile_name = undionly.kpxe
|
|
ipxe_enabled = true
|
|
ipxe_boot_script = /etc/ironic/boot.ipxe
|
|
|
|
[deploy]
|
|
http_url = http://{{ hostvars[inventory_hostname]['ansible_' + ans_network_interface]['ipv4']['address'] }}:{{ file_url_port }}/
|
|
http_root = {{ http_boot_folder }}
|
|
|
|
[conductor]
|
|
api_url = http://{{ hostvars[inventory_hostname]['ansible_' + ans_network_interface]['ipv4']['address'] }}:6385/
|
|
clean_nodes = {{ cleaning | lower }}
|
|
automated_clean = {{ cleaning | lower }}
|
|
|
|
[database]
|
|
connection = mysql+pymysql://ironic:{{ ironic_db_password }}@localhost/ironic?charset=utf8
|
|
|
|
[dhcp]
|
|
dhcp_provider = none
|
|
|
|
{% if testing | bool == true %}
|
|
[ssh]
|
|
libvirt_uri = qemu:///system
|
|
{% endif %}
|
|
|
|
{% if enable_cors | bool == true %}
|
|
[cors]
|
|
allowed_origin = {{ cors_allowed_origin | default('allowed_origin=http://localhost:8000') }}
|
|
allow_credentials = {{ enable_cors_credential_support | default('true') }}
|
|
{% endif %}
|
|
|
|
[ilo]
|
|
use_web_server_for_images = true
|
|
|
|
{% if enable_inspector | bool == true %}
|
|
[inspector]
|
|
enabled = true
|
|
{% endif %}
|
|
|
|
{% if enable_keystone is defined and enable_keystone | bool == true %}
|
|
[keystone]
|
|
region_name = {{ keystone.bootstrap.region_name | default('RegionOne')}}
|
|
[keystone_authtoken]
|
|
auth_plugin = password
|
|
auth_url = {{ ironic.service_catalog.auth_url }}
|
|
username = {{ ironic.service_catalog.username }}
|
|
password = {{ ironic.service_catalog.password }}
|
|
user_domain_id = default
|
|
project_name = {{ ironic.service_catalog.project_name }}
|
|
project_domain_id = default
|
|
|
|
[service_catalog]
|
|
auth_url = {{ ironic.service_catalog.auth_url }}
|
|
auth_type = password
|
|
tenant_name = {{ ironic.service_catalog.project_name }}
|
|
username = {{ ironic.service_catalog.username }}
|
|
password = {{ ironic.service_catalog.password }}
|
|
{% endif %}
|