A ação do Crowdin no GitHub permite integrar facilmente a localização do seu projeto Crowdin ao fluxo de trabalho que você configurou no seu repositório com a ajuda do GitHub Actions. Usando o GitHub Crowdin Action, você pode automatizar a sincronização dos recursos de localização com seu projeto Crowdin.
O que essa ação faz?
Configurar um fluxo de trabalho em .github/workflows/crowdin.yml (ou adicione um trabalho aos seus fluxos de trabalho existentes).
Leia o artigo Configurando um fluxo de trabalho para obter mais detalhes sobre como criar e configurar fluxos de trabalho personalizados.
name: Crowdin Action
on:
push:
branches: [ master ]
jobs:
synchronize-with-crowdin:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: crowdin action
uses: crowdin/github-action@1.0.4
with:
upload_translations: true
download_translations: true
env:
GITHUB_TOKEN: $
CROWDIN_PROJECT_ID: $
CROWDIN_PERSONAL_TOKEN: $
A ação padrão é fazer carregamento de fontes. No entanto, você pode definir ações diferentes através das opções with
. Se você não deseja enviar suas fontes para o Crowdin, basta definir a opção upload_sources
como false.
Por padrão, fontes e traduções estão sendo carregadas na raiz do seu projeto Crowdin. Ainda assim, se você usar ramificações, poderá definir a ramificação de origem preferida.
Você também pode especificar em qual ramo do GitHub você gostaria de baixar suas traduções (a ramificação de tradução padrão é l10n_crowdin_action
).
Caso você não queira baixar traduções do Crowdin a opção (download_translations: false
), localization_branch_name
e create_pull_request
também não são necessários.
- name: crowdin action
with:
# upload options
upload_sources: true
upload_translations: true
# opções de download
download_translations: true
language: 'uk'
push_translations: true
# Esse é o nome do ramo git que o Crowdin criará ao abrir uma solicitação de recebimento.
# Essa ramificação NÃO precisa ser criado manualmente. Será criado automaticamente pela ação.
localization_branch_name: l10n_crowdin_action
create_pull_request: true
# opções globais
# Este é o nome do diretório de nível superior que o Crowdin usará para arquivos.
# Note que este não é uma "ramificação" no sentido git, mas mais como um diretório de nível superior no seu projeto Crowdin.
# Essa ramificação NÃO precisa ser criado manualmente. Será criado automaticamente pela ação.
crowdin_branch_name: l10n_branch
identity: '/path/to/your/credentials/file'
config: '/path/to/your/crowdin.yml'
dryrun_action: true
# opções de configuração
# Este é um ID numérico, que não deve ser confundido com o texto de caracteres de"identificador de projeto" da API Crowdin v1
# Veja "API v2" no https://br.crowdin.com/project/<your-project>/settings#api
project_id: $
# Um token de acesso pessoal, que não deve ser confundido com a "chave da API" da API Crowdin v1
# Veja https://br.crowdin.com/settings#api-key to generate a token
token: $
source: '/path/to/your/file'
translation: 'file/export/pattern'
base_url: 'https://crowdin.com'
base_path: '/project-base-path'
Para obter descrições mais detalhadas dessas opções, consulte action.yml
.
Se o seu arquivo de fluxo de trabalho contiver a propriedade config
, você precisará adicionar o seguinte arquivo de configuração do Crowdin (exemplo: crowdin.yml
):
project_id_env: ID_DO_PROJETO_CROWDIN
api_token_env: PESSOAL_TOKEN_PESSOAL_DO_CROWDIN
Quando o fluxo de trabalho é executado, os valores reais do seu token e ID do projeto serão injetados na configuração usando os segredos do ambiente.