bifrost/playbooks/roles/bifrost-ironic-install/templates/ironic.conf.j2
Julia Kreger 1e5db8127e Remove my_ip_address from use
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
2017-02-03 19:37:20 +00:00

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 %}