Skip to content

ci(Chores): Upgrade tested Node Versions #844

ci(Chores): Upgrade tested Node Versions

ci(Chores): Upgrade tested Node Versions #844

Workflow file for this run

name: Push Workflow
on:
push:
branches:
- master
- main
pull_request:
branches:
- master
- main
jobs:
Prettier:
name: Prettier
strategy:
matrix:
node: ['20.x']
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/[email protected]
with:
node-version: ${{ matrix.node }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
- name: Run Prettier
run: npm run prettier
ESLint:
name: ESLint
strategy:
matrix:
node: ['20.x']
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/[email protected]
with:
node-version: ${{ matrix.node }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
- name: Run ESLint
run: npm run lint
TSC:
name: TSC Typecheck
strategy:
matrix:
node: ['20.x']
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/[email protected]
with:
node-version: ${{ matrix.node }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
- name: Run TSC Typechecking
run: npm run typecheck
IntegrationTest:
name: Integration Tests
strategy:
matrix:
os: ['ubuntu-latest', 'windows-latest', 'macos-latest']
node:
[
'13.9',
'13.10',
'13.11',
'14.1',
'14.4',
'14.15.1',
'17.x',
'18.x',
'19.x',
'>=14.15.0',
]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: actions/[email protected]
with:
node-version: ${{ matrix.node }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
- name: Run Integration Tests
run: npm run test:integration
Publish:
name: NPM Publish
runs-on: ubuntu-latest
needs: [IntegrationTest, TSC, Prettier, ESLint]
if: github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
persist-credentials: false
- uses: actions/[email protected]
with:
node-version: '14.x'
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
## Run [semantic-release](https://github.com/semantic-release/semantic-release) auto release/publish system
- name: Run semantic-release
run: npx semantic-release
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
## Dedicated bot user for all @K-FOSS Repos
GIT_AUTHOR_NAME: 'KJDev-Bots'
GIT_COMMITTER_NAME: 'KJDev-Bots'
GIT_AUTHOR_EMAIL: '[email protected]'
GIT_COMMITTER_EMAIL: '[email protected]'