From 1a3a2c413e6b1731acdb27867d5e6a168400a7c0 Mon Sep 17 00:00:00 2001 From: Pavlo Shchelokovskyy Date: Wed, 6 Jun 2018 19:17:42 +0300 Subject: [PATCH] Remove deprecated ansible driver options these are ansible_deploy_username and ansible_deploy_key_file. Operators will have to set ansible_username and ansible_key_file node drover_info fields instead. Change-Id: I12a65aed63e4d1889f403ed8cdff1489ff762628 --- ironic/drivers/modules/ansible/deploy.py | 29 +++---------------- .../drivers/modules/ansible/test_deploy.py | 20 ------------- ...eploy-driver-options-a28dc2f36110a67a.yaml | 8 +++++ 3 files changed, 12 insertions(+), 45 deletions(-) create mode 100644 releasenotes/notes/remove-ansible_deploy-driver-options-a28dc2f36110a67a.yaml diff --git a/ironic/drivers/modules/ansible/deploy.py b/ironic/drivers/modules/ansible/deploy.py index 529dfe8309..b8211b2e80 100644 --- a/ironic/drivers/modules/ansible/deploy.py +++ b/ironic/drivers/modules/ansible/deploy.py @@ -76,14 +76,6 @@ OPTIONAL_PROPERTIES = { } COMMON_PROPERTIES = OPTIONAL_PROPERTIES -# TODO(pas-ha) remove in Rocky -DEPRECATED_PROPERTIES = { - 'ansible_deploy_username': { - 'name': 'ansible_username', - 'warned': False}, - 'ansible_deploy_key_file': { - 'name': 'ansible_key_file', - 'warned': False}} class PlaybookNotFound(exception.IronicException): @@ -96,23 +88,10 @@ def _get_playbooks_path(node): def _parse_ansible_driver_info(node, action='deploy'): - # TODO(pas-ha) remove in Rocky - for old, new in DEPRECATED_PROPERTIES.items(): - if old in node.driver_info: - if not new['warned']: - LOG.warning("Driver property '%(old)s' is deprecated, " - "and will be ignored in Rocky release. " - "Use '%(new)s' instead.", old=old, new=new['name']) - new['warned'] = True - # TODO(pas-ha) simplify in Rocky - user = node.driver_info.get( - 'ansible_username', - node.driver_info.get('ansible_deploy_username', - CONF.ansible.default_username)) - key = node.driver_info.get( - 'ansible_key_file', - node.driver_info.get('ansible_deploy_key_file', - CONF.ansible.default_key_file)) + user = node.driver_info.get('ansible_username', + CONF.ansible.default_username) + key = node.driver_info.get('ansible_key_file', + CONF.ansible.default_key_file) playbook = node.driver_info.get('ansible_%s_playbook' % action, getattr(CONF.ansible, 'default_%s_playbook' % action, diff --git a/ironic/tests/unit/drivers/modules/ansible/test_deploy.py b/ironic/tests/unit/drivers/modules/ansible/test_deploy.py index 6c21dc76ea..05afa44830 100644 --- a/ironic/tests/unit/drivers/modules/ansible/test_deploy.py +++ b/ironic/tests/unit/drivers/modules/ansible/test_deploy.py @@ -92,26 +92,6 @@ class TestAnsibleMethods(AnsibleDeployTestCaseBase): self.assertEqual('spam', user) self.assertEqual('/ham/eggs', key) - @mock.patch.object(ansible_deploy.LOG, 'warning', autospec=True) - def test__parse_ansible_driver_info_deprecated_opts(self, warn_mock): - self.node.driver_info[ - 'ansible_deploy_username'] = self.node.driver_info.pop( - 'ansible_username') - self.node.driver_info[ - 'ansible_deploy_key_file'] = self.node.driver_info.pop( - 'ansible_key_file') - playbook, user, key = ansible_deploy._parse_ansible_driver_info( - self.node, 'deploy') - self.assertEqual(ansible_deploy.CONF.ansible.default_deploy_playbook, - playbook) - self.assertEqual('test', user) - self.assertEqual('/path/key', key) - self.assertEqual(2, warn_mock.call_count) - # check that we remember about warnings havig been displayed - playbook, user, key = ansible_deploy._parse_ansible_driver_info( - self.node, 'deploy') - self.assertEqual(2, warn_mock.call_count) - def test__parse_ansible_driver_info_no_playbook(self): self.assertRaises(exception.IronicException, ansible_deploy._parse_ansible_driver_info, diff --git a/releasenotes/notes/remove-ansible_deploy-driver-options-a28dc2f36110a67a.yaml b/releasenotes/notes/remove-ansible_deploy-driver-options-a28dc2f36110a67a.yaml new file mode 100644 index 0000000000..cada682614 --- /dev/null +++ b/releasenotes/notes/remove-ansible_deploy-driver-options-a28dc2f36110a67a.yaml @@ -0,0 +1,8 @@ +--- +upgrade: + - | + Deprecated options ``ansible_deploy_username`` and + ``ansible_deploy_key_file`` in node driver_info for the ``ansible`` + deploy interface were removed and will be ignored. + Use ``ansible_username`` and ``ansible_key_file`` options in the node + driver_info respectively.