Skip to content

Commit

Permalink
Merge "Add ironic driver's parameters to poll ironic-api"
Browse files Browse the repository at this point in the history
  • Loading branch information
Jenkins authored and openstack-gerrit committed Jan 4, 2017
2 parents c437195 + 1dcd3cd commit 7056b0f
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 21 deletions.
42 changes: 26 additions & 16 deletions manifests/ironic/common.pp
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,12 @@
# The admin username for Ironic to connect to Nova.
# Defaults to 'admin'
#
# [*api_max_retries*]
# Max times for ironic driver to poll ironic api
#
# [*api_retry_interval*]
# Interval in second for ironic driver to poll ironic api
#
# === DEPRECATED
#
# [*admin_username*]
Expand All @@ -43,17 +49,19 @@
# Defaults to 'services'
#
class nova::ironic::common (
$api_endpoint = 'http://127.0.0.1:6385/v1',
$auth_plugin = 'password',
$auth_url = 'http://127.0.0.1:35357/',
$password = 'ironic',
$project_name = 'services',
$username = 'admin',
$api_endpoint = 'http://127.0.0.1:6385/v1',
$auth_plugin = 'password',
$auth_url = 'http://127.0.0.1:35357/',
$password = 'ironic',
$project_name = 'services',
$username = 'admin',
$api_max_retries = $::os_service_default,
$api_retry_interval = $::os_service_default,
# DEPRECATED
$admin_username = undef,
$admin_password = undef,
$admin_tenant_name = undef,
$admin_url = undef,
$admin_username = undef,
$admin_password = undef,
$admin_tenant_name = undef,
$admin_url = undef,
) {

include ::nova::deps
Expand Down Expand Up @@ -83,12 +91,14 @@


nova_config {
'ironic/auth_plugin': value => $auth_plugin;
'ironic/username': value => $username_real;
'ironic/password': value => $password_real;
'ironic/auth_url': value => $auth_url_real;
'ironic/project_name': value => $project_name_real;
'ironic/api_endpoint': value => $api_endpoint;
'ironic/auth_plugin': value => $auth_plugin;
'ironic/username': value => $username_real;
'ironic/password': value => $password_real;
'ironic/auth_url': value => $auth_url_real;
'ironic/project_name': value => $project_name_real;
'ironic/api_endpoint': value => $api_endpoint;
'ironic/api_max_retries': value => $api_max_retries;
'ironic/api_retry_interval': value => $api_retry_interval;
}

# TODO(aschultz): these are deprecated, remove in P
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
features:
- Adds the api_max_retries and api_retry_interval config
parameters for nova ironic driver to poll ironic api.
If not specify explicitly, use service's default value.
16 changes: 11 additions & 5 deletions spec/classes/nova_ironic_common_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
is_expected.to contain_nova_config('ironic/auth_url').with_value('http://127.0.0.1:35357/')
is_expected.to contain_nova_config('ironic/project_name').with_value('services')
is_expected.to contain_nova_config('ironic/api_endpoint').with_value('http://127.0.0.1:6385/v1')
is_expected.to contain_nova_config('ironic/api_max_retries').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('ironic/api_retry_interval').with('value' => '<SERVICE DEFAULT>')

is_expected.to contain_nova_config('ironic/admin_username').with_value('admin')
is_expected.to contain_nova_config('ironic/admin_password').with_value('ironic')
Expand All @@ -23,11 +25,13 @@
context 'with parameters' do
let :params do
{
:username => 'ironic',
:password => 's3cr3t',
:auth_url => 'http://10.0.0.10:35357/',
:project_name => 'services2',
:api_endpoint => 'http://10.0.0.10:6385/v1',
:username => 'ironic',
:password => 's3cr3t',
:auth_url => 'http://10.0.0.10:35357/',
:project_name => 'services2',
:api_endpoint => 'http://10.0.0.10:6385/v1',
:api_max_retries => 60,
:api_retry_interval => 2,
}
end

Expand All @@ -38,6 +42,8 @@
is_expected.to contain_nova_config('ironic/auth_url').with_value('http://10.0.0.10:35357/')
is_expected.to contain_nova_config('ironic/project_name').with_value('services2')
is_expected.to contain_nova_config('ironic/api_endpoint').with_value('http://10.0.0.10:6385/v1')
is_expected.to contain_nova_config('ironic/api_max_retries').with('value' => '60')
is_expected.to contain_nova_config('ironic/api_retry_interval').with('value' => '2')

is_expected.to contain_nova_config('ironic/admin_username').with_value('ironic')
is_expected.to contain_nova_config('ironic/admin_password').with_value('s3cr3t')
Expand Down

0 comments on commit 7056b0f

Please sign in to comment.