Skip to content

First PR to test actions #1

First PR to test actions

First PR to test actions #1

Workflow file for this run

name: Build and Test
on:
pull_request:
types: ["opened", "reopened", "synchronize"]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
name: Build
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up pnpm
uses: pnpm/action-setup@v3
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "20.12"
cache: "pnpm"
- name: Install dependencies
run: pnpm install
- name: Build
run: pnpm build
lint:
name: Lint
runs-on: ubuntu-22.04
needs: build
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up pnpm
uses: pnpm/action-setup@v3
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "20.12"
cache: "pnpm"
- name: Install dependencies
run: pnpm install
- name: Lint
run: pnpm lint
test:
name: Test (unit)
runs-on: ubuntu-22.04
needs: build
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up pnpm
uses: pnpm/action-setup@v3
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "20.12"
cache: "pnpm"
- name: Install dependencies
run: pnpm install
- name: Test
run: pnpm test:cov
test-e2e:
name: Test (e2e)
runs-on: ubuntu-22.04
needs: build
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up pnpm
uses: pnpm/action-setup@v3
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "20.12"
cache: "pnpm"
- name: Install dependencies
run: pnpm install
- name: Test e2e
run: pnpm test:e2e
test-integration:
name: Test (integration)
runs-on: ubuntu-22.04
needs: [build, lint, test, test-e2e]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up buildx
uses: docker/setup-buildx-action@v3
- name: Build docker images
run: docker compose build
- name: Test API with turborepo
run: docker compose run test