Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .github/actions/install/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Install

description: Set up Node.js, pnpm and install dependencies

runs:
using: composite
steps:
- name: Install pnpm
uses: pnpm/action-setup@v6
with:
version: 11
- name: Install Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: pnpm
- name: Install dependencies
run: pnpm install --frozen-lockfile
shell: bash
78 changes: 24 additions & 54 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,39 +15,29 @@ jobs:
runs-on: ubuntu-latest
name: Format check
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Clone repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Set base and head for Nx affected commands
uses: nrwl/nx-set-shas@v4
uses: nrwl/nx-set-shas@v5
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Check formatting of affected files
run: npx nx format:check

lint:
runs-on: ubuntu-latest
name: Linter
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Clone repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Set base and head for Nx affected commands
uses: nrwl/nx-set-shas@v4
uses: nrwl/nx-set-shas@v5
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Lint affected projects
run: npx nx affected -t lint --parallel=3

Expand All @@ -59,19 +49,14 @@ jobs:
name: Unit tests
runs-on: ${{ matrix.os }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Clone repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Set base and head for Nx affected commands
uses: nrwl/nx-set-shas@v4
uses: nrwl/nx-set-shas@v5
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Unit test affected projects
run: npx nx affected -t unit-test --parallel=3

Expand All @@ -83,19 +68,14 @@ jobs:
name: Integration tests
runs-on: ${{ matrix.os }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Clone repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Set base and head for Nx affected commands
uses: nrwl/nx-set-shas@v4
uses: nrwl/nx-set-shas@v5
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Integration test affected projects
run: npx nx affected -t int-test --parallel=3

Expand All @@ -107,39 +87,29 @@ jobs:
name: E2E tests
runs-on: ${{ matrix.os }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Clone repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Set base and head for Nx affected commands
uses: nrwl/nx-set-shas@v4
uses: nrwl/nx-set-shas@v5
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: E2E test affected projects
run: npx nx affected -t e2e-test --parallel=1

build:
runs-on: ubuntu-latest
name: Build
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Clone repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Set base and head for Nx affected commands
uses: nrwl/nx-set-shas@v4
uses: nrwl/nx-set-shas@v5
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Build all projects # affected is not used to be able to test-releae packages
run: npx nx run-many --target=build --parallel=3
- name: Test-release packages
Expand Down
26 changes: 8 additions & 18 deletions .github/workflows/code-pushup-fork.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,19 +23,14 @@ jobs:
name: Standalone mode (fork)
if: github.event.pull_request.head.repo.fork
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Clone repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Set base and head for Nx affected commands
uses: nrwl/nx-set-shas@v4
uses: nrwl/nx-set-shas@v5
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Run Code PushUp action
uses: ./.github/actions/code-pushup
with:
Expand All @@ -47,19 +42,14 @@ jobs:
name: Monorepo mode (fork)
if: github.event.pull_request.head.repo.fork
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Clone repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Set base and head for Nx affected commands
uses: nrwl/nx-set-shas@v4
uses: nrwl/nx-set-shas@v5
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Run Code PushUp action
uses: ./.github/actions/code-pushup
with:
Expand Down
26 changes: 8 additions & 18 deletions .github/workflows/code-pushup.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,19 +22,14 @@ jobs:
env:
CP_API_KEY: ${{ secrets.CP_API_KEY }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Clone repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Set base and head for Nx affected commands
uses: nrwl/nx-set-shas@v4
uses: nrwl/nx-set-shas@v5
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Run Code PushUp action
uses: ./.github/actions/code-pushup
with:
Expand All @@ -49,19 +44,14 @@ jobs:
env:
CP_API_KEY: ${{ secrets.CP_API_KEY }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Clone repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Set base and head for Nx affected commands
uses: nrwl/nx-set-shas@v4
uses: nrwl/nx-set-shas@v5
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Run Code PushUp action
uses: ./.github/actions/code-pushup
with:
Expand Down
22 changes: 6 additions & 16 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,10 @@ jobs:
name: List packages
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Clone repository
uses: actions/checkout@v6
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: List packages using Nx CLI
id: list-packages
run: |
Expand All @@ -38,15 +33,10 @@ jobs:
name: Collect coverage
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Clone repository
uses: actions/checkout@v6
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Execute tests with coverage
run: npx nx run ${{ matrix.project }}:${{ matrix.target }}
- name: Upload coverage reports to Codecov
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/dependency-review.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ jobs:
name: Scan new dependencies
steps:
- name: Clone repository
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Check for vulnerabilities in new dependencies
uses: actions/dependency-review-action@v4
uses: actions/dependency-review-action@v5
with:
comment-summary-in-pr: on-failure
2 changes: 1 addition & 1 deletion .github/workflows/git-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Block fixup commit merge
uses: 13rac1/block-fixup-merge-action@v2.0.0
6 changes: 3 additions & 3 deletions .github/workflows/pr-commitlint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ jobs:
name: Check PR title
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v4
- name: Clone repository
uses: actions/checkout@v6
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Check PR title with commitlint
run: echo "${{ github.event.pull_request.title }}" | npx commitlint
6 changes: 3 additions & 3 deletions .github/workflows/pr-labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ jobs:
pull-requests: write
issues: write
steps:
- name: Checkout the repository
uses: actions/checkout@v4
- uses: actions/labeler@v5
- name: Clone repository
uses: actions/checkout@v6
- uses: actions/labeler@v6
with:
repo-token: '${{ secrets.GITHUB_TOKEN }}'
sync-labels: true
9 changes: 2 additions & 7 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,20 +26,15 @@ jobs:
environment: release
steps:
- name: Clone the repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Configure Git user
# https://github.com/actions/checkout/blob/main/README.md#push-a-commit-using-the-built-in-token
run: |
git config user.name github-actions[bot]
git config user.email 41898282+github-actions[bot]@users.noreply.github.com
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Publish packages to npm
run: npx nx release publish
9 changes: 2 additions & 7 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,17 +34,12 @@ jobs:
git config --global user.name '${{ steps.app-token.outputs.app-slug }}[bot]'
git config --global user.email '${{ steps.get-user-id.outputs.user-id }}+${{ steps.app-token.outputs.app-slug }}[bot]@users.noreply.github.com'
- name: Clone the repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
token: ${{ steps.app-token.outputs.token }}
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Install dependencies
run: npm ci
uses: ./.github/actions/install
- name: Version, release and generate changelog
run: npx nx release --skip-publish
env:
Expand Down
Loading
Loading