Skip to content

Conversation

@Jikoo
Copy link
Owner

@Jikoo Jikoo commented Dec 31, 2025

  • Convert script to a common run step
    • This removes the need to clone the repo for each release. We did use a shallow clone before, so it's debatable whether this is better than before as it requires an extra job. I think the most efficient way to do this would be to use a yaml anchor instead, but I'm unsure how/if that would work with GitHub's variable replacement.
  • Replace curseforge-upload with mc-publish
    • curseforge-upload still uses the set-output command, which was deprecated and slated for removal in 2023, though GitHub did walk that back. It is pretty clearly not maintained.
    • mc-publish is not abandoned. The author purportedly has a full rewrite cooking, but due to limited time has not yet gotten there, something I fully understand. They're still available, so v3 should receive any critical updates.

I've made the corresponding Modrinth and Hangar pages, so theoretically all I'll need to do is un-hide the projects when the first release gets pushed out.

TODO:

  • Test anchors/aliases with variable replacement
  • Upload resource pack to Modrinth?
    • I don't know if the pack could be uploaded as a file to the main project or if I'd need another project or something. Need to look into it more. Modrinth does not seem to have project types, only file types.

Closes #353

Convert script to a common run step
Replace curseforge-upload with mc-publish
Divided up script into smaller purpose-built solutions
Should ideally be a little more robust in the face of user (me) errors.
@Jikoo
Copy link
Owner Author

Jikoo commented Dec 31, 2025

Turns out that while GitHub does offer support for anchors, they don't offer support for merge keys. I guess they rolled their own YAML parsing implementation, which does somewhat make sense because I imagine ensuring everything was properly escaped when inserting variables was otherwise a bit of a nightmare.

In terms of resource conservation, I think this is enough to make me happy. If an upload to a platform fails, I should be able to re-run the job for just that platform. You can't select individual steps to rerun, so this is about as good as it's going to get without conditionals and a manual trigger.

@Jikoo
Copy link
Owner Author

Jikoo commented Dec 31, 2025

Going to call this good enough for now. I would like to eventually move to automating resource pack uploads for CurseForge and Modrinth, but I also don't want to bother with needless resource pack updates all the time. I imagine when I do get around to it I'll have to watch certain directories for changes.

@Jikoo Jikoo merged commit c83511e into master Dec 31, 2025
2 checks passed
@Jikoo Jikoo deleted the dev/more-releases branch December 31, 2025 19:39
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.

Modrinth Release

2 participants