A sort of starting template for me, and a tutorial for anyone seeing this on how to run Forgejo actions on GitHub runners since GH provides unlimited minutes for open source projects and Codeberg, understandably so, cannot keep with what Microsoft can offer.
Of course this method is not perfect as if for example the Forgejo action was called on a PR or dispatched manually, the GH runner will require manual dispatching or waiting for the cron schedule, but it is better than nothing.
currently this repo supports:
ubuntu-latest: through the official forgejo/runner repowindows-latest: through the amazing Crown0815/Forgejo-runner-windows-builder repomacos-latest: through my AMA147000/forgejo-runner-macos-builder repo
If you want to disable one of the OSs, simply remove its workflow and config from the .github folder.
- Add the GH repo as a push mirror for the Codeberg one
- Create a new runner in Codeberg
- Copy the the new runner's UUID and token and put them in GH action secrets called
UBUNTU_LATEST_RUNNER_UUIDandUBUNTU_LATEST_RUNNER_TOKENrespectively
- repeat steps
2and3forWINDOWS_LATEST_RUNNER_UUIDandWINDOWS_LATEST_RUNNER_TOKEN/MACOS_LATEST_RUNNER_UUIDandMACOS_LATEST_RUNNER_TOKEN(with a different runner for each OS)
- Copy the whole
.githubfolder from this repo to yours - In your Forgejo workflows specify that they run on
gh-ubuntu-latest/gh-windows-latest/gh-macos-latest