From f02a5a32e1ffdae83f99bcda528b45d0f93a8c1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Mi=C4=85cz?= Date: Thu, 12 Jan 2023 11:42:13 +0100 Subject: [PATCH] Retry failed CF cache invalidations (#2957) --- .github/workflows/deploy-cloud.yaml | 4 ++-- .github/workflows/deploy-demo-staging.yaml | 4 ++-- .github/workflows/deploy-demo.yaml | 2 +- .github/workflows/deploy-master-staging.yaml | 2 +- .github/workflows/deploy-staging.yaml | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/deploy-cloud.yaml b/.github/workflows/deploy-cloud.yaml index d6fee39f0..4f9d06610 100644 --- a/.github/workflows/deploy-cloud.yaml +++ b/.github/workflows/deploy-cloud.yaml @@ -62,9 +62,9 @@ jobs: aws s3 sync build/dashboard s3://${BUCKET}/${ENVIRONMENT}/static/ aws s3 cp build/dashboard/index.html s3://${BUCKET}/${ENVIRONMENT}/ - aws cloudfront create-invalidation --distribution-id ${CF_ID} --paths "/dashboard*" + for i in {1..3}; do aws cloudfront create-invalidation --distribution-id ${CF_ID} --paths "/dashboard*" && break || sleep 5; done if [[ -n "$CF_2_ID" ]]; then - aws cloudfront create-invalidation --distribution-id ${CF_2_ID} --paths "/dashboard*" + for i in {1..3}; do aws cloudfront create-invalidation --distribution-id ${CF_2_ID} --paths "/dashboard*" && break || sleep 5; done fi - name: Notify Slack if: ${{ always() }} diff --git a/.github/workflows/deploy-demo-staging.yaml b/.github/workflows/deploy-demo-staging.yaml index 9cbf3e02d..6f097d647 100644 --- a/.github/workflows/deploy-demo-staging.yaml +++ b/.github/workflows/deploy-demo-staging.yaml @@ -2,7 +2,7 @@ name: Deploy to staging demo on: push: tags: - - 3.8** + - 3.9** workflow_dispatch: inputs: git_ref: @@ -54,7 +54,7 @@ jobs: run: | aws s3 sync build/dashboard s3://${{ secrets.AWS_DEMO_STAGING_DEPLOYMENT_BUCKET }}/dashboard/static/ aws s3 cp build/dashboard/index.html s3://${{ secrets.AWS_DEMO_STAGING_DEPLOYMENT_BUCKET }}/dashboard/ - aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_DEMO_STAGING_CF_DIST_ID }} --paths "/dashboard*" + for i in {1..3}; do aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_DEMO_STAGING_CF_DIST_ID }} --paths "/dashboard*" && break || sleep 5; done - name: Prepare Demo release pull request run: | export GITHUB_TOKEN=$( \ diff --git a/.github/workflows/deploy-demo.yaml b/.github/workflows/deploy-demo.yaml index 49f7e176f..b4bf6a59c 100644 --- a/.github/workflows/deploy-demo.yaml +++ b/.github/workflows/deploy-demo.yaml @@ -49,7 +49,7 @@ jobs: run: | aws s3 sync build/dashboard s3://${{ secrets.AWS_DEMO_DEPLOYMENT_BUCKET }}/dashboard/static/ aws s3 cp build/dashboard/index.html s3://${{ secrets.AWS_DEMO_DEPLOYMENT_BUCKET }}/dashboard/ - aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_DEMO_CF_DIST_ID }} --paths "/dashboard*" + for i in {1..3}; do aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_DEMO_CF_DIST_ID }} --paths "/dashboard*" && break || sleep 5; done - name: Notify Slack if: ${{ always() }} env: diff --git a/.github/workflows/deploy-master-staging.yaml b/.github/workflows/deploy-master-staging.yaml index 76c3ad965..fd8be7ec7 100644 --- a/.github/workflows/deploy-master-staging.yaml +++ b/.github/workflows/deploy-master-staging.yaml @@ -50,7 +50,7 @@ jobs: run: | aws s3 sync build/dashboard s3://${{ secrets.AWS_STAGING_DEPLOYMENT_BUCKET }}/${ENVIRONMENT}/static/ aws s3 cp build/dashboard/index.html s3://${{ secrets.AWS_STAGING_DEPLOYMENT_BUCKET }}/${ENVIRONMENT}/ - aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_STAGING_CF_DIST_ID }} --paths "/dashboard*" + for i in {1..3}; do aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_STAGING_CF_DIST_ID }} --paths "/dashboard*" && break || sleep 5; done - name: Notify Slack if: ${{ always() }} diff --git a/.github/workflows/deploy-staging.yaml b/.github/workflows/deploy-staging.yaml index 387d84b6c..673610371 100644 --- a/.github/workflows/deploy-staging.yaml +++ b/.github/workflows/deploy-staging.yaml @@ -68,7 +68,7 @@ jobs: run: | aws s3 sync build/dashboard s3://${{ secrets.AWS_STAGING_DEPLOYMENT_BUCKET }}/${ENVIRONMENT}/static/ aws s3 cp build/dashboard/index.html s3://${{ secrets.AWS_STAGING_DEPLOYMENT_BUCKET }}/${ENVIRONMENT}/ - aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_STAGING_CF_DIST_ID }} --paths "/dashboard*" + for i in {1..3}; do aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_STAGING_CF_DIST_ID }} --paths "/dashboard*" && break || sleep 5; done - name: Prepare Sandbox release pull request run: |