Skip to content

ci: migrate GCC post-commit CI ownership and operations to RISE - #4

Open
pz9115 wants to merge 8 commits into
riseproject-dev:mainfrom
pz9115:main
Open

ci: migrate GCC post-commit CI ownership and operations to RISE#4
pz9115 wants to merge 8 commits into
riseproject-dev:mainfrom
pz9115:main

Conversation

@pz9115

@pz9115 pz9115 commented Aug 27, 2026

Copy link
Copy Markdown
Collaborator

Summary

Move the code-side ownership and operation of GCC post-commit CI from the former personal integrations to riseproject-dev.

This PR migrates the toolchain dependency, artifacts, status issues, dashboard, workflow identities, runner policy, and operational documentation while preserving the existing dashboard history.

What changed

Repository and toolchain ownership

  • Point the riscv-gnu-toolchain submodule at riseproject-dev/riscv-gnu-toolchain-ci.
  • Track build-frequent and pin the reviewed toolchain handover commit.
  • Replace active personal repository, Pages, Actions, artifact, and issue references with RISE-owned or repository-relative values.
  • Add a migration guard that prevents legacy service identities and retired GCC 14 configuration from returning.

Artifacts and status reporting

  • Make artifact sources explicit instead of relying on hard-coded personal repositories.
  • Read comparison artifacts, build logs, baselines, and duplicate issues from the current RISE repository.
  • Generate run and issue links from github.server_url and github.repository.
  • Prevent failed or invalid status issues from being selected as valid baselines.

Dashboard

  • Read status issues and artifacts from riseproject-dev/gcc-postcommit-ci.
  • Publish links under https://riseproject-dev.github.io/gcc-postcommit-ci/.
  • Paginate issue ingestion and accept only supported dashboard status-title formats.
  • Ignore pull requests, malformed titles, duplicate hashes, and missing or expired artifacts.
  • Stop resetting the toolchain submodule to an unreviewed remote head during deployment.
  • Add unit coverage for pagination, filtering, deduplication, and empty-repository bootstrap behavior.

Generated dashboard HTML, CSV data, and testsuite history are deliberately not regenerated or included in this PR.

Workflow hardening

  • Declare workflow permissions and reusable-workflow secrets explicitly.
  • Restrict persistent build jobs to dedicated runners labeled self-hosted, linux, x64, and rise-gcc-ci.
  • Keep external-fork pull requests off persistent self-hosted runners.
  • Correct workflow inputs, outputs, retry IDs, artifact fallback behavior, and manual-dispatch configuration.
  • Move the vendor-option checkout from the retired GCC 14 branch to GCC 15.
  • Retain the maintained GCC 15 and GCC 16 release conventions.

Operations

  • Add deployment, cutover, rollback, governance, and runner guidance.
  • Add a maintenance runbook covering regression triage, infrastructure failures, allowlists, caches, dashboard recovery, and required labels.

pz9115 added 8 commits August 27, 2026 23:18
Point the submodule at riseproject-dev and pin the reviewed toolchain handover topic. Refresh the gitlink after the dependency PR merges if its merge strategy rewrites commits.
Move the vendor-option test path off the retired GCC 14 branch while retaining the existing fallback behavior.
Read status issues and artifacts from the RISE repository, keep toolchain links on the RISE fork, and publish generated Pages URLs under riseproject-dev without committing regenerated site output.
Declare reusable-workflow permissions and secrets explicitly, isolate self-hosted work on the RISE runner label, and keep external fork PRs off persistent runners. Fix workflow inputs, outputs, retry IDs, duplicate issue lookup, and dashboard reproducibility.
Paginate status issues, accept only supported dashboard titles, skip missing or expired artifacts, and test filtering and bootstrap behavior in pull-request validation.
Reject personal repository URLs and legacy Patchwork identities in workflows, actions, documentation, and helper scripts, and run the ownership guard in pull-request validation.
Add deployment, cutover, rollback, governance, triage, runner, dashboard, and fuzzer-handover guidance for the RISE-maintained service.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant