You’ve probably already heard of OpenStack, the cloud operating system, where Red Hat is the top company contributor to the project. What you may not know is that Red Hat engineers develop an open source translation management platform called Zanata.

When Carlos Munoz from the Red Hat Zanata team heard that OpenStack localization (l10n) team were looking for a new alternative to their current translation platform, he went to the OpenStack Summit in Atlanta to introduce Zanata.

Read on for Carlos’ account of how Red Hat supports the OpenStack project in a somewhat special way.

Hey Carlos, for those who don't know, can you give an elevator pitch for Zanata?

Zanata is an open source translation management platform developed jointly by the internationalization (i18n) and localization (l10n) teams out of Red Hat's Brisbane office. Red Hat uses Zanata to translate code comments, user interface strings, and documentation from English to 6-8 different languages by projects like RHEV, Wildfly, and RHEL. There are 3 production instances: Jboss.org (43 projects, 310 000 strings under translation), the internal instance (75 projects, 1.5 million strings under translation) and the public instance (37 projects with 700 000 strings under translation).

What makes Zanata unique?

Though alternative projects offer similar translation management features, Zanata has differentiated itself by focusing on providing the best translation workflow based on inputs from Red Hat and community translators.

Why were you at the OpenStack summit? Was it solely to pitch Zanata?

I went to the OpenStack Summit in Atlanta with my boss Shao where were introduced to the OpenStack l10n team and learned of issues with their current tooling. We think that Zanata is a great match for a large, distributed project like OpenStack, and wanted to present our software to some stakeholders in person.

How did the agreement to trial Zanata in Openstack projects happen?

We had a session (below) with them at the Summit where we showed them how Zanata works and some of the advantages it offers. They were impressed, and wanted to kick the tyres (or "tires" in the U.S.) for themselves.

 

What makes Zanata a good match for the Openstack i18n team?

The OpenStack l10n team’s primary motivation for evaluating their translation management platform was the fact it was no longer open source. They wanted a platform that was in keeping with the values of the whole OpenStack project, that they could contribute to and learn from. Zanata fits the bill nicely.

What does the collaboration with the Openstack teams functionally look like?

We were looking to expand usage of Zanata, and by partnering with a such a high profile project, we’ll be able to get it in front of more people. They provide us with a larger community, code contributions, and requests for enhancement. We provide them with support and enhancements.

Where is the collaboration at right now?

The collaboration is currently in the installation phase. Zanata has been developed on JBoss EAP, and the OpenStack l10n team would like to run it on WildFly. Currently we’ve had to provide them with specially compiled, slightly modified builds so they can run them on Wildfly, which is something we hope to address in the next release of Zanata.

What prevents the Openstack l10n team from being able to just download Zanata and run it on Wildfly?

Zanata is developed, tested and deployed on JBoss EAP for support and stability reasons, as well as it being a requirement of the Engineering Operations team inside Red Hat, which manages our production servers. Wildfly is a more 'bleeding edge' version of JBoss, and as such contains several updated components and libraries which a lot of times are not compatible with the ones in the latest release of EAP. In order to make it work on EAP we need to make sure Zanata runs correctly on both platforms and that involves getting configuration and installation right.

How are you enabling the OpenStack l10n team to get started testing now?

We provide a download of Zanata which contains a pre-configured version of JBoss AS 7 (this is what the latest version of EAP is based upon) and an installer that will download and configure Zanata. We have already set this up on an OpenStack-infra server. The next step is to guide some of the developers and content writers on how to push their sources/content into Zanata for translation.

How are you going to change Zanata so that it will run on Wildfly without tweaking?

There are a few options. The one that we favor at the moment involves installing the necessary libraries used by Zanata as either JBoss modules, or packaging them with the Zanata package itself. This will allow us to test with both platforms with as little variation as possible. We also need to make sure that a single Zanata package is able to run unchanged on both platforms, with only external configuration changes needed.

Last updated: September 19, 2023