Jump to: navigation, search

Difference between revisions of "I18nTeam/Migration-to-weblate/migration-tools"

(2. Project Migration)
(2. Project Migration Tools)
Line 80: Line 80:
  
 
==== 2. Project Migration Tools ====
 
==== 2. Project Migration Tools ====
 +
* The migration script patch was split to reduce its size.
 +
** https://review.opendev.org/c/openstack/i18n/+/961075
 +
* We track feature development using Launchpad blueprints.
 +
** https://blueprints.launchpad.net/openstack-i18n/+spec/weblate-migration
  
 
=== Testing and Integration ===
 
=== Testing and Integration ===

Revision as of 13:10, 14 October 2025

Migration Tools for Weblate

Overview

  • This page documents the ongoing migration from Zanata to Weblate for the OpenStack I18n project.
  • The migration involves language migration tools and project migration tools.

Who's joining the migration tools project

  • Gwang-Il Kim
  • DaGyeong Kim

Migration Plan

1. Language Migration

  • Remove all existing languages from Weblate that are not needed.
    • Use delete_languages.py 
  • Recreate languages in Weblate to match the plural-forms and settings defined in Zanata.
    • Use create_languages_weblate.py

2. Project Migration

1. Set up the environment to migrate.
  • Set up the environment by installing system and python dependencies.
  • Configure the workspace folder as working directories.
2. Generate POT files for project.
  • Extract strings for translation from project.
  • Generate template files(POT) for migration.
3. Extract Translation files(PO) in Zanata.
  • Pull all locale translation files from Zanata
4. Create Weblate project
  • Create a project in Weblate using the OpenStack project name.
5. Create a global glossary
  • Create a glossary component within the project for terminology consistency.
  • There is only one glossary per project.
6. Create Weblate Category
  • Categories are collections of related components.
  • Create categories to organize and display different versions.
7. Create Weblate components.
  • Component is a grouping of something for translation.
  • Create component with pot files.
  • There is component attributes to use:
key value
file format po
filemask locale/*/LC_MESSAGES/<component_name>.po
new_base <component_name>.pot
source_language en_US

Note: The filemask depends on the project type.

8. Create Weblate translation.
  • Translations represent language-specific versions of components.
  • Create translations for all locales that exist in Zanata.
  • Ensure locale names match the language codes used by the Weblate server.
9. Push translation files into Weblate translation.
  • Upload the PO files extracted from Zanata to their corresponding translations in Weblate.

Migration Tools

1. Language Migration Tools

2. Project Migration Tools

Testing and Integration

  • Testing for Weblate integration is currently in the planning stage.

Openinfra Forum in Korea