📣 Ozone 1.0.0-alpha.7 Released

Dear Community

:mega: We are thrilled to let you all know that Ozone 1.0.0-alpha.7 was released on October 27th :tada:

What’s new in 1.0.0-alpha.7

1) Crystalization of the EIP services architecture

From this release point onwards Ozone adopts a peer-to-peer approach to orchestrating its HIS data flows. Each pair of components exchanges data and transforms messages through a dedicated service for that pair. Below is the current inventory of such services:

  • OpenMRS ←→ Odoo
  • OpenMRS ←→ SENAITE
  • (Pro only) OpenMRS ←→ Keycloak
  • there is more to come:drum:

Note however that this doesn’t prevent developers to create services that involve more than two HIS components.

2) (Pro only) Ozone Analytics queries become fully configurable

In Ozone Pro, data flattening queries have become a piece of configuration of Ozone Analytics. This tremendously simplifies the process of adapting ETL process for each implementation based on their specific needs.

Let’s use this item to remind everyone that Ozone Analytics streams data (in real-time) from all Ozone HIS’ components (not just OpenMRS) into a data lake ready to be consumed by any BI tool (Superset by default in Ozone HIS).

3) (Pro only) OpenMRS roles synced into Keycloak

In Ozone Pro, the user roles from all the components are synced into the IdP to enable a centralized management of users from the IdP - which is Keycloak by default in Ozone Pro. This now started happening with OpenMRS roles through a new OpenMRS ←→ Keycloak service. From here on this principle will apply to each HIS component as they are made available in the Ozone HIS ecosystem. Stay tuned with the next releases about this.

4) Other changes in this release

  • (Pro only) Keycloak upgraded to v22.0.0.
  • (Pro only) Apache Superset upgraded to v2.1.0.
  • A couple of EIP layer optimizations by improving MySQL binlog settings and increasing PostgreSQL maximum connections.
  • We fixed a 404 error because of an incorrect redirection of the root URL when already authenticated.
  • We started working on an official documentation that will be split across
    • Functional documentation
    • Implementers documentation
    • Developers documentation

Try out 1.0.0-alpha.7

What does the roadmap look like?

Which What When
alpha.8 This is a bit of a filler. Exactly the same as alpha.7 but bundling an upgraded O3 (beta.15 or beta.16). Mid November
alpha.9 Structural change in how the Ozone HIS distribution is organised. Docker will remain the default deployment mechanism but will be untied from Ozone HIS. EOY
alpha.10 Last bits that had to be pushed back to let alpha.9 focus on its structural change. There may still be some actual new features coming here though. Q1 2024
beta.1 Ozone HIS made stable and documented. Q1 2024

Any feedback on this release will be eagerly welcome either here on Talk or on Slack’s channel #ozone.

Cc @abd.ak @afewerki @ahabib @aidjali @andylinton @dagimm @drizzentic @enochb @ersan @gsluthra @hadijah315 @hassan180 @hmouhtar @jack.carney2 @johnny94 @jtukey @manuel @michaelbontyes @mwovi @ornella @paul.cleary @ramashish @ronaldm @rubailly @sanjayap @shahin1 @shyamji @sthote @tamunoseimiebi @valens200 @zacbutko - @AMPATH @Brown @Mekom @OpenMRSInc @PalladiumKenya @PIH @Sonder @UCSF @UWash

10 Likes

Thanks so much Dimitri, these notes are so helpful.

Critical request: It’s often unclear to us (the O3 release team as-is) what exactly Ozone is expecting from a given O3 release. In general to reduce O3 RefApp release confusion, Dennis and Ian and I are really trying to leverage the Fix Versions more, e.g. we’ve been applying labels for the beta.14 and beta.15 releases, see beta.15 here: https://issues.openmrs.org/projects/O3/versions/34001

Can you please kindly use the Fix Version labels to identify what you/your team expects to be part of beta.15 releases?

FYI we’ve decided today that the next O3 release after beta.15 will be the official 3.0.0 - official announcement / explainer to come.

…I’ve also updated the (very WIP) O3 Release Roadmap page to reflect this.

1 Like

Quoting our new Ozone docs (here):

Ozone packages the latest LTS versions of its components ‘as-is’.

If you look at this table, O3 is a bit of an outlier because it is the only one that isn’t LTS, and that is, theoretically at least, a problem.

What we need from O3 is a stable LTS release, and I doubt that this is what’s coming after beta.15 or so. Committing the community to an LTS release is quite something, and needs to be thought through carefully.

