This page contains tech notes pertaining to Bahmni EMR dockerization activity.
Bahmni EMR High Level Tech Stack Diagram:
Image RemovedImage Added Info |
---|
Current version of Bahmni is using OpenMRS 2.1.1. But OpenMRS recommends to use 2.1.4 as it has lot of bug fixes and it is the supported release for 2.1.X series. So Bahmni EMR Docker will be using OpenMRS Distro 2.1.4. More about OpenMRS release can be found here. |
EMR - Backend
Expand |
---|
|
Action Plan:Use OpenMRS base image and MySQL image to just run Clean OpenMRS Add legacy ui omod and validate if we can login to openmrs Build dependent repo codebases locally. Status |
---|
colour | Red |
---|
title | NEEDS ASSISTANCE |
---|
|
Create database images Fresh Database image Demo Database image
Create Bahmni OpenMRS image Initially volume mount modules and test functionality Bake Bahmni Module OMODS in the docker image Override OpenMRS start script to perform migrations, postinstall, configuration Have a look at bahmni-emr-ansible templates
Include bahmni-lab-connect OMOD and its RPM scripts Lab Connect OMOD comes with bahmni distro, so skipping it . Only liquibase migrations for Atomfeed client has been done using custom script
Validate atomfeed sync between different services Validate for fresh instances of databases Validate for demo instances of databases Status |
---|
colour | Blue |
---|
title | IN PROGRESS |
---|
|
When using demo dumps from emr-functional-tests repository there seems to be a mismatch with master data between ELIS and MRS. But sync between EMR and Odoo happens. The following exception is thrown by OpenMRS. Code Block |
---|
| ERROR - BaseRestController.handleException(115) |2021-10-06 08:37:45,455| No panel concept found with uuid 12f404d7-7615-412d-abb8-9273608c12e5
org.openmrs.module.emrapi.encounter.exception.ConceptNotFoundException: No panel concept found with uuid 12f404d7-7615-412d-abb8-9273608c12e5
at org.bahmni.module.referencedata.web.controller.PanelController.getPanel(PanelController.java:33)
at sun.reflect.GeneratedMethodAccessor538.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:177) |
Demo backups from bahmni-scripts repository should be used and tested.
Volume mount required folders Implementer Provisions to add new modules Developer Provisions to add/update Bahmni modules Update Documentation at README.md Configure Github Actions for Image build and publish Compare EMR functional tests DB backups with bahmni-scripts DB backups Status |
---|
colour | Blue |
---|
title | IN PROGRESS |
---|
|
Try with MySQL 8.0
Dependent Repos to Look :Repo Name | Use Case | How is it included in dockerization |
---|
bahmni-core | Provides Bahmni Core OMODs | | openmrs-distro-bahmni | Provides all bahmni-distro.zip | | emr-functional-tests | Replace bahmni-package/bahmni-emr/resources/demo-dump from here | Used by build script while building DB docker image | bahmni-package | RPM config and Build scripts | Config files has been templated and replaced at runtime using envsubst |
Known Issues:Logout returns 404. Analysis: This happens only when bahmni database dumps are used. When started against a fresh mysql:5.7 instance, seems to work good. Temporary Fix : When openmrs is restarted once, logout feature works fine. However need to find the root cause for the problem when it is started.
|
EMR - Frontend: