Wiki Spaces

Documentation
Projects
Resources

Get Help from Others

Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack

Documentation

Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. OpenMRS ID: This is the basic account that you create when associating with OpenMRS.
  2. CI Bamboo Account: The actual release takes place here. You will need your access to this account to finally release the version. Create a new case at OpenMRS helpdesk requesting access for this account.
  3. Administrator role in JIRA for Reference Application Project: Request for being an administrator of the Reference Application project in JIRA from a current Administrator - Presently Darius Jazayeri is an administrator for the project.

Release Process

Begin the process of release management:

  1. Analyse the release stage requirements for the particular release by following  Technical Roadmap.
  2. Attend and organize Project Management Meeting and Design Forum to communicate and decide on what needs to be done throughout the release process.
  3. Create a release management process page to help you and others understand the outstanding tasks to be done.
    1. This can be done on a release tracking wiki page like this one for Ref App 2.7 release tracking.
    2. This can be done on OpenMRS Talk as done here (using the wiki has advantages, so use it if you are uncertain which to use)
  4. Search for tickets in JIRA that have the release version or having tag as OpenMRS 2.x (the version to be released)  and have them fixed before having that module released.
  5. Before people start releasing Reference Application modules, set the bamboo global variable preparing.refapp.distro.release to 'true' (by asking helpdesk if you don't have access)
  6. Make sure that for each module that needs a new version to be released, that the user documentation in the new wiki page has been updated to reflect the UI changes if necessary.
  7. Set an initial deadline to release all the modules scheduled to be included in the release and request each modules owner to release the modules in that time (make this announcement in Talk, mentioning each module owner so they get notified). Excepting the Reference Application, Reference Application distro, Reference Application, reference demo data, reference metadata, all the other module can be released by this time. For the modules already existing in the release bundle check in OpenMRS github account if any new changes have been made after the previous release if don't request the any action just include it in the release management process that it is in a release ready state. If there are changes request the module owners if they would like to release a new version to be included in the new OpenMRS release.
  8. A module should be released and available via Addons to be considered released. Please verify that each module has been released properly.

Releasing the Reference Metadata module:

Each release of Reference Application should be preceded with a release of the Reference Metadata module in a version matching the Reference Application version. The release is typically done by the Reference Metadata module maintainers, but as a release manager you need to make sure it happens.

Required accounts:

  1. CIEL dictionary dropbox account:  This account is updated with the latest CIEL dictionary and each OpenMRS 2.x release includes the latest released CIEL dictionary. 
    Andrew Kanter manages the account and you would need to mail him  requesting the access for the account. CIEL dictionary is an SQL dump file.
  2. mdsbuilder: It is an OpenMRS server and you would need access to the server, an account in the OpenMRS account and also the mysql openmrs_user/root credentials, please . Please create a new case requesting these accounts at OpenMRS helpdesk . For requesting server access you need to have an SSH key pair. (For windows users new to using an SSH key pair for accessing a linux server , this guide might help you create one. You will have to request helpdesk to give access to this SSH key).

Release steps:

  1. Update CIEL on the mdsbuilder to the latest version using the sql dump that you download from the CIEL dictionary dropbox account.
    Here's the list of commands needed to do the import. Replace "raff<username>" with your username.

    Code Block
    languagebash
    scp openmrs_concepts_2.0_20181012.sql.zip raff@mdsbuilder<username>@mdsbuilder.openmrs.org:/hometmp/raff/openmrs_concepts_2.0_20181012.sql.zip
    ssh raff@mdsbuilder<username>@mdsbuilder.openmrs.org
    cd /tmp
    unzip openmrs_concepts_2.0_20181012.sql.zip
    sudo -s
    cd /root/docker/mdsbuilder
    docker cp /hometmp/raff/openmrs_concepts_2.0_20181012.sql mdsbuilder_db_1:/home/
    cat .env
    docker exec -it mdsbuilder_db_1 /bin/bash
    
    # copy as is, do not attempt to replace it
    mysql -u root${MYSQL_USER} -p openmrsp${MYSQL_PASSWORD} ${MYSQL_DATABASE} < /hometmp/openmrs_concepts_2.0_20181012.sql
    #use the mysql root password from .env file
    exit


  2. Update Metadata Sharing packages to the latest versions of CIEL concepts
    1. Login to mdsbuilder OpenMRS instance.
    2. Go to Administration -> Metadata Sharing -> Export Metadata and choose a package (repeat b. and c. for the following packages: Reference Application Concepts, Reference Application Diagnoses, Reference Application Order Entry and Allergies Concepts)
      1. Click New Version.
      2. Follow the creating package wizard leaving all defaults.
    3. Click Download Latest to get the zip file for that package. 
  3. Export concepts using data exchange to preserve IDs for later updates of CIEL.
    1. Login to mds builder.
    2. Go to System Administration -> Advanced Administration -> Data Exchange Module / Export. Upload zip files from all you downloaded in 2. c, this generates an xml data set, copy the contents of the generated files to their respective xml files under https://github.com/openmrs/openmrs-module-referencemetadata/blob/master/api/src/main/resources
    3. Add any missing calls to dataImporter.importData(...) in https://github.com/openmrs/openmrs-module-referencemetadata/blob/master/api/src/main/java/org/openmrs/module/referencemetadata/ReferenceMetadataActivator.java to load all files with the exported concepts.
    4. Set ReferenceMetadataConstants.METADATA_VERSION to a value higher by 1
    5. Remove zip packages containing concepts (if any) from https://github.com/openmrs/openmrs-module-referencemetadata/tree/master/api/src/main/resources and their declarations in https://github.com/openmrs/openmrs-module-referencemetadata/blob/master/api/src/main/resources/packages.xml
    6. Commit and push changes.
    7. Release the Reference Metadata Module with the version matching the release version of OpenMRS 2.x

...