Skip to content

Commit

Permalink
ci: improve GHA + upgrade node versions (#331)
Browse files Browse the repository at this point in the history
  • Loading branch information
LouisBrunner authored Dec 12, 2024
1 parent 2c8140a commit ea26297
Show file tree
Hide file tree
Showing 6 changed files with 112 additions and 62 deletions.
31 changes: 25 additions & 6 deletions .github/dependabot.yaml
Original file line number Diff line number Diff line change
@@ -1,10 +1,29 @@
version: 2
updates:
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "monthly"
- package-ecosystem: "github-actions"
directory: "/"
directory: /
schedule:
interval: weekly
groups:
actions-deps:
patterns:
- "*"

- package-ecosystem: npm
directory: /
schedule:
interval: "weekly"
interval: monthly
groups:
security-updates:
applies-to: security-updates
patterns:
- "*"
major-updates:
applies-to: version-updates
update-types:
- "major"
minor-updates:
applies-to: version-updates
update-types:
- "minor"
- "patch"
90 changes: 45 additions & 45 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,32 +10,32 @@ jobs:

strategy:
matrix:
node-version: [16, 18, 20]
node-version: [18, 20, 22]

steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- name: Install dependencies
run: npm install
- run: npm run test:ci
- run: npm run lint
- name: Coveralls
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
flag-name: node-${{ matrix.node }}
parallel: true
- run: npm run build:examples
- name: Upload examples build
uses: actions/upload-artifact@v4
if: ${{ matrix.node-version == 'latest' }}
with:
name: Examples
path: examples
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: "npm"
- name: Install dependencies
run: npm install
- run: npm run test:ci
- run: npm run lint
- name: Coveralls
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
flag-name: node-${{ matrix.node }}
parallel: true
- run: npm run build:examples
- name: Upload examples build
uses: actions/upload-artifact@v4
if: ${{ matrix.node-version == 'latest' }}
with:
name: Examples
path: examples

finish:
name: Coverage
Expand All @@ -44,11 +44,11 @@ jobs:
needs: build

steps:
- name: Coveralls Finished
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
parallel-finished: true
- name: Coveralls Finished
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
parallel-finished: true

deploy:
name: Deploy
Expand All @@ -58,19 +58,19 @@ jobs:
if: github.ref == 'refs/heads/main'

steps:
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Download examples build
uses: actions/download-artifact@v4
with:
name: Examples
path: examples
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
enable_jekyll: true
publish_dir: ./
force_orphan: true
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Download examples build
uses: actions/download-artifact@v4
with:
name: Examples
path: examples
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
enable_jekyll: true
publish_dir: ./
force_orphan: true
28 changes: 28 additions & 0 deletions .github/workflows/lint-gha.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Lint Github Actions

on:
push:
branches: [main]
paths:
- ".github/**"
pull_request:
paths:
- ".github/**"

jobs:
lint:
name: Lint YAML files
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ibiqlik/action-yamllint@v3
with:
file_or_dir: .github
config_data: |
extends: default
rules:
line-length:
max: 120
level: warning
document-start: disable
truthy: disable
2 changes: 1 addition & 1 deletion esbuild/build.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import esbuild from 'esbuild';
import tsConfig from '../tsconfig.json' assert { type: 'json' };
import { nodeExternalsPlugin } from 'esbuild-node-externals';
import tsConfig from '../tsconfig.json' with { type: 'json' };

esbuild.build({
entryPoints: ['./src/index.ts'],
Expand Down
21 changes: 12 additions & 9 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
],
"engines": {
"npm": ">=7.0.0",
"node": ">=15.0.0"
"node": ">=18.0.0"
},
"funding": {
"type": "individual",
Expand Down

0 comments on commit ea26297

Please sign in to comment.