chore(deps-dev): bump typescript from 5.6.3 to 5.7.2 #250
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: | |
- main | |
tags: | |
- v*.*.* | |
pull_request: | |
branches: | |
- main | |
workflow_dispatch: | |
jobs: | |
Lint: | |
name: Lint | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout, Setup Node.js v${{ env.NODE_VERSION }} and Install dependencies | |
uses: manferlo81/action-checkout-node-install@v0 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
env: | |
NODE_VERSION: 20.x | |
- name: Lint code | |
run: npm run lint | |
Test_and_Build: | |
strategy: | |
matrix: | |
os: | |
- name: Window | |
machine: windows-latest | |
- name: Ubuntu | |
machine: ubuntu-latest | |
- name: macOS | |
machine: macos-latest | |
node-version: | |
- 18.x | |
- 20.x | |
- 21.x | |
- 22.x | |
name: Test and Build, ${{ matrix.os.name }}, NodeJS v${{ matrix.node-version }} | |
runs-on: ${{ matrix.os.machine }} | |
needs: Lint | |
steps: | |
- name: Checkout, Setup Node.js v${{ matrix.node-version }} and Install dependencies | |
uses: manferlo81/action-checkout-node-install@v0 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- name: Run tests | |
run: npm test | |
env: | |
COVERAGE: SKIP | |
- name: Build | |
run: npm run build | |
Upload_Coverage: | |
name: Upload Coverage to Codecov | |
runs-on: ubuntu-latest | |
if: github.event_name == 'push' && github.ref_type == 'branch' | |
needs: Test_and_Build | |
steps: | |
- name: Checkout, Setup Node.js v${{ env.NODE_VERSION }} and Install dependencies | |
uses: manferlo81/action-checkout-node-install@v0 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
env: | |
NODE_VERSION: 20.x | |
- name: Run tests | |
run: npm test | |
env: | |
COVERAGE: CI | |
- name: Upload coverage | |
uses: codecov/codecov-action@v4 | |
with: | |
directory: coverage | |
token: ${{ secrets.CODECOV_TOKEN }} | |
Create_Release: | |
name: Create GitHub Release | |
runs-on: ubuntu-latest | |
if: github.ref_type == 'tag' | |
needs: Test_and_Build | |
permissions: | |
contents: write | |
steps: | |
- name: Checkout, Setup Node.js v${{ env.NODE_VERSION }} and Install dependencies | |
uses: manferlo81/action-checkout-node-install@v0 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
env: | |
NODE_VERSION: 20.x | |
- name: Build | |
run: npm run build | |
- name: Create tarball | |
run: npm pack | |
- name: Create Release | |
uses: manferlo81/action-auto-release@v0 | |
with: | |
files: selective-option-*.tgz | |
Publish_to_npm: | |
name: Publish Package to npm Registry | |
runs-on: ubuntu-latest | |
if: github.ref_type == 'tag' | |
needs: Test_and_Build | |
steps: | |
- name: Checkout, Setup Node.js v${{ env.NODE_VERSION }} and Install dependencies | |
uses: manferlo81/action-checkout-node-install@v0 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
registry-url: https://registry.npmjs.org/ | |
env: | |
NODE_VERSION: 20.x | |
- name: Build | |
run: npm run build | |
- name: Publish package | |
run: npm publish --provenance --access public | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} |