Skip to content

chore(deps): lock file maintenance #985

chore(deps): lock file maintenance

chore(deps): lock file maintenance #985

Workflow file for this run

name: CI
on:
push:
branches:
# semantic-release valid branches
- '+([0-9])?(.{+([0-9]),x}).x'
- 'main'
- 'next'
- 'next-major'
- 'beta'
- 'alpha'
pull_request:
types: [opened, synchronize]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
HUSKY: 0
jobs:
code_validation:
name: 'Code Validation: ${{ matrix.validation_script }}'
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
validation_script: ['lint', 'type-check', 'format:check']
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup pnpm
uses: pnpm/action-setup@v2
- name: Setup Node.js
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
with:
node-version-file: '.nvmrc'
cache: 'pnpm'
- name: Install dependencies
run: pnpm install
- name: Run script
run: pnpm run ${{ matrix.validation_script }}
tests:
name: 'Tests - Node.js v${{ matrix.node_version }}'
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node_version: ['16', '18', '20', '22']
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup pnpm
uses: pnpm/action-setup@v2
- name: Setup Node.js
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
with:
node-version: ${{ matrix.node }}
cache: 'pnpm'
- name: Install dependencies
run: pnpm install
- name: Run script
run: pnpm run test:ci
release:
name: Package Release
runs-on: ubuntu-latest
needs: [code_validation, tests]
if:
${{ github.event.pull_request.head.repo.full_name == github.event.pull_request.base.repo.full_name &&
contains('refs/heads/main,refs/heads/beta,refs/heads/next,refs/heads/alpha', github.ref) &&
github.event_name == 'push' }}
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup pnpm
uses: pnpm/action-setup@v2
- name: Setup Node.js
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
with:
node-version-file: '.nvmrc'
cache: 'pnpm'
- name: Install dependencies
run: pnpm install
- name: Build the package
run: pnpm build
- name: Release the new version to NPM Registry
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
run: pnpm run semantic-release