pom-scijava
pom-scijava copied to clipboard
building ComDet plugin as maven artifact
Hello @ctrueden,
following on this topic https://github.com/imagej/pyimagej/issues/173#issuecomment-1038473992 If you can point me towards some docs on how I can build and publish the plugin in maven. Thanks in advance for your help!
Cheers, Eugene
@ekatrukha The document describing how releases work with SciJava components is here.
The TL;DR version is:
-
Add me as an admin to your repository. I will add environment variables with credentials for CI to deploy to maven.scijava.org on every build, and then remove myself from the repository.
-
You will then be able to use the
release-version.sh
script to cut releases, which also get deployed to maven.scijava.org. -
Optionally, you can add your plugin to the SciJava Bill of Materials (pom-scijava) so that it becomes part of the SciJava component collection, and gets tested along with all the other things in there. This will let us detect version skew more quickly, e.g. if an underlying library you use breaks backward compatibility in a way that affects your plugin. It will also add your plugin to the status.scijava.org table, so that you can see at a glance where the plugin is at, maintenance-wise.
Hey @ctrueden
I am sorry for delay, many things happened. I've added you as a collaborator to the repository, hope it works.
@ekatrukha Sorry for dropping the ball on this. I tried to accept the invite to add the credentials, but it has expired. :frowning: Could you send the invite again? I promise to act more quickly in response this time.
@ctrueden no worries, during this time I had opportunity to learn a bit about deployment, so your first message makes more sense now. I've sent invite again, no rush.
@ekatrukha I accepted the invitation. But it looks like it is only push access, not admin. To add the secrets I need admin so that I can go into the Settings tab and create the environment variables. You can remove me again once they are added. Thanks!
Hello @ctrueden,
after reading some docs, it seems that the addition of secrets to a personal account repository (as it is with ComDet now) via web UI is allowed only to the owner, not collaborators (they can use REST API though, but it doesn't seem very easy). And there is no admin role in the personal repositories, just owner/collaborator.
As a solution, I will transfer ComDet repo to our organization account tomorrow and add you as an admin there, for an organization it is possible/straightforward. Thank you for your patience :)
As a solution, I will transfer ComDet repo to our organization account tomorrow
@ekatrukha Sounds good!
It should work now
@ekatrukha Sorry for the delay once again. I finally came back around to taking care of this. I added the needed secrets to the UU-cellbiology organization, and then with UU-cellbiology/ComDet@022b8da96189a61765404023537c50f291762b8d the project is now configured to use GitHub Actions CI. I also did various cleanups to the pom-xml to bring it up to the current best practices, and fixed the javadoc errors.
SNAPSHOT builds are now successfully deployed on maven.scijava.org. When you want to make a release of the plugin, just run release-version.sh
from the scijava-scripts repository. For further details, see this wiki page.
:beers: