User Tools

Site Tools


05_developer_tutorials:02_extending_groimp:release-your-own-plugin

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
05_developer_tutorials:02_extending_groimp:release-your-own-plugin [2026/05/29 11:10] – [Releasing your own plugin] Tim05_developer_tutorials:02_extending_groimp:release-your-own-plugin [2026/05/29 12:00] (current) – [Trouble shoot] Tim
Line 1: Line 1:
 ====== Releasing your own plugin ====== ====== Releasing your own plugin ======
  
-After you created an plugin that works with the latest released version of GroIMP, you can publish this plugin to the GroIMP plugin manger. This tutorial assumes you use a gitlab repository, yet this is not required for a GroIMP plugin(see [[#doing_it_without_gitlab]] ).  +After you created an plugin that works with the latest released version of GroIMP, you can publish this plugin to the GroIMP plugin manger. This tutorial assumes you use a gitlab repository, yet this is not required for a GroIMP plugin(see [[#doing_it_without_gitlab | below]] ).  
  
  
Line 33: Line 33:
 ===== Requirements ===== ===== Requirements =====
  
-The following steps require a gitlab repository +The following steps require a Gitlab repository that follows the shape of our [[https://gitlab.com/grogra/groimp-template/newplugin-maven|template]]. The code in this plugin must be compilable with the latest released version of GroIMP. Please also test that the documentation you provide compiles properly (see [[05_developer_tutorials:03_maintenance:making-a-groimp-maven#compile_with_help_panels]] and [[05_developer_tutorials:02_extending_groimp:markdowndoku#markdown_syntax_groimp_flavored_markdown]]).  
 + 
 +Further more make sure you have added the right information to your plugin.json file. 
 +  
 +===== First release ===== 
 + 
 +Assuming you want to release the very first version of your plugin eg. ''0.1'', you first have to make sure that this version is also set in the pom.xml (as ''<version>0.1</version>'' [[https://gitlab.com/grogra/groimp-template/newplugin-maven/-/blob/master/pom.xml?ref_type=heads#L11| example]]) and in the plugin.xml file ([[https://gitlab.com/grogra/groimp-template/newplugin-maven/-/blob/master/src/main/resources/plugin.xml?ref_type=heads#L4| example]]). 
 + 
 +If this is all pushed to the repository you can create the new tag. You can do this on the web view in the left menu on Code > Tags.  
 + 
 +In the new window on the upper right corner you can create a new tag with the name "0_1" and a summary of what this version does.   
 + 
 +After creating the tag Gitlab automatically starts the pipeline to compile the java package. You can observe whats happening if you got on Build > Jobs in the right menu and select the currently running job.  
 + 
 +Assuming this went well and the job succeeded there is one last step you have to do: 
 +Go on the left menu on  Deployment > Pages and select the tab Domain & settings and make sure "Use unique domain" is disabled. This moves the released pages (with the documentation and the plugin.json) to a consistent URL that does not change with future releases.  
 + 
 +This URL extended by "/plugin.json" gives you your plugin.json file this can now be added to GroIMP or to the plugin web explorer.  
 + 
 +===== New releases ===== 
 + 
 +The steps for additional releases are a simpler, you only have to set the versions right in the pom.xml and the plugin.xml file and create a new tag. 
 + 
 + 
  
  
Line 44: Line 67:
  
 ===== Trouble shoot ===== ===== Trouble shoot =====
 +
  
 ==== Change plugin.json ==== ==== Change plugin.json ====
  
 +If you want to change parts of the plugin.json file e.g. the descrption or the help url, or if you want to remove a version, you have to do the following steps:
 +
 +  - Download the plugin.json manually ( form the gitlab page! not from the repository)
 +  - Use the downloaded plugin.json to replace the one in your repo.
 +  - Do do the changes you need to do (make sure it is still a valid json file)
 +  - Delete the Gitlab page ( on the website left menu > Deploy >  Pages, and then delete page). 
 +  - Wait a moment, Gitlab sometimes needs some time to really delete the page. 
 +  - Rerun the pipeline with a version that **is not included in the plugin.json** 
 +
 +=== Why that works: ===
 +
 +The pipeline always tries to download the plugin.json form the gitlab page but since the page is deleted the pipeline uses the plugin.json file from your repo. 
 +
 +==== Remove a version ====
 +
 +Sometimes things go wrong and you want to get rid of a version of your plugin that is already released. 
 +
 +Todo so you need to:
 +  - Remove the tag (Left menu: Code > tags and than the little bin next to the version)
 +  - Delete the package (Left menu: Deploy > package registry and the tree dots next to the packages you want to delete).
 +  - remove the version form the plugin.json (see above).
  
05_developer_tutorials/02_extending_groimp/release-your-own-plugin.1780045829.txt.gz · Last modified: 2026/05/29 11:10 by Tim