Skip to content

node20 compatibility #52

node20 compatibility

node20 compatibility #52

Workflow file for this run

# Sample workflow for building and deploying a website to GitHub Pages
name: Deploy Pages
on:
# Runs on pushes targeting the default branch and c4 files
push:
branches: ["main"]
# Allows you to run this workflow manually from the Actions tab
workflow_call:
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow only one concurrent deployment, skipping runs queued between the run in progress and the latest queued.
# However, do NOT cancel in-progress runs, as we want to allow these production deployments to be completed.
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
# Validate model following our rules
# @see test/validate-model.spec.ts
validate:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup bun
uses: oven-sh/setup-bun@v2
- name: Install dependencies
run: bun install
- name: Validate
run: bun run test
# Build job
build-pages:
runs-on: ubuntu-latest
needs: validate
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup bun
uses: oven-sh/setup-bun@v2
- name: Setup Pages
id: pages
uses: actions/configure-pages@v4
# Build step using likec4/actions
# - name: Build
# uses: likec4/actions@v1
# with:
# action: build
# output: dist
# # required if you don't set a custom domain for the repository
# # https://docs.github.com/en/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites
# base: ${{ steps.pages.outputs.base_path }}
# # (optional) by default, the bundled version is used, which is faster due to skipping the installation
# likec4-version: latest
# Prefer to use LikeC4 CLI directly in your scripts for more control.
- name: Build
run: |
bunx likec4@latest build \
--base ${{ steps.pages.outputs.base_path }} \
--output dist
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: ./dist
# Deployment job
deploy-pages:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build-pages
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4