Skip to content

Gitea Actions: workflow guards + .gitea release pipeline#7

Merged
recklessop merged 2 commits into
mainfrom
claude/pensive-easley-4abcbe
May 8, 2026
Merged

Gitea Actions: workflow guards + .gitea release pipeline#7
recklessop merged 2 commits into
mainfrom
claude/pensive-easley-4abcbe

Conversation

@recklessop
Copy link
Copy Markdown
Owner

Gitea-side CI/release support

  • .github/workflows/{release,wiki-sync}.yml get if: github.server_url == 'https://github.com' guards so they no-op when Gitea picks them up. ci.yml still runs on both (plain dotnet build + test) and now also accepts workflow_dispatch for manual testing.
  • .gitea/workflows/release.yml is the Gitea twin of the release pipeline: builds the installer on the self-hosted Windows runner, uses Gitea's REST API to create the release and attach the installer (since softprops/action-gh-release is GitHub-only).

After merge: workflow_dispatch the CI workflow from the Gitea Actions UI to verify the runner is wired up; pushing v0.1.4 (or any future tag) will then build installers on both platforms in parallel.

Generated with Claude Code

recklessop and others added 2 commits May 8, 2026 11:59
…patch

Gitea reads .github/workflows/ for compatibility, so without guards it
tries to run the release and wiki-sync workflows on Gitea too - which
fail because they use softprops/action-gh-release@v2 (GitHub-only) and
push to GitHub-hosted wiki URLs.

Add `if: github.server_url == 'https://github.com'` to the
release-builder and wiki-sync jobs so Gitea no-ops them. ci.yml
(plain dotnet build + test) still runs on both, and now also accepts
workflow_dispatch so it can be triggered by hand to verify a self-
hosted runner is picking up jobs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
.gitea/workflows/release.yml runs on the self-hosted Windows runner
when a v* tag is pushed (or via workflow_dispatch with a version
override for testing without bumping the project).

Mirrors the GitHub release workflow shape - dotnet test, choco-install
Inno Setup if missing, run scripts/build-installer.ps1 - then uses
Gitea's REST API directly for the release-creation + asset-upload
steps (Gitea has no equivalent to softprops/action-gh-release). Token
is the runner-injected secrets.GITHUB_TOKEN, which Gitea provides for
GitHub Actions compatibility.

Path location matters: lives under .gitea/ so GitHub Actions never
sees it, while the existing .github/workflows/release.yml stays
GitHub-only (already gated with `if: github.server_url == ...`).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@recklessop recklessop merged commit 68706df into main May 8, 2026
1 of 2 checks passed
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