summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--etc/ironic/ironic.conf.sample2
-rw-r--r--ironic/drivers/modules/ilo/management.py2
-rw-r--r--ironic/tests/common/test_glance_service.py29
-rw-r--r--releasenotes/notes/disable-clean-step-reset-ilo-1869a6e08f39901c.yaml6
4 files changed, 31 insertions, 8 deletions
diff --git a/etc/ironic/ironic.conf.sample b/etc/ironic/ironic.conf.sample
index 932888570..db88cece7 100644
--- a/etc/ironic/ironic.conf.sample
+++ b/etc/ironic/ironic.conf.sample
@@ -1035,7 +1035,7 @@
#
# Priority for reset_ilo clean step. (integer value)
-#clean_priority_reset_ilo=1
+#clean_priority_reset_ilo=0
# Priority for reset_bios_to_default clean step. (integer
# value)
diff --git a/ironic/drivers/modules/ilo/management.py b/ironic/drivers/modules/ilo/management.py
index 21db13864..9fdbc58a4 100644
--- a/ironic/drivers/modules/ilo/management.py
+++ b/ironic/drivers/modules/ilo/management.py
@@ -46,7 +46,7 @@ MANAGEMENT_PROPERTIES.update(ilo_common.CLEAN_PROPERTIES)
clean_step_opts = [
cfg.IntOpt('clean_priority_reset_ilo',
- default=1,
+ default=0,
help=_('Priority for reset_ilo clean step.')),
cfg.IntOpt('clean_priority_reset_bios_to_default',
default=10,
diff --git a/ironic/tests/common/test_glance_service.py b/ironic/tests/common/test_glance_service.py
index 37bfbe0ff..e2364dfdb 100644
--- a/ironic/tests/common/test_glance_service.py
+++ b/ironic/tests/common/test_glance_service.py
@@ -20,6 +20,7 @@ import os
import tempfile
import time
+from glanceclient import client as glance_client
from glanceclient import exc as glance_exc
import mock
from oslo_config import cfg
@@ -600,28 +601,44 @@ class TestGlanceImageService(base.TestCase):
wrapped_func = base_image_service.check_image_service(func)
self.assertTrue(wrapped_func(self.service))
- def test_check_image_service__no_client_set_http(self):
+ @mock.patch.object(glance_client, 'Client', autospec=True)
+ def test_check_image_service__no_client_set_http(self, mock_gclient):
def func(service, *args, **kwargs):
return (self.endpoint, args, kwargs)
+ endpoint = 'http://123.123.123.123:9292'
+ mock_gclient.return_value.endpoint = endpoint
self.service.client = None
- params = {'image_href': 'http://123.123.123.123:9292/image_uuid'}
+
+ params = {'image_href': '%s/image_uuid' % endpoint}
self.config(auth_strategy='keystone', group='glance')
wrapped_func = base_image_service.check_image_service(func)
- self.assertEqual(('http://123.123.123.123:9292', (), params),
+ self.assertEqual((endpoint, (), params),
wrapped_func(self.service, **params))
+ mock_gclient.assert_called_once_with(
+ 1, endpoint,
+ **{'insecure': CONF.glance.glance_api_insecure,
+ 'token': self.context.auth_token})
- def test_get_image_service__no_client_set_https(self):
+ @mock.patch.object(glance_client, 'Client', autospec=True)
+ def test_get_image_service__no_client_set_https(self, mock_gclient):
def func(service, *args, **kwargs):
return (self.endpoint, args, kwargs)
+ endpoint = 'https://123.123.123.123:9292'
+ mock_gclient.return_value.endpoint = endpoint
self.service.client = None
- params = {'image_href': 'https://123.123.123.123:9292/image_uuid'}
+
+ params = {'image_href': '%s/image_uuid' % endpoint}
self.config(auth_strategy='keystone', group='glance')
wrapped_func = base_image_service.check_image_service(func)
- self.assertEqual(('https://123.123.123.123:9292', (), params),
+ self.assertEqual((endpoint, (), params),
wrapped_func(self.service, **params))
+ mock_gclient.assert_called_once_with(
+ 1, endpoint,
+ **{'insecure': CONF.glance.glance_api_insecure,
+ 'token': self.context.auth_token})
def _create_failing_glance_client(info):
diff --git a/releasenotes/notes/disable-clean-step-reset-ilo-1869a6e08f39901c.yaml b/releasenotes/notes/disable-clean-step-reset-ilo-1869a6e08f39901c.yaml
new file mode 100644
index 000000000..30c8f06de
--- /dev/null
+++ b/releasenotes/notes/disable-clean-step-reset-ilo-1869a6e08f39901c.yaml
@@ -0,0 +1,6 @@
+---
+fixes:
+ - Disables default execution of clean step 'reset_ilo'
+ during automated cleaning. Resetting of iLO is not
+ required during every invocation of automated
+ cleaning. If required, operator can enable the same.