def test_create_or_update_tests_exits_gracefully_if_preexisting_stack_disappears(self, custom_resource_mock, stack_mock, template_loader_mock, dependency_resolver_mock, parameter_resolver_mock, cfn_mock, config_mock): dependency_resolver_mock.return_value.get_stack_order.return_value = ['a', 'c'] cfn_mock.return_value.get_stack_names.return_value = ['a', 'd'] config_mock.return_value.tags.return_value = {} stack_a = CloudFormationStack('', [], 'a', '') stack_c = CloudFormationStack('', [], 'c', '') def stack_side_effect(*args, **kwargs): if kwargs['name'] == 'a': return stack_a if kwargs['name'] == 'c': return stack_c return None stack_mock.side_effect = stack_side_effect handler = StackActionHandler(config_mock) handler.create_or_update_stacks() # stack a needs update cfn_mock.return_value.validate_stack_is_ready_for_action.assert_called_once_with(stack_a) cfn_mock.return_value.update_stack.assert_called_once_with(stack_a) # stack c doesn't exist, must be created cfn_mock.return_value.create_stack.assert_called_once_with(stack_c)
def sync_stacks_with_parameters_overwrite(self, cli_params): config = Config(config_file=os.path.join(self.test_resources_dir, "stacks.yml"), cli_params=cli_params) stack_handler = StackActionHandler(config) self.logger.info("Syncing stacks") stack_handler.create_or_update_stacks()
def test_create_or_update_tests_exits_gracefully_if_preexisting_stack_disappears( self, custom_resource_mock, stack_mock, template_loader_mock, dependency_resolver_mock, parameter_resolver_mock, cfn_mock): dependency_resolver_mock.return_value.get_stack_order.return_value = [ 'a', 'c' ] cfn_mock.return_value.get_stack_names.return_value = ['a', 'd'] stack_a = CloudFormationStack('', [], 'a', '') stack_c = CloudFormationStack('', [], 'c', '') def stack_side_effect(*args, **kwargs): if kwargs['name'] == 'a': return stack_a if kwargs['name'] == 'c': return stack_c return None stack_mock.side_effect = stack_side_effect handler = StackActionHandler(Mock()) handler.create_or_update_stacks() # stack a needs update cfn_mock.return_value.validate_stack_is_ready_for_action.assert_called_once_with( stack_a) cfn_mock.return_value.update_stack.assert_called_once_with(stack_a) # stack c doesn't exist, must be created cfn_mock.return_value.create_stack.assert_called_once_with(stack_c)
def sync_stacks_with_parameters_overwrite(self, cli_params): config = Config(config_file=os.path.join(self.test_resources_dir, "stacks.yml"), cli_params=cli_params) stack_handler = StackActionHandler(config) self.logger.info("Syncing stacks") stack_handler.create_or_update_stacks()
def sync_stacks(self): stack_handler = StackActionHandler(self.config) self.logger.info("Syncing stacks") stack_handler.create_or_update_stacks()
def sync_stacks(self): stack_handler = StackActionHandler(self.config) self.logger.info("Syncing stacks") stack_handler.create_or_update_stacks()