Commit a3d72a4b authored by Zach Pomerantz's avatar Zach Pomerantz Committed by GitHub

build: simplify workflows (#6814)

* build: simplify workflows

* docs: better name
parent 1bb750f1
...@@ -10,8 +10,7 @@ jobs: ...@@ -10,8 +10,7 @@ jobs:
environment: environment:
name: deploy/staging name: deploy/staging
steps: steps:
- name: Send Slack message that deploy is starting - uses: slackapi/slack-github-action@007b2c3c751a190b6f0f040e47ed024deaa72844
uses: slackapi/slack-github-action@007b2c3c751a190b6f0f040e47ed024deaa72844
continue-on-error: true continue-on-error: true
with: with:
payload: | payload: |
...@@ -21,12 +20,13 @@ jobs: ...@@ -21,12 +20,13 @@ jobs:
env: env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- uses: ./.github/actions/setup - uses: ./.github/actions/setup
- run: yarn prepare
- run: yarn build - run: yarn build
env: env:
REACT_APP_STAGING: 1 REACT_APP_STAGING: 1
- name: Update Cloudflare Pages deployment - name: Update Cloudflare Pages deployment
id: pages-deployment id: pages-deployment
uses: cloudflare/pages-action@364c7ca09a4b57837c5967871d64a2c31adb8c0d uses: cloudflare/pages-action@364c7ca09a4b57837c5967871d64a2c31adb8c0d
...@@ -38,8 +38,8 @@ jobs: ...@@ -38,8 +38,8 @@ jobs:
githubToken: ${{ secrets.GITHUB_TOKEN }} githubToken: ${{ secrets.GITHUB_TOKEN }}
# Cloudflare uses `main` as the default production branch, so we push using the `main` branch so that it can be aliased by a custom domain. # Cloudflare uses `main` as the default production branch, so we push using the `main` branch so that it can be aliased by a custom domain.
branch: main branch: main
- name: Send Slack message about deployment outcome
uses: slackapi/slack-github-action@007b2c3c751a190b6f0f040e47ed024deaa72844 - uses: slackapi/slack-github-action@007b2c3c751a190b6f0f040e47ed024deaa72844
continue-on-error: true continue-on-error: true
if: always() if: always()
with: with:
...@@ -50,6 +50,7 @@ jobs: ...@@ -50,6 +50,7 @@ jobs:
env: env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
- name: Upload source maps to Sentry - name: Upload source maps to Sentry
uses: getsentry/action-release@bd5f874fcda966ba48139b0140fb3ec0cb3aabdd uses: getsentry/action-release@bd5f874fcda966ba48139b0140fb3ec0cb3aabdd
continue-on-error: true continue-on-error: true
......
...@@ -10,8 +10,7 @@ jobs: ...@@ -10,8 +10,7 @@ jobs:
environment: environment:
name: deploy/prod name: deploy/prod
steps: steps:
- name: Send Slack message that build is starting - uses: slackapi/slack-github-action@007b2c3c751a190b6f0f040e47ed024deaa72844
uses: slackapi/slack-github-action@007b2c3c751a190b6f0f040e47ed024deaa72844
continue-on-error: true continue-on-error: true
with: with:
payload: | payload: |
...@@ -21,10 +20,11 @@ jobs: ...@@ -21,10 +20,11 @@ jobs:
env: env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- uses: ./.github/actions/setup - uses: ./.github/actions/setup
- run: yarn prepare
- run: yarn build - run: yarn build
- name: Bump and tag - name: Bump and tag
id: github-tag-action id: github-tag-action
uses: mathieudutour/github-tag-action@d745f2e74aaf1ee82e747b181f7a0967978abee0 uses: mathieudutour/github-tag-action@d745f2e74aaf1ee82e747b181f7a0967978abee0
...@@ -48,7 +48,7 @@ jobs: ...@@ -48,7 +48,7 @@ jobs:
with: with:
cidv0: ${{ steps.pinata.outputs.hash }} cidv0: ${{ steps.pinata.outputs.hash }}
- name: Release - name: Publish release
uses: actions/create-release@v1.1.0 uses: actions/create-release@v1.1.0
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
...@@ -86,8 +86,7 @@ jobs: ...@@ -86,8 +86,7 @@ jobs:
# Cloudflare uses `main` as the default production branch, so we push using the `main` branch so that it can be aliased by a custom domain. # Cloudflare uses `main` as the default production branch, so we push using the `main` branch so that it can be aliased by a custom domain.
branch: main branch: main
- name: Send Slack message about deployment outcome - uses: slackapi/slack-github-action@007b2c3c751a190b6f0f040e47ed024deaa72844
uses: slackapi/slack-github-action@007b2c3c751a190b6f0f040e47ed024deaa72844
continue-on-error: true continue-on-error: true
if: always() if: always()
with: with:
...@@ -98,6 +97,7 @@ jobs: ...@@ -98,6 +97,7 @@ jobs:
env: env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
- name: Upload source maps to Sentry - name: Upload source maps to Sentry
uses: getsentry/action-release@4744f6a65149f441c5f396d5b0877307c0db52c7 uses: getsentry/action-release@4744f6a65149f441c5f396d5b0877307c0db52c7
continue-on-error: true continue-on-error: true
......
name: Slack notifications for releases/* merges name: Slack notification on pushes to releases/*
# This CI job will push notifications to Slack whenever code is merged into any releases/* branch # This CI job will push notifications to Slack whenever code is merged into any releases/* branch
# #
...@@ -25,7 +25,6 @@ on: ...@@ -25,7 +25,6 @@ on:
jobs: jobs:
notify-slack: notify-slack:
name: 'Emit Slack notification(s)'
runs-on: ubuntu-latest runs-on: ubuntu-latest
environment: environment:
name: notify/releases name: notify/releases
...@@ -45,9 +44,7 @@ jobs: ...@@ -45,9 +44,7 @@ jobs:
| awk '{print substr($0,0,3000);}' \ | awk '{print substr($0,0,3000);}' \
> /tmp/parsed_github_context > /tmp/parsed_github_context
echo "SLACK_COMMITS=$(cat /tmp/parsed_github_context)" >> "$GITHUB_OUTPUT" echo "SLACK_COMMITS=$(cat /tmp/parsed_github_context)" >> "$GITHUB_OUTPUT"
- name: Send custom JSON data to Slack workflow - uses: slackapi/slack-github-action@007b2c3c751a190b6f0f040e47ed024deaa72844
id: slack
uses: slackapi/slack-github-action@007b2c3c751a190b6f0f040e47ed024deaa72844
with: with:
payload: | payload: |
{ {
......
name: Test name: Test
# Many build steps have their own caches, so each job has its own cache to improve subsequent build times. # Many build steps have their own caches, so each job has its own cache to improve subsequent build times.
# Build tools are configured to cache cache to node_modules/.cache, so this is cached independently of node_modules. # Build tools are configured to cache to node_modules/.cache, so they are cached independently of node_modules.
# Caches are saved every run (by keying on github.run_id), and the most recent available cache is loaded. # Caches are saved every run (by keying on github.run_id), and the most recent available cache is loaded.
# See https://jongleberry.medium.com/speed-up-your-ci-and-dx-with-node-modules-cache-ac8df82b7bb0. # See https://jongleberry.medium.com/speed-up-your-ci-and-dx-with-node-modules-cache-ac8df82b7bb0.
...@@ -10,8 +10,6 @@ on: ...@@ -10,8 +10,6 @@ on:
branches: branches:
- main - main
pull_request: pull_request:
# manual trigger
workflow_dispatch:
jobs: jobs:
lint: lint:
...@@ -175,12 +173,3 @@ jobs: ...@@ -175,12 +173,3 @@ jobs:
with: with:
name: Cypress tests name: Cypress tests
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_TEST_REPORTER_WEBHOOK }} SLACK_WEBHOOK_URL: ${{ secrets.SLACK_TEST_REPORTER_WEBHOOK }}
# Included as a single job to check for cypress-test-matrix success, as a matrix cannot be checked.
cypress-tests:
if: always()
needs: [cypress-test-matrix]
runs-on: ubuntu-latest
steps:
- if: needs.cypress-test-matrix.result != 'success'
run: exit 1
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment