ci: GitHub Actions backend missing skinny-install job — parity gap with Gitea #227

Closed
opened 2026-03-25 04:00:26 +00:00 by kert · 2 comments
Owner

Problem

The Gitea Actions CI workflow has a skinny-install matrix job that tests every optional extra installs and imports correctly. The GitHub Actions backend (dev/scripts/backends/github.py) does not have this job.

This violates the multi-backend parity requirement: switching ci.backend in stack.toml should produce equivalent CI coverage.

Tasks

  • Add skinny-install job to github.py _gen_ci() with same matrix as Gitea
  • Include perf in the matrix (12 extras total)
  • Add failure step to the skinny-install job
  • Verify both backends produce equivalent CI coverage
  • Tests
## Problem The Gitea Actions CI workflow has a `skinny-install` matrix job that tests every optional extra installs and imports correctly. The GitHub Actions backend (`dev/scripts/backends/github.py`) does not have this job. This violates the multi-backend parity requirement: switching `ci.backend` in stack.toml should produce equivalent CI coverage. ## Tasks - [ ] Add `skinny-install` job to `github.py` `_gen_ci()` with same matrix as Gitea - [ ] Include `perf` in the matrix (12 extras total) - [ ] Add failure step to the skinny-install job - [ ] Verify both backends produce equivalent CI coverage - [ ] Tests
kert added this to the P28: DAB Modernization — Python wheel tasks, databricks-bundles, schema cleanup milestone 2026-03-25 04:00:26 +00:00
Author
Owner

Starting. Adding skinny-install matrix job to github.py _gen_ci().

Starting. Adding skinny-install matrix job to github.py _gen_ci().
Author
Owner

Complete.

GitHub Actions (github.py):

  • Added skinny-install matrix job with 12 extras including perf
  • Added failure step to skinny-install job

Woodpecker (woodpecker.py):

  • Added skinny-install step with loop through all 12 extras
  • Uses single step with for extra in ... (Woodpecker has no matrix strategy)

Parity audit:

gitea:      skinny=True  perf=True  failure=True
github:     skinny=True  perf=True  failure=True
woodpecker: skinny=True  perf=True  failure=True

✅ All 3 backends at parity. 12,061 tests pass.

Complete. **GitHub Actions** (`github.py`): - Added `skinny-install` matrix job with 12 extras including `perf` - Added failure step to skinny-install job **Woodpecker** (`woodpecker.py`): - Added `skinny-install` step with loop through all 12 extras - Uses single step with `for extra in ...` (Woodpecker has no matrix strategy) **Parity audit:** ``` gitea: skinny=True perf=True failure=True github: skinny=True perf=True failure=True woodpecker: skinny=True perf=True failure=True ``` ✅ All 3 backends at parity. 12,061 tests pass.
kert closed this issue 2026-03-25 04:06:26 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: homelab/stack#227