Skip to content

ci: Add Netlify configuration for deployment (#5) #3

ci: Add Netlify configuration for deployment (#5)

ci: Add Netlify configuration for deployment (#5) #3

Workflow file for this run

name: Run Release Please
on:
push:
branches:
- main
concurrency:
group: deploy-${{ github.ref }}
cancel-in-progress: false
permissions:
contents: read
jobs:
release-please:
permissions:
id-token: write # for googleapis/release-please-action to create release tag
contents: write # for googleapis/release-please-action to create release commit
pull-requests: write # for googleapis/release-please-action to create release PR
runs-on: ubuntu-latest
steps:
- uses: googleapis/release-please-action@16a9c90856f42705d54a6fda1823352bdc62cf38 # v4
id: release
with:
token: ${{ secrets.RELEASE_PLEASE_ACTION_TOKEN }}
outputs:
release_created: ${{ steps.release.outputs.release_created }}
publish-npm:
runs-on: ubuntu-latest
needs: release-please
permissions:
id-token: write # npm provenance
contents: read
if: ${{ fromJSON(needs.release-please.outputs.release_created || false) }}
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
with:
node-version-file: ".nvmrc"
registry-url: https://registry.npmjs.org
- name: Install dependencies
run: npm ci
- name: Publish package
run: npm publish --provenance --access public
build-pages:
runs-on: ubuntu-latest
needs: release-please
permissions:
contents: read
pages: write
id-token: write
if: ${{ fromJSON(needs.release-please.outputs.release_created || false) }}
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
with:
node-version: lts/*
- name: Install dependencies
run: npm ci
- name: Build
run: npm run build -- --base /${{ github.event.repository.name }}/ --without-notes
env:
NODE_OPTIONS: --max-old-space-size=4096
- name: Setup Pages
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0
- uses: actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b # v4.0.0
with:
path: dist
deploy-pages:
name: Deploy Pages
runs-on: ubuntu-latest
needs:
- release-please
- build-pages
permissions:
pages: write
id-token: write
if: ${{ fromJSON(needs.release-please.outputs.release_created || false) }}
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5