Skip to content

chore(deps): update dependency @biomejs/biome to v2.5.6 #164

chore(deps): update dependency @biomejs/biome to v2.5.6

chore(deps): update dependency @biomejs/biome to v2.5.6 #164

Workflow file for this run

name: CI
# Verify + build, then publish on INTERNAL events. Runs on every PR (including
# forks), pushes to main, and tags — lint, test, build the docs, and on tags
# publish the release assets. It uploads each build's `docs` artifact.
#
# Publishing is nested here (the `publish` job → publish-dispatch.yml shim → publish.yml)
# so its status is visible on the PR / commit. A single `publish` job covers every event;
# publish.yml branches internally into deploy (internal PR / main push), tag re-dispatch
# (a same-SHA tag deploy would be silently dropped by Pages unless dispatched), or a
# fork-PR warning (forks build with a read-only token and never deploy). See the
# architecture explanation in docs/.
on:
pull_request:
push:
branches: [main]
tags: ['*'] # '*' never matches '/', so e.g. release/x tags don't build
jobs:
lint:
uses: ./.github/workflows/_lint.yml
test:
uses: ./.github/workflows/_test.yml
docs:
uses: ./.github/workflows/docs.yml
with:
# This repo is a Node project: install deps then build with myst. docs.yml
# installs uv too, but it's unused here (the unconditional-uv baseline).
build-command: npm ci && npm run docs
release:
needs: [lint, test, docs]
if: github.ref_type == 'tag'
uses: ./.github/workflows/release.yml
permissions:
contents: write # create the GitHub Release + attach assets
# One publish job for every event — publish.yml (reached via the publish-dispatch.yml
# shim) owns the branching (deploy inline / tag re-dispatch / fork-PR warn), so there's
# no separate tag or fork job and no ref/fork guards here. It runs for fork PRs too,
# but only to surface the opt-in hint: publish.yml's `deploy` job excludes forks and a
# fork PR's token is read-only, so untrusted code never reaches a write token.
# `actions: write` lets the re-dispatch job re-fire the shim; `version-name` is the
# in-run build for the inline path (ignored by the re-dispatch/warn branches).
publish:
needs: [lint, test, docs]
if: github.repository == 'DiamondLightSource/myst-version-switcher-plugin'
uses: ./.github/workflows/publish-dispatch.yml
with:
version-name: ${{ needs.docs.outputs.version-name }}
permissions:
contents: read
actions: write # the wrapper's tag re-dispatch dispatches via gh workflow run
pages: write
id-token: write
statuses: write