Skip to content

build(deps): bump the all group across 1 directory with 61 updates #771

build(deps): bump the all group across 1 directory with 61 updates

build(deps): bump the all group across 1 directory with 61 updates #771

Workflow file for this run

name: build
on: [push]
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.ref_name }}
cancel-in-progress: true
jobs:
build:
timeout-minutes: 5
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# waiting on: https://github.com/actions/setup-node/issues/531
- run: corepack enable
- uses: actions/setup-node@v4
with:
# NODE_VERSION
node-version: 22
cache: yarn
- run: yarn install --immutable
- run: yarn build:tsc
- run: yarn lint
- uses: hadolint/[email protected]
with:
dockerfile: ./infra/Dockerfile-backend
- uses: hadolint/[email protected]
with:
dockerfile: ./infra/Dockerfile-frontend
- uses: crate-ci/typos@master
test-storybook:
timeout-minutes: 5
runs-on: ubuntu-latest
container:
image: mcr.microsoft.com/playwright:v1.49.0
steps:
- uses: actions/checkout@v4
with:
# https://www.chromatic.com/docs/github-actions/
fetch-depth: 0
# https://github.com/actions/runner/issues/2033#issuecomment-1204205989
- run: chown -R $(id -u):$(id -g) $PWD
# waiting on: https://github.com/actions/setup-node/issues/531
- run: corepack enable
- uses: actions/setup-node@v4
with:
# NODE_VERSION
node-version: 22
cache: yarn
- run: yarn install --immutable
- name: build:storybook, preview:storybook, test:storybook
working-directory: ./packages/frontend/
run: |
yarn run-s 'build:storybook' 'preview:storybook' &
yarn wait-on tcp:6006
yarn test:storybook
- id: chromatic
name: Publish to Chromatic
uses: chromaui/action@v11
with:
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
storybookBuildDir: ./packages/frontend/build/storybook/
autoAcceptChanges: main
exitOnceUploaded: true
- uses: actions/upload-artifact@v4
with:
name: coverage-storybook
path: packages/frontend/coverage/storybook/
if-no-files-found: error
retention-days: 1
test-vitest:
timeout-minutes: 5
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# waiting on: https://github.com/actions/setup-node/issues/531
- run: corepack enable
- uses: actions/setup-node@v4
with:
# NODE_VERSION
node-version: 22
cache: yarn
- run: yarn install --immutable
# pull so that testcontainers doesn't have to, timing out tests.
- run: docker compose -f compose.dev.yml pull postgres redis
- run: yarn test --coverage
- uses: actions/upload-artifact@v4
with:
name: coverage-vitest
path: coverage/
if-no-files-found: error
retention-days: 1
test-playwright:
timeout-minutes: 15
runs-on: ubuntu-latest
container:
image: mcr.microsoft.com/playwright:v1.49.0
services:
postgres:
image: postgres:17-alpine
env:
POSTGRES_PASSWORD: postgres
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
redis:
image: redis:7-alpine
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
mailpit:
image: axllent/mailpit
steps:
- uses: actions/checkout@v4
with:
# https://www.chromatic.com/docs/github-actions/
fetch-depth: 0
# https://github.com/actions/runner/issues/2033#issuecomment-1204205989
- run: chown -R $(id -u):$(id -g) $PWD
# waiting on: https://github.com/actions/setup-node/issues/531
- run: corepack enable
- uses: actions/setup-node@v4
with:
# NODE_VERSION
node-version: 22
cache: yarn
- run: yarn install --immutable
- working-directory: ./packages/backend/
# TODO: put VAPID keys into GHA and remove this step
run: yarn prepare:e2e && yarn prisma migrate deploy
- working-directory: ./packages/e2e/
run: yarn test
# - id: chromatic
# name: Publish to Chromatic
# uses: chromaui/action@v11
# with:
# playwright: true
# projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN_E2E }}
# autoAcceptChanges: main
# exitOnceUploaded: true
# workingDir: ./packages/e2e/
- uses: actions/upload-artifact@v4
with:
name: coverage-playwright
path: packages/e2e/coverage/
if-no-files-found: error
retention-days: 1
codecov:
timeout-minutes: 5
runs-on: ubuntu-latest
needs: [test-storybook, test-vitest, test-playwright]
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
- uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}