All Collections
Integrations
Development
Azure Repos
Azure Repos: Auto-syncing and Management
Azure Repos: Auto-syncing and Management

Syncing content between Transifex and Azure Repos

F
Written by Freddy Lugo
Updated over a week ago

Syncing Existing Resources with Azure Repos

Suppose your localization process is ongoing, and your projects/resources have been established in Transifex. In that case, you can still leverage the Azure Repos integration to synchronize the Transifex content with the Azure Repos files. All you need to do is execute the following steps:

  • Locate the TX resources in your selected Azure Repos repository and branch.

📝 Note: The path of each resource in the Azure Repos repository

  • Keep the following details separately:

    • Full Repository name:

      • Example: Transifex-Demo-Repo/Transifex-Demo-Repo (full_repo_name: This is Project Name/Repo Name)

    • Branch name:

      • Example: master

    • The full path name of the resource:

      • Example: source/product_A.json (from the file, you should remove the trailing /)

  • Construct a temporary text using the following pattern:

    azure#{full_repo_name}#{branch_name}#{source_file_path}

    Example:
    azure#Transifex-Demo-Repo/Transifex-Demo-Repo#main#source/product_A.json

  • Generate a hash for this text using the md5 algorithm. Example:

md5("azure#azure_repos/azure_repos#master#source/b.json")

💡Tip: You can use an online generator, like https://www.md5hashgenerator.com/

  • Edit each resource's settings and add the generated hash as a slug:


Syncing content from Azure Repos

Syncing content from Azure Repos to Transifex happens either upon saving or updating the integration settings on the project level or automatically whenever new content is found on Azure Repos (after a commit on the branch associated with the integration).

When a syncing process is initiated, you will see that syncing is in progress from within the integration’s UI. Go to your Project settings > integrations tab under Azure Repos and click the Manage link. Remember that this process may take some time, depending on the number and size of the synced files.

The integration page will display an activity log of all syncing operations with Azure Repos. These logs allow you to identify any potential issues with particular files that may have failed to sync or could not be located.


Syncing content from Transifex

Suppose the file format of a resource allows. In that case, a project maintainer or administrator can directly edit it in Transifex's editor, regardless of whether the resource came from an Azure Repos repository. This feature allows for quick corrections, such as fixing spelling or punctuation mistakes. Any changes made in Transifex are automatically synchronized back to Azure Repos, either as a new pull request (PR) or a direct commit to the original branch. Consequently, developers are relieved from the manual task of retrieving the updated resources from Transifex and pushing them to Azure Repos.

The integration's activity log will record this action.


Commit and PR messages from Transifex on Azure Repos.

Any commits or PRs opening due to the integration happening from an Azure Repos user is called Transifex-localization-platform[bot].


Checking the status of the Azure Repos integration

Sometimes, changes on the Azure Repos side can affect the Azure Repos integration and the synchronization with Transifex.

More specifically, if the configuration file in the Azure Repos repository is corrupt or absent or the linked branch is deleted, Transifex and Azure Repos will stop exchanging content. The owner of the integration, i.e., the project maintainer or administrator who installed it in a specific project, will receive notifications regarding the integration's health status in two ways:

  • When viewing the integration’s UI, the status indicator for the connection with the associated Azure Repos repository shifts from green to red.

  • The integration owner receives an automated email notification that prompts them to investigate the cause of the problem in the Azure Repos integration.


💡Tip

Looking for more help? Get support from our Transifex Community Forum!

Find answers or post to get help from Transifex Support and our Community.

Did this answer your question?