def update_website_config()

in Infra/lib/custom-resources/upload-website-config/app.py [0:0]


def update_website_config(s3_bucket, s3_key, website_config, distribution_id):
    logger.info(f"Updating config file {s3_key}")
    s3_client.put_object(Body=website_config, Bucket=s3_bucket, Key=s3_key)

    logger.info(f"Invalidating Cloudfront distribution {distribution_id}")
    cloudfront_client.create_invalidation(
        DistributionId=distribution_id,
        InvalidationBatch={
            'Paths': {
                'Quantity': 1,
                'Items': [f'/{s3_key}']
            },
            'CallerReference': str(uuid4()),
        })

    logger.info(f"Website config updated succesfully")