Release module in JIRA
In order to release a module you need to be a project lead or an administrator in JIRA. Please e-mail helpdesk@openmrs.org if you want to become a lead or an administrator of a project.
Before you release the module you need to go to project's Overview page e.g. RESTWS and review any issues in the Code-review (post-commit) state. They must be closed before releasing. Next it is recommended to look at any issues in the Code-review (Initial) state to see if they can be merged and closed before releasing. You can skip this step if you do not have time for additional reviews, fixes and merges. Lastly you need to look at issues in the In progress state to make sure that no commits have been merged to the master branch. If it is the case then such issues must be completed. reviewed, and closed as well. (Issues that are assigned to the version, but have had no commits, should be bumped to the next fix version, in a later step.)
Finally you can go to project's Administration -> Versions e.g. RESTWS versions.
You need to add a new fix version. Put the version in the Name column at the top and hit Add to the right.
Next while hovering over the row with the version you want to release click the config icon to the right and choose Release.
The dialog box may report that there are some unresolved issues for this version. You can preview them and decide if they should be addressed before releasing. Otherwise you can select Move issues to version and pick the version you just added from the dropdown. Fill out the release date and click Release.
Deploying to maven
From Bamboo
Some modules already have a 'release' stage on their build. This stage is responsible for doing the release prepare/perform, and updating the version in the refapp distro.
Note | ||
---|---|---|
| ||
Released with success Not yet tested partially released Release stage still in progress |
For those modules, follow Releasing a Module from Bamboo. If you want to configure a new build to do the same, check Configuring a Plan to Release from Bamboo.
From your machine
If you are planning to release a new version of a module locally:
- Get privileges to deploy release artifacts to mavenrepo.openmrs.org
- Actually release the module, using
mvn release:prepare release:perform - more in Maven Release Process
- If the reference application includes the latest a snapshot of this module (you can check here) then update openmrs-distro-referenceapplication/pom.xml to refer to the (new) latest snapshot
Uploading the omod to modules.openmrs.org
If you used Bamboo to release the module, you need to retrieve the omod from nexus e.g. RESTWS omod. The file extension has to be changed from .jar to .omod.
If you used your machine then mvn release plugin will have created your official module-x.y.omod file under omod/target, and deployed this to our maven repository so that developers can access it programmatically.
For implementers to be able to access it manually, you need to upload the omod to the Module Repository (log in using your OpenMRS ID). For further information, see details on publishing your module at the help desk.
Inform about the release
If this module is part of the reference application (check here), especially if it includes a snapshot version, then email the dev-refapp mailing list so that other interested parties know to upgrade their distros (Mirebalais, Bahmni, etc.)