It would be nice if there was a better system for publishing to multiple Modrinth projects from a single gradle project. Mekanism is setup in multiple modules split by sourcesets, that then get built into individual jars. A more native way in Minotaur to handle cases like this would be useful and allow for easier automated publishing. The solution/workaround (mekanism/Mekanism@188d050) I came up with while performing some experimentation works by creating new TaskModrinthUploads and then using doFirst to change the configured values of the ModrinthExtension before the task is applied and it queries the extension for values.
Some potential solutions from an API perspective that I come up with might be:
- Similar to how the dependencies block is a nested configuration, making it so some of the properties of the
ModrinthExtension are nested and then it loops them uploading all to the corresponding projects
- A configuration version of the values set in
ModrinthExtension that can be passed to the TaskModrinthUpload when created/applied and just leave it to devs to declare when they are declaring the custom upload tasks.
It would be nice if there was a better system for publishing to multiple Modrinth projects from a single gradle project. Mekanism is setup in multiple modules split by sourcesets, that then get built into individual jars. A more native way in Minotaur to handle cases like this would be useful and allow for easier automated publishing. The solution/workaround (mekanism/Mekanism@188d050) I came up with while performing some experimentation works by creating new
TaskModrinthUploads and then usingdoFirstto change the configured values of theModrinthExtensionbefore the task is applied and it queries the extension for values.Some potential solutions from an API perspective that I come up with might be:
ModrinthExtensionare nested and then it loops them uploading all to the corresponding projectsModrinthExtensionthat can be passed to theTaskModrinthUploadwhen created/applied and just leave it to devs to declare when they are declaring the custom upload tasks.