def test_should_not_set_when_the_uid_state_is_already_off(self):
        server_hardware_uri = "resourceuri"
        server_hardware = {"uri": server_hardware_uri, "uidState": "Off"}

        self.resource.get_by.return_value = [server_hardware]

        self.mock_ansible_module.params = yaml.load(
            YAML_SERVER_HARDWARE_UID_STATE_OFF)

        ServerHardwareModule().run()

        self.resource.patch.assert_not_called()
        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            msg=ServerHardwareModule.MSG_NOTHING_TO_DO,
            ansible_facts=dict(server_hardware=server_hardware))
    def test_should_calibrate_max_power_server_hardware(self):
        self.resource.get_by.return_value = [{"name": "name", "uri": "uri"}]

        self.resource.update_environmental_configuration.return_value = {
            "name": "name"
        }

        self.mock_ansible_module.params = yaml.load(
            YAML_SERVER_HARDWARE_SET_CALIBRATED_MAX_POWER)

        ServerHardwareModule().run()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            msg=ServerHardwareModule.MSG_ENV_CONFIG_UPDATED,
            ansible_facts=dict(server_hardware={"name": "name"}))
Exemplo n.º 3
0
    def test_should_not_set_when_the_maintenance_mode_is_already_false(self):
        server_hardware_uri = "resourceuri"
        server_hardware = {"uri": server_hardware_uri, "maintenanceMode": "false"}

        self.resource.data = server_hardware

        self.mock_ansible_module.params = yaml.load(YAML_SERVER_HARDWARE_DISABLE_MAINTENANCE_MODE)

        ServerHardwareModule().run()

        self.resource.patch.assert_not_called()
        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            msg=ServerHardwareModule.MSG_NOTHING_TO_DO,
            ansible_facts=dict(server_hardware=server_hardware)
        )
Exemplo n.º 4
0
    def test_should_disable_maintenance_mode(self):
        server_hardware_uri = "resourceuri"

        self.resource.data = {"uri": server_hardware_uri, "maintenanceMode": "true"}

        self.mock_ansible_module.params = yaml.load(YAML_SERVER_HARDWARE_DISABLE_MAINTENANCE_MODE)

        ServerHardwareModule().run()
        patch_params = ServerHardwareModule.patch_params['disable_maintenance_mode']
        self.resource.patch.assert_called_once_with(**patch_params)

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            msg=ServerHardwareModule.MSG_MAINTENANCE_MODE_CHANGED,
            ansible_facts=dict(server_hardware=self.resource.data)
        )
    def test_should_do_nothing_when_scopes_are_the_same(self):
        params_to_scope = yaml.load(YAML_SERVER_HARDWARE_PRESENT).copy()
        params_to_scope['data']['scopeUris'] = ['/fake/test']
        get_results = params_to_scope['data'].copy()
        get_results['password'] = None
        self.mock_ansible_module.params = params_to_scope

        self.resource.data = get_results

        ServerHardwareModule().run()

        self.resource.patch.not_been_called()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            ansible_facts=dict(server_hardware=get_results),
            msg=ServerHardwareModule.MSG_ALREADY_PRESENT)
    def test_should_set_off_the_uid_state(self):
        server_hardware_uri = "resourceuri"

        self.resource.data = {"uri": server_hardware_uri, "uidState": "On"}

        self.mock_ansible_module.params = yaml.load(
            YAML_SERVER_HARDWARE_UID_STATE_OFF)

        ServerHardwareModule().run()

        patch_params = ServerHardwareModule.patch_params['uid_state_off']
        self.resource.patch.assert_called_once_with(**patch_params)

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            msg=ServerHardwareModule.MSG_UID_STATE_CHANGED,
            ansible_facts=dict(server_hardware=self.resource.data))
    def test_should_reset_ilo_state(self):
        server_hardware_uri = "resourceuri"

        self.resource.data = {"uri": server_hardware_uri}

        self.mock_ansible_module.params = yaml.load(
            YAML_SERVER_HARDWARE_ILO_STATE_RESET)

        ServerHardwareModule().run()

        patch_params = ServerHardwareModule.patch_params['ilo_state_reset']
        self.resource.patch.assert_called_once_with(**patch_params)

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            msg=ServerHardwareModule.MSG_ILO_STATE_RESET,
            ansible_facts=dict(server_hardware=self.resource.data))
Exemplo n.º 8
0
    def test_should_set_on_the_uid_state(self):
        server_hardware_uri = "resourceuri"

        self.resource.get_by.return_value = [{"uri": server_hardware_uri, "uidState": "Off"}]
        self.resource.patch.return_value = {"name": "name"}

        self.mock_ansible_module.params = yaml.load(YAML_SERVER_HARDWARE_UID_STATE_ON)

        ServerHardwareModule().run()

        patch_params = ServerHardwareModule.patch_params['uid_state_on']
        self.resource.patch.assert_called_once_with(id_or_uri=server_hardware_uri, **patch_params)

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            msg=ServerHardwareModule.MSG_UID_STATE_CHANGED,
            ansible_facts=dict(server_hardware={"name": "name"})
        )
    def test_should_not_set_when_one_time_boot_is_already_network(self):
        server_hardware_uri = "resourceuri"
        server_hardware = {
            "uri": server_hardware_uri,
            "oneTimeBoot": "NETWORK"
        }

        self.resource.data = server_hardware

        self.mock_ansible_module.params = yaml.load(
            YAML_SERVER_HARDWARE_ONE_TIME_BOOT_AS_NETWORK)

        ServerHardwareModule().run()

        self.resource.patch.assert_not_called()
        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            msg=ServerHardwareModule.MSG_NOTHING_TO_DO,
            ansible_facts=dict(server_hardware=server_hardware))
    def test_should_set_one_time_boot_to_hdd(self):
        server_hardware_uri = "resourceuri"

        self.resource.data = {
            "uri": server_hardware_uri,
            "oneTimeBoot": "NORMAL"
        }

        self.mock_ansible_module.params = yaml.load(
            YAML_SERVER_HARDWARE_ONE_TIME_BOOT_AS_HDD)

        ServerHardwareModule().run()

        patch_params = ServerHardwareModule.patch_params['one_time_boot_hdd']
        self.resource.patch.assert_called_once_with(**patch_params)

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            msg=ServerHardwareModule.MSG_ONE_TIME_BOOT_CHANGED,
            ansible_facts=dict(server_hardware=self.resource.data))
    def test_update_scopes_when_different(self):
        params_to_scope = yaml.load(YAML_SERVER_HARDWARE_PRESENT).copy()
        params_to_scope['data']['scopeUris'] = ['/fake/test']
        get_results = params_to_scope['data'].copy()
        get_results['password'] = None
        get_results['scopeUris'] = []
        get_results['uri'] = '/rest/server-hardware/fake'
        self.mock_ansible_module.params = params_to_scope

        self.resource.data = get_results
        obj = mock.Mock()
        obj.data = params_to_scope['data']
        self.resource.patch.return_value = obj

        ServerHardwareModule().run()

        self.resource.patch.assert_called_once_with(operation='replace',
                                                    path='/scopeUris',
                                                    value=['/fake/test'])

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            ansible_facts=dict(server_hardware=params_to_scope['data']),
            msg=ServerHardwareModule.MSG_UPDATED)