[ English | 日本語 | English (United Kingdom) | 한국어 (대한민국) | русский | 中文 (简体, 中国) | Deutsch | Indonesia | Türkçe (Türkiye) ]

Инфраструктура инструментов для перевода

В инфраструктуре OpenStack работают несколько заданий, которые управляют изменениями переводов в Zanata. Без этих заданий изменения в переводах не попадали бы в проекты OpenStack. На этой странице вы найдёте информацию о том, как задания, работающие в инфраструктуре OpenStack, запускают скрипты задач Zuul, и как отслеживать их статус.

Задания, относящиеся к переводам

У нас работают два задания в Zuul для переводов: синхронизация строк из исходных кодов с последних версий репозиториев в Zanata, и экспорт переводов из Zanata обратно в репозитории. Первое задание - для обновлений данных в Zanata. Подлежащие переводу обновлённые строки из исходных кодов сравниваются и обновляются между репозиторием проекта OpenStack и Zanata. Если тексты в исходных кодах в репозитории проекта OpenStack изменились, то эти изменения отправляются в Zanata. Таким образом переводчики всегда работают с самыми свежими строками текста для перевода. С другой стороны, второе задание занимается тем, что отражает изменения текстов в готовых переводах из Zanata в соответствующие репозитории проектов OpenStack. Это задание создаёт запросы на изменения в виде патчей Gerrit, как описано в разделе, описывающем импорт переводов.

Задания по обновлению Zanata стартуют сразу после того, как патчи сливаются в репозитории проектов OpenStack; Zuul запускает задачи по обновлению репозиториев OpenStack ежедневно в 6:00 UTC.

Обратите внимание, что не любые изменения обрабатываются заданиями, относящимися к переводам. Нашей целью является наличие цельных переводов программ, пользовательского интерфейса и документации. В наличии перевода нескольких строк нет большого смысла. Команда решила, что только файлы переводов, покрывающие как минимум 75% сообщений будут добавляться в Git репозиторий.

Чтобы избежать слишком большого оттока и исправлений строк в последнюю минуту, приводящих к удалению файлов, существует также и применяемая вручную и только для релизов политика более низкого порога в 66 процентов переведённых сообщений.

Скрипты инфраструктуры OpenStack, выполняемые задачами, в настоящий момент загружают только те новые файлы, объём перевода которых достигает 75 процентов. При этом, если размер файла растёт, но объём переводов не увеличивается (или если строки сильно изменяются), то файл перевода будет автоматически удалён из проектов, когда будет достигнут нижний порог объёма перевода, который в настоящий момент составляет 40 процентов.

Отслеживание заданий, относящихся к переводам

Панель мониторинга Статус OpenStack предоставляет удобный способ проверки статуса заданий, относящихся к переводам:

Задания и скрипты инфраструктуры переводов

Задания, работающие в инфраструктуре переводов, хранятся и управляются через репозиторий openstack-infra/project-config. Скрипты – в репозитории openstack-infra/openstack-zuul-jobs.

Обратите внимание, что скрипты в задачах используют zanata-cli, чтобы загружать и выгружать контент для перевода.