Skip to content

chore(eslint-config): update dependency eslint-plugin-n to v17 #132

chore(eslint-config): update dependency eslint-plugin-n to v17

chore(eslint-config): update dependency eslint-plugin-n to v17 #132

Workflow file for this run

name: Node CI
on:
push:
branches:
- master
pull_request:
branches:
- master
# Allows users to trigger jobs manually in GitHub UI
workflow_dispatch:
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout Current Branch
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Use Node.js LTS
uses: actions/setup-node@v3
with:
node-version-file: .nvmrc
cache: npm
- name: Install Dependencies
run: npm ci
- name: Debug Branches
run: npm run list-changed
- name: Validate all commits from PR
if: ${{ github.event_name == 'pull_request' }}
run: npx commitlint --from origin/master --verbose
- name: Lint PR
# For PRs, run lint only on the changed files
if: ${{ github.event_name == 'pull_request' }}
run: npm run lint-pr
- name: Lint Repo
# For pushes directly to master, run lint on the whole repo
if: ${{ github.event_name == 'push' }}
run: npm run lint
- name: Typecheck PR
if: ${{ github.event_name == 'pull_request' }}
run: npm run typecheck-pr
- name: Typecheck Repo
if: ${{ github.event_name == 'push' }}
run: npm run typecheck
test:
runs-on: ubuntu-latest
needs: lint
strategy:
fail-fast: false
matrix:
node-version:
- lts/*
- lts/-1
steps:
- name: Checkout Current Branch
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: 'true'
- name: Use Node.js LTS
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Install Dependencies
run: npm ci
- name: Test PR
if: ${{ github.event_name == 'pull_request' }}
run: npm run test-pr # we don't have anything that warrants a JUnit test file yet
- name: Test Repo
if: ${{ github.event_name == 'push' }}
run: npm test
release:
runs-on: ubuntu-latest
needs: test
if: github.ref == 'refs/heads/master' && github.event_name != 'workflow_dispatch'
steps:
- name: Checkout Current Branch
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set Git User
run: |
git config user.email "lerna@janejeon.com"
git config user.name "Lerna"
- name: Use Node.js LTS
uses: actions/setup-node@v3
with:
node-version-file: .nvmrc
cache: npm
registry-url: https://registry.npmjs.org # need to set this for NODE_AUTH_TOKEN
- name: Install Dependencies
run: npm ci
- name: Publish
run: npx lerna publish --yes
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
retry-release:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/master' && github.event_name == 'workflow_dispatch'
steps:
- name: Checkout Current Branch
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set Git User
run: |
git config user.email "lerna@janejeon.com"
git config user.name "Lerna"
- name: Use Node.js LTS
uses: actions/setup-node@v3
with:
node-version-file: .nvmrc
cache: npm
registry-url: https://registry.npmjs.org
- name: Install Dependencies
run: npm ci
- name: Retry Publish
run: npx lerna publish from-package --yes
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}