TEST-INFRA: [ci-pipeline-design] Use reusable workflows for setup #2861

Open
opened 2026-04-04 21:02:37 +00:00 by freemo · 0 comments
Owner

Metadata

  • Branch: task/ci-reusable-workflow-setup
  • Commit Message: refactor(ci): extract common setup steps into a reusable workflow
  • Milestone: v3.8.0
  • Parent Epic: #1678

Background and Context

The CI pipeline currently has a significant amount of boilerplate code duplicated across every job. Each job independently repeats the same setup steps: checking out the code, installing Node.js, installing uv, and installing nox. This duplication makes the pipeline harder to maintain — any change to the setup process (e.g., pinning a new tool version) must be applied to every job individually, increasing the risk of inconsistency and human error.

Forgejo Actions supports reusable workflows, which allow common steps to be extracted into a single callable workflow file. Adopting this pattern will centralise the setup logic, reduce repetition, and make the CI configuration significantly easier to maintain.

Subtasks

  • Create a new reusable workflow file at .forgejo/workflows/_setup.yml (or equivalent) containing the common setup steps (checkout, Node.js install, uv install, nox install)
  • Move all common environment setup steps from individual jobs into the reusable workflow
  • Update all existing CI jobs in .forgejo/workflows/ci.yml to call the reusable workflow via uses: instead of repeating the setup steps inline
  • Update features/ci_workflow_validation.feature to assert that the reusable workflow is used by all jobs
  • Verify all nox stages pass after the refactor
  • Confirm coverage ≥ 97%

Definition of Done

  • A reusable workflow file exists in .forgejo/workflows/ containing the common setup steps
  • All CI jobs delegate their environment setup to the reusable workflow — no inline duplication of setup steps remains
  • features/ci_workflow_validation.feature is updated to cover the reusable workflow usage
  • The CI pipeline configuration is cleaner and easier to maintain
  • All nox stages pass
  • Coverage >= 97%

Automated by CleverAgents Bot
Supervisor: Test Infrastructure | Agent: ca-new-issue-creator

## Metadata - **Branch**: `task/ci-reusable-workflow-setup` - **Commit Message**: `refactor(ci): extract common setup steps into a reusable workflow` - **Milestone**: v3.8.0 - **Parent Epic**: #1678 ## Background and Context The CI pipeline currently has a significant amount of boilerplate code duplicated across every job. Each job independently repeats the same setup steps: checking out the code, installing Node.js, installing `uv`, and installing `nox`. This duplication makes the pipeline harder to maintain — any change to the setup process (e.g., pinning a new tool version) must be applied to every job individually, increasing the risk of inconsistency and human error. Forgejo Actions supports [reusable workflows](https://docs.github.com/en/actions/sharing-automations/reusing-workflows), which allow common steps to be extracted into a single callable workflow file. Adopting this pattern will centralise the setup logic, reduce repetition, and make the CI configuration significantly easier to maintain. ## Subtasks - [ ] Create a new reusable workflow file at `.forgejo/workflows/_setup.yml` (or equivalent) containing the common setup steps (checkout, Node.js install, `uv` install, `nox` install) - [ ] Move all common environment setup steps from individual jobs into the reusable workflow - [ ] Update all existing CI jobs in `.forgejo/workflows/ci.yml` to call the reusable workflow via `uses:` instead of repeating the setup steps inline - [ ] Update `features/ci_workflow_validation.feature` to assert that the reusable workflow is used by all jobs - [ ] Verify all nox stages pass after the refactor - [ ] Confirm coverage ≥ 97% ## Definition of Done - [ ] A reusable workflow file exists in `.forgejo/workflows/` containing the common setup steps - [ ] All CI jobs delegate their environment setup to the reusable workflow — no inline duplication of setup steps remains - [ ] `features/ci_workflow_validation.feature` is updated to cover the reusable workflow usage - [ ] The CI pipeline configuration is cleaner and easier to maintain - [ ] All nox stages pass - [ ] Coverage >= 97% --- **Automated by CleverAgents Bot** Supervisor: Test Infrastructure | Agent: ca-new-issue-creator
freemo added this to the v3.8.0 milestone 2026-04-04 21:02:46 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
cleveragents/cleveragents-core#2861
No description provided.