Merge "Explains Zuul tasks and fixes when Zanata syncs"
This commit is contained in:
commit
39052cf0e5
|
@ -2,30 +2,37 @@
|
|||
Translation infrastructure
|
||||
==========================
|
||||
|
||||
A series of scripts in OpenStack infrastructure is used to manage translation
|
||||
changes in Zanata. Without running the scripts, translation changes will not
|
||||
A series of tasks in OpenStack infrastructure is used to manage translation
|
||||
changes in Zanata. Without running the tasks, translation changes will not
|
||||
be reflected into OpenStack projects. This page explains how the infrastructure
|
||||
scripts runs as Jenkins jobs and monitor the jobs status.
|
||||
tasks run actual scripts as `Zuul <https://docs.openstack.org/infra/zuul/>`_
|
||||
jobs and monitor the job status.
|
||||
|
||||
.. _translation-jobs:
|
||||
|
||||
Translation jobs
|
||||
----------------
|
||||
|
||||
We have two types of Jenkins jobs for translations: syncing Zanata with the
|
||||
latest repositories and pushing translations into the repositories.
|
||||
The first job is for Zanata-side updates. It enables Zanata to have up-to-date
|
||||
texts to be translated by comparing OpenStack project repositories and Zanata.
|
||||
On the other hand, the second job is aimed to reflect changes related to
|
||||
translations. For example, if you contribute translations in Zanata, the
|
||||
translation results need to be pushed to the corresponding repositories.
|
||||
We have two types of Zuul jobs for translations: syncing source strings into
|
||||
Zanata with the latest repositories and pushing translations from Zanata into
|
||||
the repositories.
|
||||
The first job is for Zanata-side updates. Up-to-date source strings to be
|
||||
translated are compared and updated between OpenStack project repositories
|
||||
and Zanata. If source texts in OpenStack project repositories are changed,
|
||||
then change sets are pushed into Zanata so translaters deal with up-to-date
|
||||
source strings.
|
||||
On the other hand, the second job is aimed to reflect changes in translated
|
||||
strings in Zanata (after translators do translation activities) into
|
||||
corresponding OpenStack project repositories. The job will propose changes
|
||||
as :doc:`Translation Import <reviewing-translation-import>` Gerrit patches.
|
||||
|
||||
To find updates for both Zanata and OpenStack project repositories,
|
||||
Jenkins starts to run scripts everyday at **6:00 UTC**.
|
||||
Update jobs for Zanata start after patches are merged on OpenStack project
|
||||
repositories, and Zuul starts to run tasks everyday at **6:00 UTC** for
|
||||
the updates on OpenStack project repositories.
|
||||
|
||||
Note that not all translation changes are the target for translation
|
||||
jobs. The goal is to have consistent translated programs, UIs, and
|
||||
documentation. There's not much sense if only a few lines are
|
||||
documentation. There is not much sense if only a few lines are
|
||||
translated. The team has decided that files that have at least 75
|
||||
percent of messages translated will be in the git repositories.
|
||||
|
||||
|
@ -34,8 +41,8 @@ get removed, there is also a lower threshold for releases of **66
|
|||
percent** of messages translated as policy - which is only manually
|
||||
enforced.
|
||||
|
||||
The OpenStack infra scripts currently download new files that are at
|
||||
least **75 percent** translated and if files grow over time but do not
|
||||
The OpenStack infra scripts excuted by tasks currently download new files that
|
||||
are at least **75 percent** translated and if files grow over time but do not
|
||||
get new translations (or strings change too much), they will be
|
||||
removed again automatically from the project with a lower threshold of
|
||||
currently **40 percent**.
|
||||
|
@ -51,20 +58,22 @@ dashboard provides us a convenient way to check the translation job status.
|
|||
* `Post jobs - Syncing to Zanata <http://status.openstack.org/openstack-health/#/g/build_queue/post?groupKey=build_queue&searchJob=translation>`__
|
||||
* `Periodic jobs: Syncing into repos <http://status.openstack.org/openstack-health/#/g/build_queue/periodic?groupKey=build_queue&searchJob=translation>`__
|
||||
|
||||
Translation infrastructure scripts
|
||||
----------------------------------
|
||||
Translation infrastructure tasks and scripts
|
||||
--------------------------------------------
|
||||
|
||||
Translation infrastructure scripts are stored and managed in
|
||||
Translation infrastructure tasks and scripts are stored and managed in
|
||||
`openstack-infra/project-config <http://git.openstack.org/cgit/openstack-infra/project-config>`__
|
||||
repository.
|
||||
|
||||
* `upstream_translation_update.sh <http://git.openstack.org/cgit/openstack-infra/project-config/tree/jenkins/scripts/upstream_translation_update.sh>`__
|
||||
* `upstream-translation-update.yaml <https://git.openstack.org/cgit/openstack-infra/project-config/tree/playbooks/translation/upstream-translation-update.yaml>`__
|
||||
|
||||
* Implements the first Jenkins job (Syncing to Zanata).
|
||||
* Implements the first Zuul job (Syncing to Zanata) by executing
|
||||
`upstream_translation_update.sh <http://git.openstack.org/cgit/openstack-infra/project-config/tree/jenkins/scripts/upstream_translation_update.sh>`__
|
||||
|
||||
* `propose_translation_update.sh <http://git.openstack.org/cgit/openstack-infra/project-config/tree/jenkins/scripts/propose_translation_update.sh>`__
|
||||
* `propose-translation-update.yaml <https://git.openstack.org/cgit/openstack-infra/project-config/tree/playbooks/translation/propose-translation-update.yaml>`__
|
||||
|
||||
* Carries out the second Jenkins job (Syncing into repos).
|
||||
* Carries out the second Zuul job (Syncing into repos) by executing
|
||||
`propose_translation_update.sh <http://git.openstack.org/cgit/openstack-infra/project-config/tree/jenkins/scripts/propose_translation_update.sh>`__
|
||||
|
||||
* `common_translation_update.sh <http://git.openstack.org/cgit/openstack-infra/project-config/tree/jenkins/scripts/common_translation_update.sh>`__
|
||||
|
||||
|
@ -81,5 +90,5 @@ repository.
|
|||
* Builds release notes in both the original (English) version and translated
|
||||
versions (if any).
|
||||
|
||||
Note that the scripts use `zanata-cli <http://docs.zanata.org/en/release/client/>`__
|
||||
Note that the scripts in the tasks use `zanata-cli <http://docs.zanata.org/en/release/client/>`__
|
||||
to pull and push translation content.
|
||||
|
|
Loading…
Reference in New Issue