How to invalidate a Cloudfront Distribution using the Python CDK?

0

This is for a static site served from an s3 bucket.

I have this:

distribution = aws_cloudfront.Distribution.from_distribution_attributes(self,
                                                                                id="ImportedDistribution",
                                                                                domain_name='https://hgfdh.cloudfront.net',
                                                                                distribution_id='hgfdhgfdh')

        #now invalidate the distribution
        distribution.invalidate(
            aws_cloudfront.InvalidationBatch(
                paths=['/*'],
                caller_reference=f'Invalidate {distribution.distribution_id}'
            )
        )

but I get: AttributeError: '<class 'aws_cdk.Resource'>+<class 'aws_cdk.aws_cloudfront._IDistributionProxy'>' object has no attribute 'invalidate'

1回答
1

I think this is correct, you do it as part of the BucketDepolyment:

aws_s3_deployment.BucketDeployment(self, "DeployWithInvalidation",
                                           sources=[aws_s3_deployment.Source.asset("./build/fdsf')],
                                           destination_bucket=website_bucket,
                                           distribution=distribution,
                                           distribution_paths=['/*'],
                                           )

https://docs.aws.amazon.com/cdk/api/v2/python/aws_cdk.aws_s3_deployment/README.html#cloudfront-invalidation

Mick B
回答済み 5ヶ月前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