From edf0c51aa4380707b7dbe8838d892c952e7eb285 Mon Sep 17 00:00:00 2001 From: Michel Andrade Date: Tue, 25 Feb 2025 14:23:41 -0300 Subject: [PATCH 1/5] fix s3 sync --- .github/workflows/prod-deploy.yaml | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/.github/workflows/prod-deploy.yaml b/.github/workflows/prod-deploy.yaml index 0346b93..f393514 100644 --- a/.github/workflows/prod-deploy.yaml +++ b/.github/workflows/prod-deploy.yaml @@ -59,18 +59,13 @@ jobs: mkdir -p ./dist/websdk/v7 mv ./dist/v7/* ./dist/websdk/v7/ - - name: Deploy - if: github.event.inputs.dry_run != 'true' - uses: reggionick/s3-deploy@v4 - with: - folder: ./dist/websdk - bucket: cdn.ingresse.com - bucket-region: ${{ vars.AWS_REGION }} - dist-id: ${{ vars.CF_DISTRIBUTION_ID }} - invalidation: / - delete-removed: true - no-cache: true - private: true + - name: Sync Build to S3 + run: | + if [ "${{ github.event.inputs.dry_run }}" == "true" ]; then + echo "Dry-run: Would have synced ./dist/v7/ to s3://cdn.ingresse.com/websdk/v7" + else + aws s3 cp ./dist/v7/ s3://cdn.ingresse.com/websdk/v7 --recursive + fi - name: Invalidate CloudFront Cache env: From c49abd2d4cec60b6418a72708b46c5201af4ab7b Mon Sep 17 00:00:00 2001 From: Michel Andrade Date: Tue, 25 Feb 2025 15:27:38 -0300 Subject: [PATCH 2/5] add slack visibility --- .github/workflows/prod-deploy.yaml | 50 ++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/.github/workflows/prod-deploy.yaml b/.github/workflows/prod-deploy.yaml index f393514..39c7e0e 100644 --- a/.github/workflows/prod-deploy.yaml +++ b/.github/workflows/prod-deploy.yaml @@ -26,6 +26,17 @@ jobs: - name: Checkout code uses: actions/checkout@v4 + - name: Determine Slack Config + id: slack_config + run: | + if [ "true" == "true" ]; then + echo "slack_channel=${{ vars.SLACK_CH_TEST }}" >> $GITHUB_ENV + echo "slack_token=${{ secrets.SLACK_BOT_TOKEN_TEST }}" >> $GITHUB_ENV + else + echo "slack_channel=${{ vars.SLACK_CH_TECH_DEPLOY }}" >> $GITHUB_ENV + echo "slack_token=${{ secrets.SLACK_BOT_TOKEN }}" >> $GITHUB_ENV + fi + - name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@v4 with: @@ -38,6 +49,21 @@ jobs: with: node-version: 10 + - name: Notify start of Deployment in Slack + id: deployment_message + uses: slackapi/slack-github-action@v2.0.0 + with: + method: chat.postMessage + token: ${{ env.slack_token }} + payload: | + channel: ${{ env.slack_channel }} + text: | + :rocket: *Deploy iniciado* + *Repo:* <${{ github.event.repository.html_url }}|${{ github.event.repository.name }}> + *Branch:* ${{ github.ref_name }} + *Commit:* ${{ github.event.head_commit.url }} + *Responsável:* ${{ github.actor }} + - name: Project | PreBuild run: | if [ "${{ github.event.inputs.dry_run }}" == "true" ]; then @@ -91,3 +117,27 @@ jobs: ] }' fi + + - name: Notify success of deployment in Slack + uses: slackapi/slack-github-action@v2.0.0 + if: success() + with: + method: chat.postMessage + token: ${{ env.slack_token }} + payload: | + channel: ${{ env.slack_channel }} + thread_ts: "${{ steps.deployment_message.outputs.ts }}" + type: "in_thread" + text: ":white_check_mark: *Deploy concluído*\n*App:* Backoffice-Web\n*Ambiente:* Production" + + - name: Notify failure of deployment in Slack + uses: slackapi/slack-github-action@v2.0.0 + if: failure() + with: + method: chat.postMessage + token: ${{ env.slack_token }} + payload: | + channel: ${{ env.slack_channel }} + thread_ts: "${{ steps.deployment_message.outputs.ts }}" + type: "in_thread" + text: ":x: *Deploy falhou*\n*App:* Backoffice-Web\n*Ambiente:* Production" From 9824c57fc5661a1091507c990353af5a1233d8a1 Mon Sep 17 00:00:00 2001 From: Michel Andrade Date: Tue, 25 Feb 2025 16:14:07 -0300 Subject: [PATCH 3/5] adjust variables --- .github/workflows/prod-deploy.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/prod-deploy.yaml b/.github/workflows/prod-deploy.yaml index 39c7e0e..399a402 100644 --- a/.github/workflows/prod-deploy.yaml +++ b/.github/workflows/prod-deploy.yaml @@ -19,7 +19,7 @@ on: jobs: deploy: name: Deploy - runs-on: ${{ vars.DEFAULT_ACTIONS_IMAGE }} + runs-on: ubuntu-22.04 environment: production steps: @@ -89,6 +89,7 @@ jobs: run: | if [ "${{ github.event.inputs.dry_run }}" == "true" ]; then echo "Dry-run: Would have synced ./dist/v7/ to s3://cdn.ingresse.com/websdk/v7" + aws s3 cp ./dist/v7/ s3://cdn.ingresse.com/websdk/v7 --recursive --dryrun else aws s3 cp ./dist/v7/ s3://cdn.ingresse.com/websdk/v7 --recursive fi From 6e0da06cb5f5fdf9188e5d747f4b51af8d5ddbd4 Mon Sep 17 00:00:00 2001 From: Michel Andrade Date: Tue, 25 Feb 2025 16:15:40 -0300 Subject: [PATCH 4/5] remove unecessary step --- .github/workflows/prod-deploy.yaml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/prod-deploy.yaml b/.github/workflows/prod-deploy.yaml index 399a402..5d0f8a1 100644 --- a/.github/workflows/prod-deploy.yaml +++ b/.github/workflows/prod-deploy.yaml @@ -80,11 +80,6 @@ jobs: npm run build fi - - name: Prepare Upload Directory - run: | - mkdir -p ./dist/websdk/v7 - mv ./dist/v7/* ./dist/websdk/v7/ - - name: Sync Build to S3 run: | if [ "${{ github.event.inputs.dry_run }}" == "true" ]; then From f53c14cf84e48ecf665266b7596fb22759f5e6c2 Mon Sep 17 00:00:00 2001 From: Michel Andrade Date: Tue, 25 Feb 2025 16:17:48 -0300 Subject: [PATCH 5/5] adjust dry run --- .github/workflows/prod-deploy.yaml | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/.github/workflows/prod-deploy.yaml b/.github/workflows/prod-deploy.yaml index 5d0f8a1..7afcbf8 100644 --- a/.github/workflows/prod-deploy.yaml +++ b/.github/workflows/prod-deploy.yaml @@ -66,19 +66,11 @@ jobs: - name: Project | PreBuild run: | - if [ "${{ github.event.inputs.dry_run }}" == "true" ]; then - echo "Dry-run: Would have run 'npm run deps'" - else - npm run deps - fi + npm run deps - name: Project | Build run: | - if [ "${{ github.event.inputs.dry_run }}" == "true" ]; then - echo "Dry-run: Would have run 'npm run build'" - else - npm run build - fi + npm run build - name: Sync Build to S3 run: |