コード例 #1
0
def test_create_bucket(logs_bucket, s3):
    bucket_name = f'bucket-{id(MagicMock())}'
    bucket = s3.Bucket(bucket_name)

    with pytest.raises(s3.meta.client.exceptions.NoSuchBucket):
        s3.meta.client.get_bucket_location(Bucket=bucket_name)

    aws.create_bucket(bucket_name, is_data_warehouse=True)

    # Check versioning.
    assert bucket.Versioning().status == "Enabled"

    # Check lifecycle.
    versioning = bucket.LifecycleConfiguration()
    rule = versioning.rules[0]
    assert rule["ID"].endswith("_lifecycle_configuration")
    assert rule["Status"] == "Enabled"
    assert rule["NoncurrentVersionTransitions"][0]["NoncurrentDays"] == 30
    assert rule["NoncurrentVersionTransitions"][0]["StorageClass"] == "GLACIER"

    # Check logging
    assert bucket.Logging(
    ).logging_enabled['TargetBucket'] == settings.LOGS_BUCKET_NAME
    # Check tagging
    tags = {tag["Key"]: tag["Value"] for tag in bucket.Tagging().tag_set}
    assert tags["buckettype"] == "datawarehouse"
コード例 #2
0
def test_create_bucket(logs_bucket, s3):
    bucket_name = f'bucket-{id(MagicMock())}'
    bucket = s3.Bucket(bucket_name)

    with pytest.raises(s3.meta.client.exceptions.NoSuchBucket):
        s3.meta.client.get_bucket_location(Bucket=bucket_name)

    aws.create_bucket(bucket_name, is_data_warehouse=True)

    # Check logging
    assert bucket.Logging(
    ).logging_enabled['TargetBucket'] == settings.LOGS_BUCKET_NAME
    # Check tagging
    tags = {tag["Key"]: tag["Value"] for tag in bucket.Tagging().tag_set}
    assert tags["buckettype"] == "datawarehouse"
 def create(self):
     return aws.create_bucket(self.bucket.name,
                              self.bucket.is_data_warehouse)