Better support for uploading to multiple modrinth projects at once
pupnewfster opened this issue · comments
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 TaskModrinthUpload
s 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 theTaskModrinthUpload
when created/applied and just leave it to devs to declare when they are declaring the custom upload tasks.
Adding onto this (I can open it as another request if you would like), one thing that would be useful is to also then have a way to get the version id of uploaded files. That way for all my secondary projects I could mark them as requiring the matching version of the main project instead of just being able to mark them as requiring the main project in general.
Obtaining the version ID of the uploaded file can be obtained via tasks.modrinth.uploadInfo.id
if I recall correctly.
Ah yeah, seems I missed that part when suggesting the secondary thing.
Wrong issue to close! Oops.