Hangar publishing¶
What this does¶
Pushes the MythicRod Paper jar to the project page at
https://hangar.papermc.io/xcutiboo/MythicRod whenever a v* tag lands
on master.
What it uses¶
.github/workflows/publish-hangar.ymlio.papermc.hangar-publish-pluginconfigured inmythicrod-paper/build.gradle.kts- Repository secret:
HANGAR_API_TOKEN - Project slug:
MythicRod
Required secret¶
- Go to https://hangar.papermc.io/auth/settings/api-keys.
- Create a key with
create_versionpermission on the MythicRod project. - Save it to the repo as
HANGAR_API_TOKENat https://github.com/xcutiboo/MythicRod/settings/secrets/actions.
What gets uploaded¶
| Field | Source |
|---|---|
| Version | tag with the leading v stripped |
| Channel | Snapshot for any version containing -, else Release |
| Jar | mythicrod-paper/build/libs/MythicRod-Paper-<version>.jar |
| Changelog | CHANGELOG.md from the tagged commit |
| Platform | Paper |
| Platform versions | value of paperVersion in gradle.properties |
Smoke check before the first release¶
The workflow logs Skipping Hangar publish: HANGAR_API_TOKEN is not
configured. when the secret is missing. That is the safe failure mode.
When something fails¶
- 401 / 403 from Hangar: token expired or missing scope. Regenerate the key.
- 409 conflict on version: the same version already exists on Hangar. Delete it from the Hangar UI or pick a new tag.
- Missing jar:
shadowJaris required. The release workflow does run it, but aruns-onchange or cache regression can cause a stale build. Re-run from a clean workflow trigger.