Move non-Windows specific plugins to common

Most of the Windows-specific plugins were able to work on other platforms
as well, as long as osutils provides the relevant functionalities. This
restructuring is an effort for helping future additions of other
platforms.

Change-Id: I21a35eb6eb8e2439cfdf861c59afc51c3618a779
This commit is contained in:
Claudiu Popa 2014-11-20 10:48:37 +02:00
parent fbce2bad36
commit c5ebf8deec
55 changed files with 121 additions and 132 deletions

View File

@ -19,8 +19,8 @@ from oslo.config import cfg
from cloudbaseinit.metadata import factory as metadata_factory
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.osutils import factory as osutils_factory
from cloudbaseinit.plugins import base as plugins_base
from cloudbaseinit.plugins import factory as plugins_factory
from cloudbaseinit.plugins.common import base as plugins_base
from cloudbaseinit.plugins.common import factory as plugins_factory
opts = [
cfg.BoolOpt('allow_reboot', default=True, help='Allows OS reboots '

View File

@ -16,8 +16,8 @@ from oslo.config import cfg
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.osutils import factory as osutils_factory
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins import constants
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import constants
opts = [
cfg.StrOpt('username', default='Admin', help='User to be added to the '

View File

@ -20,23 +20,23 @@ opts = [
cfg.ListOpt(
'plugins',
default=[
'cloudbaseinit.plugins.windows.mtu.MTUPlugin',
'cloudbaseinit.plugins.windows.ntpclient.NTPClientPlugin',
'cloudbaseinit.plugins.windows.sethostname.SetHostNamePlugin',
'cloudbaseinit.plugins.windows.createuser.CreateUserPlugin',
'cloudbaseinit.plugins.windows.networkconfig.NetworkConfigPlugin',
'cloudbaseinit.plugins.common.mtu.MTUPlugin',
'cloudbaseinit.plugins.common.ntpclient.NTPClientPlugin',
'cloudbaseinit.plugins.common.sethostname.SetHostNamePlugin',
'cloudbaseinit.plugins.common.createuser.CreateUserPlugin',
'cloudbaseinit.plugins.common.networkconfig.NetworkConfigPlugin',
'cloudbaseinit.plugins.windows.licensing.WindowsLicensingPlugin',
'cloudbaseinit.plugins.windows.sshpublickeys.'
'cloudbaseinit.plugins.common.sshpublickeys.'
'SetUserSSHPublicKeysPlugin',
'cloudbaseinit.plugins.windows.extendvolumes.ExtendVolumesPlugin',
'cloudbaseinit.plugins.windows.userdata.UserDataPlugin',
'cloudbaseinit.plugins.windows.setuserpassword.'
'cloudbaseinit.plugins.common.userdata.UserDataPlugin',
'cloudbaseinit.plugins.common.setuserpassword.'
'SetUserPasswordPlugin',
'cloudbaseinit.plugins.windows.winrmlistener.'
'ConfigWinRMListenerPlugin',
'cloudbaseinit.plugins.windows.winrmcertificateauth.'
'ConfigWinRMCertificateAuthPlugin',
'cloudbaseinit.plugins.windows.localscripts.LocalScriptsPlugin',
'cloudbaseinit.plugins.common.localscripts.LocalScriptsPlugin',
],
help='List of enabled plugin classes, '
'to executed in the provided order'),

View File

@ -16,8 +16,8 @@ import os
from oslo.config import cfg
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.windows import fileexecutils
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import fileexecutils
opts = [
cfg.StrOpt('local_scripts_path', default=None,

View File

@ -18,7 +18,7 @@ from oslo.config import cfg
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.osutils import factory as osutils_factory
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.common import base
from cloudbaseinit.utils import dhcp
opts = [

View File

@ -17,7 +17,7 @@ from cloudbaseinit import exception
from cloudbaseinit.metadata.services import base as service_base
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.osutils import factory as osutils_factory
from cloudbaseinit.plugins import base as plugin_base
from cloudbaseinit.plugins.common import base as plugin_base
LOG = logging.getLogger(__name__)

View File

@ -20,7 +20,7 @@ from oslo.config import cfg
from cloudbaseinit import exception
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.osutils import factory as osutils_factory
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.common import base
from cloudbaseinit.utils import dhcp
opts = [

View File

@ -19,7 +19,7 @@ from oslo.config import cfg
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.osutils import factory as osutils_factory
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.common import base
opts = [
cfg.BoolOpt('netbios_host_name_compatibility', default=True,

View File

@ -18,8 +18,8 @@ from oslo.config import cfg
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.osutils import factory as osutils_factory
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins import constants
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import constants
from cloudbaseinit.utils import crypt
@ -31,7 +31,7 @@ opts = [
CONF = cfg.CONF
CONF.register_opts(opts)
CONF.import_opt('username', 'cloudbaseinit.plugins.windows.createuser')
CONF.import_opt('username', 'cloudbaseinit.plugins.common.createuser')
LOG = logging.getLogger(__name__)

View File

@ -19,10 +19,10 @@ from oslo.config import cfg
from cloudbaseinit import exception
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.osutils import factory as osutils_factory
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.common import base
CONF = cfg.CONF
CONF.import_opt('username', 'cloudbaseinit.plugins.windows.createuser')
CONF.import_opt('username', 'cloudbaseinit.plugins.common.createuser')
LOG = logging.getLogger(__name__)

View File

@ -18,9 +18,9 @@ import io
from cloudbaseinit.metadata.services import base as metadata_services_base
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.windows.userdataplugins import factory
from cloudbaseinit.plugins.windows import userdatautils
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common.userdataplugins import factory
from cloudbaseinit.plugins.common import userdatautils
from cloudbaseinit.utils import encoding

View File

@ -13,7 +13,7 @@
# under the License.
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.plugins.windows.userdataplugins import base
from cloudbaseinit.plugins.common.userdataplugins import base
LOG = logging.getLogger(__name__)

View File

@ -17,8 +17,8 @@ from oslo.config import cfg
import yaml
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.plugins.windows.userdataplugins import base
from cloudbaseinit.plugins.windows.userdataplugins.cloudconfigplugins import (
from cloudbaseinit.plugins.common.userdataplugins import base
from cloudbaseinit.plugins.common.userdataplugins.cloudconfigplugins import (
factory
)

View File

@ -18,7 +18,7 @@ from cloudbaseinit.utils import classloader
# TODO(cpopa): replace the static list of plugins with something
# discovered at runtime.
PLUGINS = {
'write_files': 'cloudbaseinit.plugins.windows.userdataplugins.'
'write_files': 'cloudbaseinit.plugins.common.userdataplugins.'
'cloudconfigplugins.write_files.WriteFilesPlugin',
}

View File

@ -21,7 +21,7 @@ import six
from cloudbaseinit import exception
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.plugins.windows.userdataplugins.cloudconfigplugins import (
from cloudbaseinit.plugins.common.userdataplugins.cloudconfigplugins import (
base
)

View File

@ -20,17 +20,17 @@ opts = [
cfg.ListOpt(
'user_data_plugins',
default=[
'cloudbaseinit.plugins.windows.userdataplugins.parthandler.'
'cloudbaseinit.plugins.common.userdataplugins.parthandler.'
'PartHandlerPlugin',
'cloudbaseinit.plugins.windows.userdataplugins.cloudconfig.'
'cloudbaseinit.plugins.common.userdataplugins.cloudconfig.'
'CloudConfigPlugin',
'cloudbaseinit.plugins.windows.userdataplugins.cloudboothook.'
'cloudbaseinit.plugins.common.userdataplugins.cloudboothook.'
'CloudBootHookPlugin',
'cloudbaseinit.plugins.windows.userdataplugins.shellscript.'
'cloudbaseinit.plugins.common.userdataplugins.shellscript.'
'ShellScriptPlugin',
'cloudbaseinit.plugins.windows.userdataplugins.multipartmixed.'
'cloudbaseinit.plugins.common.userdataplugins.multipartmixed.'
'MultipartMixedPlugin',
'cloudbaseinit.plugins.windows.userdataplugins.heat.'
'cloudbaseinit.plugins.common.userdataplugins.heat.'
'HeatPlugin',
],
help='List of enabled userdata content plugins'),

View File

@ -18,8 +18,8 @@ import os
from oslo.config import cfg
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.plugins.windows.userdataplugins import base
from cloudbaseinit.plugins.windows import userdatautils
from cloudbaseinit.plugins.common.userdataplugins import base
from cloudbaseinit.plugins.common import userdatautils
from cloudbaseinit.utils import encoding
opts = [

View File

@ -12,7 +12,7 @@
# License for the specific language governing permissions and limitations
# under the License.
from cloudbaseinit.plugins.windows.userdataplugins import base
from cloudbaseinit.plugins.common.userdataplugins import base
class MultipartMixedPlugin(base.BaseUserDataPlugin):

View File

@ -17,7 +17,7 @@ import os
import tempfile
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.plugins.windows.userdataplugins import base
from cloudbaseinit.plugins.common.userdataplugins import base
from cloudbaseinit.utils import classloader
LOG = logging.getLogger(__name__)

View File

@ -17,8 +17,8 @@ import os
import tempfile
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.plugins.windows import fileexecutils
from cloudbaseinit.plugins.windows.userdataplugins import base
from cloudbaseinit.plugins.common import fileexecutils
from cloudbaseinit.plugins.common.userdataplugins import base
from cloudbaseinit.utils import encoding
LOG = logging.getLogger(__name__)

View File

@ -18,7 +18,7 @@ import re
from oslo.config import cfg
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.common import base
from cloudbaseinit.utils.windows import vds
ole32 = ctypes.windll.ole32

View File

@ -19,7 +19,7 @@ from oslo.config import cfg
from cloudbaseinit import exception
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.osutils import factory as osutils_factory
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.common import base
opts = [
cfg.BoolOpt('activate_windows', default=False,

View File

@ -15,8 +15,8 @@
from cloudbaseinit import exception
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.osutils import factory as osutils_factory
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins import constants
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import constants
from cloudbaseinit.utils.windows import security
from cloudbaseinit.utils.windows import winrmconfig
from cloudbaseinit.utils.windows import x509

View File

@ -16,7 +16,7 @@ from oslo.config import cfg
from cloudbaseinit.openstack.common import log as logging
from cloudbaseinit.osutils import factory as osutils_factory
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.common import base
from cloudbaseinit.utils.windows import security
from cloudbaseinit.utils.windows import winrmconfig
from cloudbaseinit.utils.windows import x509

View File

@ -20,8 +20,8 @@ except ImportError:
import mock
from oslo.config import cfg
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.windows import createuser
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import createuser
from cloudbaseinit.tests import testutils
CONF = cfg.CONF
@ -41,7 +41,7 @@ class CreateUserPluginTests(unittest.TestCase):
@testutils.ConfPatcher('groups', ['Admins'])
@mock.patch('cloudbaseinit.osutils.factory.get_os_utils')
@mock.patch('cloudbaseinit.plugins.windows.createuser.CreateUserPlugin'
@mock.patch('cloudbaseinit.plugins.common.createuser.CreateUserPlugin'
'._get_password')
def _test_execute(self, mock_get_password, mock_get_os_utils,
user_exists=True):

View File

@ -20,7 +20,7 @@ except ImportError:
import mock
from cloudbaseinit.plugins.common import execcmd
from cloudbaseinit.plugins.windows import fileexecutils
from cloudbaseinit.plugins.common import fileexecutils
@mock.patch('cloudbaseinit.osutils.factory.get_os_utils')

View File

@ -20,8 +20,8 @@ try:
except ImportError:
import mock
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.windows import localscripts
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import localscripts
from cloudbaseinit.tests import testutils
@ -45,9 +45,9 @@ class LocalScriptsPluginTests(unittest.TestCase):
@testutils.ConfPatcher('local_scripts_path',
mock.sentinel.mock_local_scripts_path)
@mock.patch('cloudbaseinit.plugins.windows.localscripts'
@mock.patch('cloudbaseinit.plugins.common.localscripts'
'.LocalScriptsPlugin._get_files_in_dir')
@mock.patch('cloudbaseinit.plugins.windows.fileexecutils.exec_file')
@mock.patch('cloudbaseinit.plugins.common.fileexecutils.exec_file')
def test_execute(self, mock_exec_file, mock_get_files_in_dir):
mock_service = mock.MagicMock()
fake_path = os.path.join('fake', 'path')

View File

@ -23,8 +23,8 @@ except ImportError:
from cloudbaseinit import exception
from cloudbaseinit.metadata.services import base as service_base
from cloudbaseinit.plugins import base as plugin_base
from cloudbaseinit.plugins.windows import networkconfig
from cloudbaseinit.plugins.common import base as plugin_base
from cloudbaseinit.plugins.common import networkconfig
class TestNetworkConfigPlugin(unittest.TestCase):

View File

@ -20,8 +20,8 @@ except ImportError:
import mock
from cloudbaseinit import exception
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.windows import ntpclient
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import ntpclient
from cloudbaseinit.tests import testutils
from cloudbaseinit.utils import dhcp
@ -39,7 +39,7 @@ class NTPClientPluginTests(unittest.TestCase):
"start/networkon", "stop/networkoff"])
@mock.patch('time.sleep')
@mock.patch('cloudbaseinit.plugins.windows.ntpclient.NTPClientPlugin.'
@mock.patch('cloudbaseinit.plugins.common.ntpclient.NTPClientPlugin.'
'_set_ntp_trigger_mode')
def _test_check_w32time_svc_status(self, mock_set_ntp_trigger_mode,
mock_sleep, start_mode,
@ -106,9 +106,9 @@ class NTPClientPluginTests(unittest.TestCase):
@testutils.ConfPatcher('ntp_use_dhcp_config', True)
@mock.patch('cloudbaseinit.osutils.factory.get_os_utils')
@mock.patch('cloudbaseinit.utils.dhcp.get_dhcp_options')
@mock.patch('cloudbaseinit.plugins.windows.ntpclient.NTPClientPlugin.'
@mock.patch('cloudbaseinit.plugins.common.ntpclient.NTPClientPlugin.'
'_check_w32time_svc_status')
@mock.patch('cloudbaseinit.plugins.windows.ntpclient.NTPClientPlugin.'
@mock.patch('cloudbaseinit.plugins.common.ntpclient.NTPClientPlugin.'
'_unpack_ntp_hosts')
def _test_execute(self, mock_unpack_ntp_hosts,
mock_check_w32time_svc_status,

View File

@ -19,8 +19,8 @@ try:
except ImportError:
import mock
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.windows import sethostname
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import sethostname
from cloudbaseinit.tests.metadata import fake_json_response
from cloudbaseinit.tests import testutils

View File

@ -20,8 +20,8 @@ except ImportError:
import mock
from oslo.config import cfg
from cloudbaseinit.plugins import constants
from cloudbaseinit.plugins.windows import setuserpassword
from cloudbaseinit.plugins.common import constants
from cloudbaseinit.plugins.common import setuserpassword
from cloudbaseinit.tests.metadata import fake_json_response
from cloudbaseinit.tests import testutils
@ -92,9 +92,9 @@ class SetUserPasswordPluginTests(unittest.TestCase):
with testutils.ConfPatcher('inject_user_password', False):
self._test_get_password(inject_password=False)
@mock.patch('cloudbaseinit.plugins.windows.setuserpassword.'
@mock.patch('cloudbaseinit.plugins.common.setuserpassword.'
'SetUserPasswordPlugin._get_ssh_public_key')
@mock.patch('cloudbaseinit.plugins.windows.setuserpassword.'
@mock.patch('cloudbaseinit.plugins.common.setuserpassword.'
'SetUserPasswordPlugin._encrypt_password')
def _test_set_metadata_password(self, mock_encrypt_password,
mock_get_key, ssh_pub_key):
@ -124,7 +124,7 @@ class SetUserPasswordPluginTests(unittest.TestCase):
def test_set_metadata_password_no_ssh_key(self):
self._test_set_metadata_password(ssh_pub_key=None)
@mock.patch('cloudbaseinit.plugins.windows.setuserpassword.'
@mock.patch('cloudbaseinit.plugins.common.setuserpassword.'
'SetUserPasswordPlugin._get_password')
def test_set_password(self, mock_get_password):
mock_service = mock.MagicMock()
@ -138,9 +138,9 @@ class SetUserPasswordPluginTests(unittest.TestCase):
'fake password')
self.assertEqual(response, 'fake password')
@mock.patch('cloudbaseinit.plugins.windows.setuserpassword.'
@mock.patch('cloudbaseinit.plugins.common.setuserpassword.'
'SetUserPasswordPlugin._set_password')
@mock.patch('cloudbaseinit.plugins.windows.setuserpassword.'
@mock.patch('cloudbaseinit.plugins.common.setuserpassword.'
'SetUserPasswordPlugin._set_metadata_password')
@mock.patch('cloudbaseinit.osutils.factory.get_os_utils')
def test_execute(self, mock_get_os_utils, mock_set_metadata_password,

View File

@ -21,8 +21,8 @@ except ImportError:
import mock
from cloudbaseinit import exception
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.windows import sshpublickeys
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import sshpublickeys
from cloudbaseinit.tests.metadata import fake_json_response
from cloudbaseinit.tests import testutils
@ -53,7 +53,7 @@ class SetUserSSHPublicKeysPluginTests(unittest.TestCase):
self._set_ssh_keys_plugin.execute,
mock_service, fake_shared_data)
else:
with mock.patch('cloudbaseinit.plugins.windows.sshpublickeys'
with mock.patch('cloudbaseinit.plugins.common.sshpublickeys'
'.open',
mock.mock_open(), create=True):
response = self._set_ssh_keys_plugin.execute(mock_service,

View File

@ -23,8 +23,8 @@ except ImportError:
import mock
from cloudbaseinit.metadata.services import base as metadata_services_base
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.windows import userdata
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import userdata
from cloudbaseinit.tests.metadata import fake_json_response
@ -49,9 +49,9 @@ class UserDataPluginTest(unittest.TestCase):
self.fake_data = fake_json_response.get_fake_metadata_json(
'2013-04-04')
@mock.patch('cloudbaseinit.plugins.windows.userdata.UserDataPlugin'
@mock.patch('cloudbaseinit.plugins.common.userdata.UserDataPlugin'
'._process_user_data')
@mock.patch('cloudbaseinit.plugins.windows.userdata.UserDataPlugin'
@mock.patch('cloudbaseinit.plugins.common.userdata.UserDataPlugin'
'._check_gzip_compression')
def _test_execute(self, mock_check_gzip_compression,
mock_process_user_data, ret_val):
@ -111,15 +111,15 @@ class UserDataPluginTest(unittest.TestCase):
mock_get_as_string.return_value)
self.assertEqual(response, mock_message_from_string().walk())
@mock.patch('cloudbaseinit.plugins.windows.userdataplugins.factory.'
@mock.patch('cloudbaseinit.plugins.common.userdataplugins.factory.'
'load_plugins')
@mock.patch('cloudbaseinit.plugins.windows.userdata.UserDataPlugin'
@mock.patch('cloudbaseinit.plugins.common.userdata.UserDataPlugin'
'._parse_mime')
@mock.patch('cloudbaseinit.plugins.windows.userdata.UserDataPlugin'
@mock.patch('cloudbaseinit.plugins.common.userdata.UserDataPlugin'
'._process_part')
@mock.patch('cloudbaseinit.plugins.windows.userdata.UserDataPlugin'
@mock.patch('cloudbaseinit.plugins.common.userdata.UserDataPlugin'
'._end_part_process_event')
@mock.patch('cloudbaseinit.plugins.windows.userdata.UserDataPlugin'
@mock.patch('cloudbaseinit.plugins.common.userdata.UserDataPlugin'
'._process_non_multi_part')
def _test_process_user_data(self, mock_process_non_multi_part,
mock_end_part_process_event,
@ -154,9 +154,9 @@ class UserDataPluginTest(unittest.TestCase):
self._test_process_user_data(user_data=b'Content-Type: non-multipart',
reboot=False)
@mock.patch('cloudbaseinit.plugins.windows.userdata.UserDataPlugin'
@mock.patch('cloudbaseinit.plugins.common.userdata.UserDataPlugin'
'._add_part_handlers')
@mock.patch('cloudbaseinit.plugins.windows.userdata.UserDataPlugin'
@mock.patch('cloudbaseinit.plugins.common.userdata.UserDataPlugin'
'._get_plugin_return_value')
def _test_process_part(self, mock_get_plugin_return_value,
mock_add_part_handlers,
@ -219,7 +219,7 @@ class UserDataPluginTest(unittest.TestCase):
user_data_plugin=user_data_plugin,
content_type=False)
@mock.patch('cloudbaseinit.plugins.windows.userdata.UserDataPlugin'
@mock.patch('cloudbaseinit.plugins.common.userdata.UserDataPlugin'
'._begin_part_process_event')
def _test_add_part_handlers(self, mock_begin_part_process_event, ret_val):
mock_user_data_plugins = mock.MagicMock(spec=dict)
@ -265,9 +265,9 @@ class UserDataPluginTest(unittest.TestCase):
mock_handler_func.assert_called_once_with(None, "__end__", None,
None)
@mock.patch('cloudbaseinit.plugins.windows.userdatautils'
@mock.patch('cloudbaseinit.plugins.common.userdatautils'
'.execute_user_data_script')
@mock.patch('cloudbaseinit.plugins.windows.userdata.UserDataPlugin'
@mock.patch('cloudbaseinit.plugins.common.userdata.UserDataPlugin'
'._get_plugin_return_value')
def test_process_non_multi_part(self, mock_get_plugin_return_value,
mock_execute_user_data_script):
@ -278,9 +278,9 @@ class UserDataPluginTest(unittest.TestCase):
mock_execute_user_data_script())
self.assertEqual(mock_get_plugin_return_value.return_value, response)
@mock.patch('cloudbaseinit.plugins.windows.userdataplugins.factory.'
@mock.patch('cloudbaseinit.plugins.common.userdataplugins.factory.'
'load_plugins')
@mock.patch('cloudbaseinit.plugins.windows.userdata.UserDataPlugin'
@mock.patch('cloudbaseinit.plugins.common.userdata.UserDataPlugin'
'._get_plugin_return_value')
def test_process_non_multi_part_cloud_config(
self, mock_get_plugin_return_value, mock_load_plugins):

View File

@ -22,7 +22,7 @@ except ImportError:
import mock
from cloudbaseinit.plugins.common import execcmd
from cloudbaseinit.plugins.windows import userdatautils
from cloudbaseinit.plugins.common import userdatautils
def _safe_remove(filepath):
@ -74,16 +74,17 @@ class UserDataUtilsTest(unittest.TestCase):
retval = userdatautils.execute_user_data_script(b"unknown")
self.assertEqual(0, retval)
@mock.patch('cloudbaseinit.plugins.windows.userdatautils.'
@mock.patch('cloudbaseinit.plugins.common.userdatautils.'
'_get_command')
def test_execute_user_data_script_fails(self, mock_get_command, _):
mock_get_command.return_value.side_effect = ValueError
retval = userdatautils.execute_user_data_script(
mock.sentinel.user_data)
self.assertEqual(0, retval)
@mock.patch('cloudbaseinit.plugins.windows.userdatautils.'
@mock.patch('cloudbaseinit.plugins.common.userdatautils.'
'_get_command')
def test_execute_user_data_script(self, mock_get_command, _):
mock_get_command.return_value.return_value = (

View File

@ -18,11 +18,8 @@ try:
import unittest.mock as mock
except ImportError:
import mock
from oslo.config import cfg
from cloudbaseinit.plugins.windows.userdataplugins import cloudboothook
CONF = cfg.CONF
from cloudbaseinit.plugins.common.userdataplugins import cloudboothook
class CloudBootHookPluginTests(unittest.TestCase):
@ -30,7 +27,7 @@ class CloudBootHookPluginTests(unittest.TestCase):
def setUp(self):
self._cloud_hook = cloudboothook.CloudBootHookPlugin()
@mock.patch('cloudbaseinit.plugins.windows.userdataplugins.base'
@mock.patch('cloudbaseinit.plugins.common.userdataplugins.base'
'.BaseUserDataPlugin.get_mime_type')
def test_process(self, mock_get_mime_type):
mock_part = mock.MagicMock()

View File

@ -21,7 +21,7 @@ except ImportError:
from oslo.config import cfg
from cloudbaseinit.plugins.windows.userdataplugins import cloudconfig
from cloudbaseinit.plugins.common.userdataplugins import cloudconfig
from cloudbaseinit.tests import testutils
CONF = cfg.CONF
@ -41,6 +41,7 @@ class CloudConfigPluginTests(unittest.TestCase):
('dummy1', 2),
('invalid', 3),
]
try:
executor = cloudconfig.CloudConfigPluginExecutor(
dummy=1,
@ -62,7 +63,7 @@ class CloudConfigPluginTests(unittest.TestCase):
self.assertIsInstance(executor, cloudconfig.CloudConfigPluginExecutor)
def test_invalid_type(self):
with testutils.LogSnatcher('cloudbaseinit.plugins.windows.'
with testutils.LogSnatcher('cloudbaseinit.plugins.common.'
'userdataplugins.cloudconfig') as snatcher:
self.plugin.process_non_multipart({'unsupported'})

View File

@ -18,11 +18,8 @@ try:
import unittest.mock as mock
except ImportError:
import mock
from oslo.config import cfg
from cloudbaseinit.plugins.windows.userdataplugins import factory
CONF = cfg.CONF
from cloudbaseinit.plugins.common.userdataplugins import factory
class UserDataPluginsFactoryTests(unittest.TestCase):

View File

@ -21,7 +21,7 @@ except ImportError:
import mock
from oslo.config import cfg
from cloudbaseinit.plugins.windows.userdataplugins import heat
from cloudbaseinit.plugins.common.userdataplugins import heat
CONF = cfg.CONF
@ -47,9 +47,9 @@ class HeatUserDataHandlerTests(unittest.TestCase):
mock_exists.assert_called_once_with(fake_dir)
mock_makedirs.assert_called_once_with(fake_dir)
@mock.patch('cloudbaseinit.plugins.windows.userdatautils'
@mock.patch('cloudbaseinit.plugins.common.userdatautils'
'.execute_user_data_script')
@mock.patch('cloudbaseinit.plugins.windows.userdataplugins.heat'
@mock.patch('cloudbaseinit.plugins.common.userdataplugins.heat'
'.HeatPlugin._check_dir')
@mock.patch('cloudbaseinit.utils.encoding.write_file')
def _test_process(self, mock_write_file, mock_check_dir,

View File

@ -19,11 +19,8 @@ try:
import unittest.mock as mock
except ImportError:
import mock
from oslo.config import cfg
from cloudbaseinit.plugins.windows.userdataplugins import parthandler
CONF = cfg.CONF
from cloudbaseinit.plugins.common.userdataplugins import parthandler
class PartHandlerPluginTests(unittest.TestCase):
@ -41,7 +38,7 @@ class PartHandlerPluginTests(unittest.TestCase):
mock_load_module.return_value = mock_part_handler
mock_part_handler.list_types.return_value = ['fake part']
with mock.patch('cloudbaseinit.plugins.windows.userdataplugins.'
with mock.patch('cloudbaseinit.plugins.common.userdataplugins.'
'parthandler.open',
mock.mock_open(read_data='fake data'), create=True):
response = self._parthandler.process(mock_part)

View File

@ -20,7 +20,8 @@ try:
except ImportError:
import mock
from cloudbaseinit.plugins.windows.userdataplugins import shellscript
from cloudbaseinit.plugins.common.userdataplugins import shellscript
class ShellScriptPluginTests(unittest.TestCase):
@ -30,7 +31,7 @@ class ShellScriptPluginTests(unittest.TestCase):
@mock.patch('cloudbaseinit.osutils.factory.get_os_utils')
@mock.patch('tempfile.gettempdir')
@mock.patch('cloudbaseinit.plugins.windows.fileexecutils.exec_file')
@mock.patch('cloudbaseinit.plugins.common.fileexecutils.exec_file')
@mock.patch('cloudbaseinit.utils.encoding.write_file')
def _test_process(self, mock_write_file, mock_exec_file, mock_gettempdir,
mock_get_os_utils, exception=False):
@ -45,7 +46,7 @@ class ShellScriptPluginTests(unittest.TestCase):
if exception:
mock_exec_file.side_effect = [Exception]
with mock.patch("cloudbaseinit.plugins.windows.userdataplugins."
with mock.patch("cloudbaseinit.plugins.common.userdataplugins."
"shellscript.open", mock.mock_open(), create=True):
response = self._shellscript.process(mock_part)

View File

@ -20,7 +20,7 @@ except ImportError:
import mock
from oslo.config import cfg
from cloudbaseinit.plugins import factory
from cloudbaseinit.plugins.common import factory
CONF = cfg.CONF

View File

@ -21,7 +21,7 @@ except ImportError:
import mock
from cloudbaseinit import exception
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.windows import licensing
from cloudbaseinit.tests import testutils

View File

@ -20,8 +20,8 @@ except ImportError:
import mock
import six
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.windows import mtu
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import mtu
from cloudbaseinit.utils import dhcp
@ -56,7 +56,7 @@ class MTUPluginTests(unittest.TestCase):
return_value)
def test_disabled_use_dhcp(self, mock_get_os_utils):
with mock.patch('cloudbaseinit.plugins.windows.'
with mock.patch('cloudbaseinit.plugins.common.'
'mtu.CONF') as mock_conf:
mock_conf.mtu_use_dhcp_config = False

View File

@ -19,14 +19,10 @@ try:
import unittest.mock as mock
except ImportError:
import mock
from oslo.config import cfg
from cloudbaseinit import exception
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins import constants
CONF = cfg.CONF
from cloudbaseinit.plugins.common import base
from cloudbaseinit.plugins.common import constants
class ConfigWinRMCertificateAuthPluginTests(unittest.TestCase):

View File

@ -21,8 +21,7 @@ except ImportError:
import mock
from oslo.config import cfg
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.common import base
CONF = cfg.CONF

View File

@ -22,7 +22,7 @@ except ImportError:
from oslo.config import cfg
from cloudbaseinit import init
from cloudbaseinit.plugins import base
from cloudbaseinit.plugins.common import base
CONF = cfg.CONF
@ -138,7 +138,7 @@ class InitManagerTest(unittest.TestCase):
@mock.patch('cloudbaseinit.init.InitManager'
'._check_plugin_os_requirements')
@mock.patch('cloudbaseinit.init.InitManager._exec_plugin')
@mock.patch('cloudbaseinit.plugins.factory.load_plugins')
@mock.patch('cloudbaseinit.plugins.common.factory.load_plugins')
@mock.patch('cloudbaseinit.osutils.factory.get_os_utils')
@mock.patch('cloudbaseinit.metadata.factory.get_metadata_service')
def test_configure_host(self, mock_get_metadata_service,