def delete_ses_dns_records_and_bucket(domain, hosted_zone):
    LOGGER.info("Deleting DNS records that configure e-mail for your domain")
    domain = normalize_domain(domain)
    hosted_zone = normalize_hosted_zone(hosted_zone)
    stack_handler = get_stack_action_handler(domain, hosted_zone)

    stacks_dict = stack_handler.cfn.get_stacks_outputs()
    bucket_stack_outputs = stacks_dict[get_bucket_stack_name(domain)]
    bucket_name = bucket_stack_outputs['bucketName']
    LOGGER.info("Deleting all items in S3 bucket %r to prepare stack deletion",
                bucket_name)
    delete_items_in_bucket(bucket_name)

    retry(delay=10)(stack_handler.delete_stacks)()
    LOGGER.info("Deletion of DNS records and mail bucket complete")
Beispiel #2
0
    def test_retry_actually_retries(self):
        helper = mock.Mock()
        helper.side_effect = [Exception, 42]
        helper.__name__ = "workaround for mock failure"

        retry_helper = retry(helper)

        self.assertEqual(retry_helper(), 42)
Beispiel #3
0
    def test_retry_passes_exceptions(self):
        @retry
        def helper():
            raise TypeError("some exception")
        self.assertRaises(TypeError, helper)

        helper2 = retry(lambda: 1 / 0)
        self.assertRaises(ZeroDivisionError, helper2)
Beispiel #4
0
    def test_retry_passes_return_value(self):
        my_function = retry(lambda: 42)
        self.assertEqual(my_function(), 42)

        @retry
        def my_function2():
            return 43
        self.assertEqual(my_function2(), 43)
Beispiel #5
0
    def test_retry_actually_retries(self):
        helper = mock.Mock()
        helper.side_effect = [Exception, 42]
        helper.__name__ = "workaround for mock failure"

        retry_helper = retry(helper)

        self.assertEqual(retry_helper(), 42)
Beispiel #6
0
    def test_retry_passes_return_value(self):
        my_function = retry(lambda: 42)
        self.assertEqual(my_function(), 42)

        @retry
        def my_function2():
            return 43

        self.assertEqual(my_function2(), 43)
Beispiel #7
0
    def test_retry_passes_exceptions(self):
        @retry
        def helper():
            raise TypeError("some exception")

        self.assertRaises(TypeError, helper)

        helper2 = retry(lambda: 1 / 0)
        self.assertRaises(ZeroDivisionError, helper2)
Beispiel #8
0
    def test_explicit_retry_uses_the_attempts_parameter(self):
        for num_attempts in 1, 2:
            helper = mock.Mock()
            helper.side_effect = [Exception, 42]
            helper.__name__ = "workaround for mock failure"

            retry_helper = retry(helper, attempts=num_attempts)
            if num_attempts == 1:
                self.assertRaises(Exception, retry_helper)
            else:
                self.assertEqual(retry_helper(), 42)
Beispiel #9
0
    def test_explicit_retry_uses_the_attempts_parameter(self):
        for num_attempts in 1, 2:
            helper = mock.Mock()
            helper.side_effect = [Exception, 42]
            helper.__name__ = "workaround for mock failure"

            retry_helper = retry(helper, attempts=num_attempts)
            if num_attempts == 1:
                self.assertRaises(Exception, retry_helper)
            else:
                self.assertEqual(retry_helper(), 42)
Beispiel #10
0
    def test_excplicit_retry_uses_delay_parameter(self):
        helper = mock.Mock()
        helper.side_effect = [Exception, 42]
        helper.__name__ = "workaround for mock failure"

        retry_helper = retry(helper, delay=0.5)

        start = time.time()
        self.assertEqual(retry_helper(), 42)
        stop = time.time()

        delta = stop - start
        self.assertGreater(delta, 0.5)
Beispiel #11
0
    def test_excplicit_retry_uses_delay_parameter(self):
        helper = mock.Mock()
        helper.side_effect = [Exception, 42]
        helper.__name__ = "workaround for mock failure"

        retry_helper = retry(helper, delay=0.5)

        start = time.time()
        self.assertEqual(retry_helper(), 42)
        stop = time.time()

        delta = stop - start
        self.assertGreater(delta, 0.5)