Move CI and deployment to the forge #1

Merged
cheapnud merged 1 commit from d/forgejo-pipeline into master 2026-08-12 09:48:58 +00:00
Owner

Forge becomes the primary: workflows move to .forgejo (build, PR review, tag-driven deploy to Megaton via the forge registry and a host git replica), the deployment compose is committed with its memory cap, and the GitHub workflows are removed now that GitHub is a backup mirror.

Forge becomes the primary: workflows move to .forgejo (build, PR review, tag-driven deploy to Megaton via the forge registry and a host git replica), the deployment compose is committed with its memory cap, and the GitHub workflows are removed now that GitHub is a backup mirror.
Move CI and deployment to the forge
All checks were successful
Claude PR Review / AI Code Review (pull_request) Successful in 29s
Build & Test / Build and Test (pull_request) Successful in 4m22s
fb28932b22

🤖 Claude AI Code Review

  1. Summary
    Migrates CI/CD from GitHub Actions to Forgejo workflows with a tag-driven SSH deploy, commits the deployment compose, and removes the old GitHub workflows.

  2. Code Quality
    Thoughtful security handling in the deploy script — semver validation as a trust boundary, token-via-file with 0600 mode, and cleanup traps.

  3. Issues

🟡 pr-review.yml — no permissions: block. The old GitHub workflow declared pull-requests: write / contents: read; the new Forgejo one relies on github.token to fetch PR details and post comments but doesn't set permissions. Depending on the Forgejo Actions default token scope, comment posting (PATCH/POST to issues/comments) may fail. Verify the default token has write access or add the block.

🟡 build.yml / deploy.yml — dotnet-version: '11.0.x' with dotnet-quality: 'preview'. .NET 11 is not released; builds depend on preview SDK availability on the runner. Confirm this is intentional (carried over from the deleted workflow, so likely fine).

🟢 pr-review.yml — the model id claude-opus-4-8 and footer "Claude Opus 4.8" appear to be invalid/nonexistent model names (carried over from the old file). The API call will fail with an error if this isn't a real model. Verify the model string.

🟢 deploy.yml — remote scp writes /tmp/.registry_token to a shared path; if a prior run's remote trap didn't fire (e.g. hard kill), a stale token could linger. Minor given the trap and 0600 mode.

  1. Verdict: REQUEST CHANGES
  • Add/verify a permissions: block (or confirm default token scope) in .forgejo/workflows/pr-review.yml so comment posting works.
  • Confirm the claude-opus-4-8 model id is a valid, callable model.

📊 Tokens: 16868 input + 682 output | 💰 Cost: ~$0.1014
Generated by Claude Opus 4.8 via Gitea Actions

## 🤖 Claude AI Code Review 1. **Summary** Migrates CI/CD from GitHub Actions to Forgejo workflows with a tag-driven SSH deploy, commits the deployment compose, and removes the old GitHub workflows. 2. **Code Quality** ⭐⭐⭐⭐☆ Thoughtful security handling in the deploy script — semver validation as a trust boundary, token-via-file with 0600 mode, and cleanup traps. 3. **Issues** 🟡 pr-review.yml — no `permissions:` block. The old GitHub workflow declared `pull-requests: write` / `contents: read`; the new Forgejo one relies on `github.token` to fetch PR details and post comments but doesn't set permissions. Depending on the Forgejo Actions default token scope, comment posting (PATCH/POST to issues/comments) may fail. Verify the default token has write access or add the block. 🟡 build.yml / deploy.yml — `dotnet-version: '11.0.x'` with `dotnet-quality: 'preview'`. .NET 11 is not released; builds depend on preview SDK availability on the runner. Confirm this is intentional (carried over from the deleted workflow, so likely fine). 🟢 pr-review.yml — the model id `claude-opus-4-8` and footer "Claude Opus 4.8" appear to be invalid/nonexistent model names (carried over from the old file). The API call will fail with an error if this isn't a real model. Verify the model string. 🟢 deploy.yml — remote `scp` writes `/tmp/.registry_token` to a shared path; if a prior run's remote trap didn't fire (e.g. hard kill), a stale token could linger. Minor given the trap and 0600 mode. 4. **Verdict**: **REQUEST CHANGES** - Add/verify a `permissions:` block (or confirm default token scope) in `.forgejo/workflows/pr-review.yml` so comment posting works. - Confirm the `claude-opus-4-8` model id is a valid, callable model. --- 📊 **Tokens**: 16868 input + 682 output | 💰 **Cost**: ~$0.1014 *Generated by Claude Opus 4.8 via Gitea Actions*
cheapnud merged commit 2987a0e969 into master 2026-08-12 09:48:58 +00:00
cheapnud deleted branch d/forgejo-pipeline 2026-08-12 09:48:59 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
cheapnud/CheapClerk!1
No description provided.