The .forgejo/workflows/ files and doc updates described in 4862ed6 didn't
actually get staged there (git add silently skipped them after an earlier
pathspec miss on the already-deleted .gitea file) -- committing them now.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
77 lines
2.6 KiB
YAML
77 lines
2.6 KiB
YAML
# Ported from .gitea/workflows/ci.yml (REUSE-WP-0019-T03). No actions/checkout
|
|
# on this runner substrate (railiance-enablement/docs/forgejo-actions-workflow-templates.md)
|
|
# -- ubuntu-latest maps to docker://node:20-bookworm, no Python preinstalled,
|
|
# so use archive checkout + apt.
|
|
name: ci
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
branches: [main]
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
validate-registry:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Archive checkout
|
|
run: |
|
|
set -eu
|
|
REF="${GITHUB_SHA:-main}"
|
|
SHORT="${REF:0:7}"
|
|
mkdir -p /tmp/repo
|
|
wget -qO /tmp/repo.tar.gz "https://forgejo.coulomb.social/${GITHUB_REPOSITORY}/archive/${SHORT}.tar.gz"
|
|
tar xzf /tmp/repo.tar.gz -C /tmp/repo --strip-components=1
|
|
|
|
- name: Install Python + package
|
|
working-directory: /tmp/repo
|
|
run: |
|
|
set -eu
|
|
apt-get update -qq
|
|
apt-get install -y -qq python3 python3-pip python3-venv >/dev/null
|
|
python3 -m pip install --break-system-packages -e ".[dev]"
|
|
|
|
- name: Validate capability registry
|
|
working-directory: /tmp/repo
|
|
run: reuse-surface validate --relations --fail-on-warnings
|
|
|
|
- name: Compose federated index
|
|
working-directory: /tmp/repo
|
|
run: reuse-surface federation compose
|
|
|
|
- name: Generate catalog and graph
|
|
working-directory: /tmp/repo
|
|
run: |
|
|
reuse-surface catalog
|
|
reuse-surface graph --check --fail-on-warnings
|
|
|
|
- name: Registry maintain dry-run (informational)
|
|
working-directory: /tmp/repo
|
|
run: reuse-surface maintain --all --auto --no-llm || true
|
|
|
|
- name: Registry stats (informational)
|
|
working-directory: /tmp/repo
|
|
run: reuse-surface stats || true
|
|
|
|
- name: Workstation roster federation stats (informational)
|
|
working-directory: /tmp/repo
|
|
run: |
|
|
reuse-surface stats --roster registry/federation/local-repo-roster.yaml \
|
|
--federation-ready --format json || true
|
|
|
|
- name: Planning cohort report (informational)
|
|
working-directory: /tmp/repo
|
|
run: reuse-surface report cohorts --planning-min D4 || true
|
|
|
|
- name: Registry gap report (informational)
|
|
working-directory: /tmp/repo
|
|
run: reuse-surface report gaps || true
|
|
|
|
- name: Plan-check smoke test (informational)
|
|
working-directory: /tmp/repo
|
|
run: reuse-surface plan-check --intent "smoke test" --format json || true
|
|
|
|
- name: Run tests
|
|
working-directory: /tmp/repo
|
|
run: pytest -q
|