Developing the "OCL for OpenMRS" Application


(Darius Jazayeri) #1

Continuing the discussion from "OCL for OpenMRS" application:

Thanks to our partnership with Andela, we’re happy that we’ll have a team of apprentices who will start building the “OCL for OpenMRS” application on Monday.

There’s still room for last-minute comments on the design document:

We will have a kickoff meeting on Monday where I will share context about this project with the dev team. And others (@paynejd, @ball, @dkayiwa, etc) are invited as well.


OpenMRS OCL Client Sprint 1
OCL for OpenMRS User Feedback discussion
(Daniel Kayiwa) #2

@hadijah315 @christopherkala @shakira210791 we shall be sprinting on this. Can you, in the meantime, go through the above design document?

@rubailly this may be of interest to you :slight_smile:


(Bailly Rurangirwa) #3

@dkayiwa- Yup, I’ll join the call.


(Nicholas Ingosi) #4

Any lessons we are borrowing from here https://wiki.openmrs.org/pages/viewpage.action?pageId=70877277 or this totally different


(Daniel Kayiwa) #5

@darius is this the link for today’s kick off meeting? https://hangouts.google.com/hangouts/_/openmrs.org/ocl-for-openmrs?authuser=0


(Darius Jazayeri) #6

@ningosi in fact the OCL Subscription module is still very relevant.

The purpose of this project is to create a new UI for OCL so that people can more effectively create their own dictionaries there.

Once they’ve done this, they’ll use the existing module you linked to, to keep in sync.

It was the link. Apparently I needed to log in using my OpenMRS google account to be able to approve people to join. Next time I’ll try to figure out how to not require approval at all. (I just used the default hangout created by google calendars when I created the event, but apparently that doesn’t behave as desired.)


(Darius Jazayeri) #7

Sharing a comment from the infrastructure team:

  • we should build a docker image (e.g. nginx + our js application)
  • also we should provide a simple docker-compose setup that explains the deployment (basically the team should reach out to the infrastructure team for the details of this)

(They should be able to deploy this on the same servers as currently host openconceptlab.)


(Josephat Mwaura Waweru) #8

Hey everyone. My team and I are excited to start a new sprint for a new product (Open Concept Lab for OpenMRS). implementing project setup, authentication, and user dashboard features. The sprint will be two weeks long and with support from the community, we hope to finish working on the feature by the time the sprint ends.

Ticket urls:

https://issues.openmrs.org/browse/OCL-1

https://issues.openmrs.org/browse/OCL-2

https://issues.openmrs.org/browse/OCL-3

https://issues.openmrs.org/browse/OCL-4

https://issues.openmrs.org/browse/OCL-5

Start Date: 02-05-2018

End Date: 16-05-2018

Resources

Github Repository: https://github.com/openmrs/openmrs-ocl-client

Jira Board: https://issues.openmrs.org/secure/RapidBoard.jspa?projectKey=OCL&rapidView=158

Wiki: https://wiki.openmrs.org/display/docs/OpenMRS+OCL+Client+Sprint+1

Team Lead: Daniel Kayiwa (@dkayiwa )

Development team

  1. Kyampeire Hadijah{@hadijah315 }
  2. Shakira Ndagire Seruwagi {@shakira210791 }
  3. Christopher Kalule {@christopherkala }
  4. Waweru Mwaura {@waweru }
  5. Rurangirwa Bailly {@rubailly }
  6. Emmanuel Ndukwe {@emasys }

(Darius Jazayeri) #9

I’m excited to see this work happening, and happy to participate in the Product Owner role. Feel free to ask me for clarifications or to do QA/UAT of features at any point.

I have merged the “Sprint 1” topic into this “Developing…” topic. Let’s keep most of the conversations (including announcing the sprint kickoff and demo) consolidated into this one talk thread, so that it’s easier for other interested stakeholders to watch just one place (as they may be less likely to notice new Talk topics).


(Darius Jazayeri) #10

Hey dev team, could you give an update on how things are proceeding in terms of getting this deployed to a qa environment? (Just to be clear I’m expecting you all to push forward on that by asking for support on it as necessary.)


(Darius Jazayeri) #11

Also:

  • I renamed the JIRA project and changed its key (from OCL to OCLOMRS). The reason is that if someone types a project key in a search box, JIRA automatically tries to be smart with this, but since “ocl” may be used in other OpenMRS projects, I don’t want this to happen.
  • I don’t really like the repo name “openmrs-ocl-client”. From the consumer’s perspective this is an application or a web UI, not a “client”, right? I would call it something like “ocl-for-openmrs” or “ocl-for-openmrs-ui” or something like that.

(Josephat Mwaura Waweru) #12

Makes sense. we will work with @dkayiwa to resolve the repository name issue.


(Josephat Mwaura Waweru) #13

We have finished setup and it has already been merged to master, the login ticket is now up. As the login is done we will now create a sub-ticket for deployment to the qa environment for the live deployment. given the nature of the setup process and authentication, we cannot move very fast as we would like to since most of the current tasks are highly dependent on each other.


(Hadijah Kyampeire) #14

That is right , we shall inform @dkayiwa to rename it


(Josephat Mwaura Waweru) #15

hey @darius where should we host the openmrs-ocl app. Given that the project setup is ready, i think we can move to the next step of hosting it.


(Daniel Kayiwa) #16

How about “openmrs-ocl-webui”? :smile:


(Darius Jazayeri) #17

See a comment of mine earlier in the thread: Developing the "OCL for OpenMRS" Application

You will need to set up a CI process to create a docker image and push it to dockerhub. (I don’t know if travis is sufficient, or we need ci.openmrs.org. Or actually maybe there’s an OCL CI server…)

Then you’ll need a simple docker-compose file that says how to deploy this on OpenMRS’s infrastructure. But the first step is to make a request on help.openmrs.org.


(Shakira Ndagire Seruwagi) #18

That makes alot of sense


(Hadijah Kyampeire) #19

Hello @darius , As i was working on the ticket for Login implementation, I got a blocker where one is unable to login through the API, from our understanding the expected passwords are in hashed format which is different from the plain data that we are sending to the API. Do you mind shedding some light on how the login implementation is done for the traditional OCL using the API endpoints and how we can implement the same on the OpenMRS-OCL. Thanks cc @dkayiwa


(Darius Jazayeri) #20

I haven’t looked at this code, but I assume that since the OCL REST API is built on Django, you’d need to use whatever the standard authentication approaches are for Django REST.

@paynejd can you comment on this?