Files
cozystack/.github/workflows/ui-test.yaml
Myasnikov DaniilandClaude Opus 4.8 a3f97e5a0c ci: align pre-commit zizmor with CI and set persist-credentials on ui-test
Review feedback (non-blocking):

- .pre-commit-config.yaml pinned zizmor at v1.22.0 while the CI gate installs
  1.26.1; the zizmorcore/zizmor-pre-commit rev is the zizmor version 1:1, so the
  gap meant local and CI runs could differ. Align the hook to v1.26.1.
- ui-test.yaml's checkout did not set persist-credentials: false, unlike the
  other two workflows hardened here (build-main.yaml, zizmor.yml). Set it so the
  token is not left in .git/config for the later pnpm install step to read.

Signed-off-by: Myasnikov Daniil <myasnikovdaniil2001@gmail.com>
Assisted-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-07 14:14:37 +05:00

59 lines
1.7 KiB
YAML

name: UI Test
# Typecheck + unit tests for the in-tree console SPA
# (packages/system/dashboard/images/console, vendored from cozystack-ui).
# The container image itself is built by `make build` in the main build job.
on:
push:
branches:
- main
paths:
- 'packages/system/dashboard/images/console/**'
pull_request:
paths:
- 'packages/system/dashboard/images/console/**'
defaults:
run:
working-directory: packages/system/dashboard/images/console
# Read-only token; this workflow only checks out code and runs typecheck/tests.
permissions:
contents: read
jobs:
test:
name: Typecheck and test
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
# No git pushes from this workflow; don't leave the token in .git/config
# where a later `pnpm install` step could read it.
persist-credentials: false
- name: Set up pnpm
uses: pnpm/action-setup@b906affcce14559ad1aafd4ab0e942779e9f58b1 # v4
with:
# The monorepo root has no package.json; read the pnpm version from
# the console workspace manifest (packageManager field).
package_json_file: packages/system/dashboard/images/console/package.json
- name: Set up Node.js
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
with:
node-version: 22
cache: pnpm
cache-dependency-path: packages/system/dashboard/images/console/pnpm-lock.yaml
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Typecheck
run: pnpm typecheck
- name: Test
run: pnpm test