diff --git a/recipes/ironic-common.rb b/recipes/ironic-common.rb index bc41445..def7993 100644 --- a/recipes/ironic-common.rb +++ b/recipes/ironic-common.rb @@ -71,6 +71,7 @@ auth_uri = auth_uri_transform(identity_endpoint.to_s, node['openstack']['bare-me identity_uri = identity_uri_transform(identity_admin_endpoint) network_endpoint = internal_endpoint 'network-api' || {} +api_bind = internal_endpoint 'bare-metal-api-bind' template '/etc/ironic/ironic.conf' do source 'ironic.conf.erb' @@ -78,6 +79,8 @@ template '/etc/ironic/ironic.conf' do group node['openstack']['bare-metal']['group'] mode 00640 variables( + api_bind_address: api_bind.host, + api_bind_port: api_bind.port, db_connection: db_connection, mq_service_type: mq_service_type, mq_password: mq_password, diff --git a/spec/ironic-common_spec.rb b/spec/ironic-common_spec.rb index b82a105..38f1de3 100644 --- a/spec/ironic-common_spec.rb +++ b/spec/ironic-common_spec.rb @@ -60,6 +60,15 @@ describe 'openstack-bare-metal::ironic-common' do ) end + it 'has the default api attributes' do + [ + /^host_ip=127.0.0.1$/, + /^port=6385$/ + ].each do |line| + expect(chef_run).to render_config_file(file.name).with_section_content('api', line) + end + end + it 'has the default glance attributes' do [ /^glance_host=127.0.0.1$/, diff --git a/templates/default/ironic.conf.erb b/templates/default/ironic.conf.erb index 7b1a8f7..6b45815 100644 --- a/templates/default/ironic.conf.erb +++ b/templates/default/ironic.conf.erb @@ -522,10 +522,10 @@ log_dir=<%= node['openstack']['bare-metal']['log_dir'] %> # # The listen IP for the Ironic API server. (string value) -#host_ip=0.0.0.0 +host_ip=<%= @api_bind_address %> # The port for the Ironic API server. (integer value) -#port=6385 +port=<%= @api_bind_port %> # The maximum number of items returned in a single response # from a collection resource. (integer value)