Troubleshooting Github and Bitbucket integration issues

A. Scenario: Check for the following if you don't have existing resources in Transifex and you can't push files from Github/Bitbucket into Transifex?

  1. file_format:
  1. source_file_dir (filter_type: dir)
  • This is the directory in Github/Bitbucket where you store source files.

  • The directory can’t start with a forward slash. I.e ‘/’. Example: /directoryname is invalid. Entry should be directoryname.

  • The directory must exist in Github/Bitbucket.

  1. source_file: (filter_type: file)
  • The source file location can’t start with a forward slash, i.e ‘/’. Example: /locale/fileTest/example.po is invalid. Entry should be locale/fileTest/example.po.

B. Scenario: Check for the following if you don't have existing resources in Transifex and you can't pull translations from Transifex into Github/Bitbucket?

  1. Check for open PR’s (All filter types, option selected to create PR)
  • The integration will create one PR for each resource-language pair. For example if you have a resource called android.xml which you want translated into French, Greek and Spanish a separate PR will be created when French is completely translated/reviewed, a separate one for Greek when it is completely translated/reviewed and so on.

  • If an existing PR remains open in your repository then Transifex will append to the existing PR and it will not create a new one.

  1. Place single quotes around your translation_files_expression
    E.g: translation_files_expression: 'Translations/<lang>'

  2. Use the keyword in the directory name only. (only for filter_type: dir)

· Valid syntax: 'Translations/<lang>/'.
· Invalid syntax: 'Translations/<lang>.strings'

  1. Translation file name must equal source file name

This is applied to filter_type:dir. This does not apply to a filter_type: file.

  1. If you are committing translations directly to a Branch then you can’t use protected branches for this integration.

  2. The user that installed the integration at the organization level (organization settings) needs to be the same user that configures the integration at the project level.

C. Scenario

  1. You are configuring the integration for the first time and you have existing TX resources you want to sync to your repository. If the integration creates a new resource in Transifex instead of using the existing one, then:
  • Make sure that your resource in Transifex has the same name as the resource in Github.
  • Note: The integration does not remove the reviewed state of existing resources during the syncing process.
1 Like

What exactly does this mean?

If you have an existing resource in Transifex that you are trying to sync with Github/bitbucket then the integration looks at the name of the file in Transifex (ex. Django.po) and tries to find a file with the equivalent name in your repository in order to perform the synchronization.

Please let me know if this answers your question.