Skip to content

ci: add check for pre-release/stable branch #13

ci: add check for pre-release/stable branch

ci: add check for pre-release/stable branch #13

Workflow file for this run

name: ci
on:
pull_request:
branches: '*'
push:
branches: '*'
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Copy repository
uses: actions/checkout@v4
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: 'npm'
- name: Install dependencies
run: npm i
- name: Lint
run: npm run check-lint
- name: Check formatting
run: npm run check-format
- name: Build
run: npm run build
- name: Test
run: npm test
release_and_publish:
if: ${{ github.ref_protected }} && contains(fromJSON('["pre-release", "stable"]'), ${{ github.ref_name }})
runs-on: ubuntu-latest
environment: npm_publish_env
needs: build
permissions:
contents: write # to be able to publish a GitHub release
issues: write # to be able to comment on released issues
pull-requests: write # to be able to comment on released pull requests
id-token: write # to enable use of OIDC for npm provenance
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: 'npm'
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
- name: Build project
run: npm run build
- name: Print Head of token
run: echo ${{secrets.NPM_TOKEN}} | head -c6
- name: Configure NPM
run: |
echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > ~/.npmrc
- name: Run Semantic Release
run: npx semantic-release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NODE_AUTH_TOKEN: ${{ secrets.NPM_RELEASR_TOKEN }}