2 Likes

That’s not really a question for the Ozone Team, rather for the Cambodia team. I took it to #cambodia here.

1 Like

Thank you very much for your work, Dimitri. I am looking forward to any news from you. I wonder if there will be any developments regarding the Senaite version update? Currently, version 2.0.0rc2 is coming with Ozone. Senaite version 2.4.1 is currently available. Version 2.5.0 is expected within 1 or 2 weeks here.

That’s an interesting request @ersan, thanks for asking the question.

Ozone is both 1) an interoperability layer (Ozone Platform) and 2) an ecosystem of digital health software (Ozone HIS). As such Ozone contributors focus on making both aspects better. Recently however, and in order to be ready with our first beta release, we have mostly focused on 1), leaving 2) a bit behind. (Except maybe for the recent upgrades of Keycloak and Superset but those are mostly Pro features.)

Additionally we also would want to upgrade Odoo from v14 to v16.


I will definitely ticket this but I would like to ask you if you’d be in a position to test already that everything seems to be fine with Ozone HIS when using SENAITE 2.4.1?

2 Likes

Thank you for your response and ticket, @mksd . I eagerly await each new version:)

I continue to test both SENAITE 2.4.1 and the unreleased Senaite 2.5.0 versions, but haven’t succeeded yet. I suspect there might be a significant structural change, especially in transitioning from SENAITE 2.0.0 to SENAITE 2.1.0, based on my observations [here].

Fyi I have ticketed this internally, so we will look into it, but I can’t commit on a timeline yet, and in particular I can’t commit of having this part of 1.0.0 yet.

@ruhanga could you look quick in the changelog shared by @ersan above to see if we should anticipate model/API changes? (That’s the downside of a system not speaking FHIR… :angry:)

If there aren’t any API changes then this “should” not be too complicated.

2 Likes

Thanks for testing and providing feedback about your findings @ersan. How are you coming up with the version 2.0.0rc2?

Ozone FOSS already runs on SENAITE 2.1.0. Ozone Pro already supports SENAITE 2.3.0. You can test with the Pro instance on the demo site here with the credentials jdoe/password for username/password. We are yet to upgrade to the latest stable LTS release for SENAITE for both FOSS and Pro.

1 Like

@ruhanga what’s holding us from updating SENAITE in FOSS to 2.3.0?

1 Like

Nothing really… I’ll put up a PR for this upgrade on FOSS to v2.3.0.

2 Likes

I have checked the version now from localhost:8081/prefs_install_products_form SENAITE CORE Add-on *– (senaite.core 2.1.0)* I am really sory for wrong informaition. I always checked here for version information: (docker hub) @ruhanga

It’s great news that you upgraded FOSS to 2.3.0, thank you.

1 Like

A post was split to a new topic: :mega: Ozone 1.0.0-alpha.8 Released

I am getting the following error when trying to install ozone manually:

Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:3.2.0:unpack (default-cli) on project ozone-docker-compose:
  Unable to find/resolve artifact.:
    The following artifacts could not be resolved:
      com.ozonehis:ozone-distro:zip:1.0.0-alpha.8 (present, but unavailable):
        com.ozonehis:ozone-distro:zip:1.0.0-alpha.8 was not found in https://repo.maven.apache.org/maven2 during a previous attempt.

@nvvnravi are you trying out alpha.7 or alpha.8? Coud you describe the exact steps that you have performed, and compare them to the steps running in Gitpod?

  • Here is the Gitpod button for alpha.7
  • Here is the Gitpod button for alpha.8

I tried both and getting the same error. to bypass this error i had to unzip the distro from the maven repo and then set up the

export DISTRO_PATH=$OZONE_DIR/ozone-distro-$VERSION

I am using the steps mentioned at Manual Setup - Docs

Now when i ru docker compose i am getting a different error:

docker compose -f docker-compose-common.yml   -f docker-compose-openmrs.yml   -f dock
er-compose-senaite.yml   -f docker-compose-odoo.yml   -f docker-compose-superset.yml   -p $DISTRO_GROUP up
1 error(s) decoding:

* error decoding 'volumes[6]': invalid spec: :/etc/properties/: empty section between colons

same thing i posted in a different forum.

@nvvnravi did you see this? :point_right: Ozone - Docker error "* error decoding 'Volumes[0]': invalid spec: :/opt/env-substitution/files: empty section between colons" - #2 by hmouhtar

Yes and i replied to it too