Axel Meyer 32f91c56ba ci(docs): fix lychee --exclude (regex, not glob)
"**/archive/**" was being passed as a regex via --exclude-path,
causing 'repetition operator missing expression' parse error.
lychee --exclude takes a regex pattern; use '/archive/' to match
any URL/path containing an archive segment.
2026-05-04 20:23:23 +02:00

sporel-tool-ci

Reusable Gitea-Actions workflows for the Sporel platform.

Type: Tool (CI/CD-Workflows) Status: Active Tier: Tier 1 (Official, public-readable)

Purpose

Hosts the 5 reusable Gitea-Actions workflows used by every Sporel repo per ADR-0025:

Workflow Category (per ADR-0019) Used by
reusable-engine-launcher.yml Cat 1 sporel-engine, sporel-launcher
reusable-c-lib.yml Cat 2 sporel-lib-core.<name> (compiled)
reusable-lua.yml Cat 3 sporel-lib-<name> (Lua), sporel-mod-<name> (pure Lua)
reusable-hybrid.yml Cat 4 sporel-mod-<name> (Hybrid C+Lua)
reusable-docs.yml Cat 5 sporel-meta, sporel-tool-*

Why public

This repo is a deliberate public-Tier-1 exception (per licensing-model.md). The two reasons:

  1. Community pipelines — Tier-3 community libs/mods need to call into these workflows from their own repos. Forcing per-repo Deploy- Token setup would defeat the DRY-CI value proposition entirely (every contributor would need infrastructure permissions).
  2. Minimal IP exposure — only YAML pipeline definitions live here, no architecture docs, no proprietary source. The workflows describe how to build but not what to build — that intelligence stays in sporel-engine (private) and sporel-meta (private).

Other Tier-1-public exception: sporel-meta (modder-readable docs, when promoted post-legal-review).

Caller-Template Usage

In each Sporel repo, .gitea/workflows/release.yml is a thin caller:

name: CI

on:
  push:
    branches: [master]
    tags: ['v*']
  pull_request:

jobs:
  ci:
    uses: calic/sporel-tool-ci/.gitea/workflows/reusable-<category>.yml@master
    with:
      <inputs-per-workflow>
    secrets: inherit

Caller-templates per category live in sporel-meta/templates/workflow-callers/.

Versioning

Pin specific revisions for reproducibility:

uses: calic/sporel-tool-ci/.gitea/workflows/reusable-engine-launcher.yml@v0.1.0

@master is convenient during active development; pin to tag for production stability.

License

Proprietary — all rights reserved. Tier 1 content per ADR-0027. Public-readable for the practical reasons above; not re-distributable. See LICENSE.

⚠ WIP — legal review pending before public release.

Description
Reusable Gitea-Actions workflows for the Sporel platform (5 categories per ADR-0025). Public so community pipelines can call into them without per-repo token setup.
Readme 43 KiB