Skip to content

Translate Strings

Translate Strings #34

name: Translate Strings
on:
push:
branches:
- develop
paths:
- 'resources/lang/en.json'
workflow_dispatch:
workflow_call:
jobs:
translate_and_create_pr:
name: Translate and create PR
runs-on: ${{ vars.RUNNER }}
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.x
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install openai
- name: Download translation script
run: wget https://raw.githubusercontent.com/ProcessMaker/processmaker/develop/.github/workflows/scripts/translate.py
- name: Translate changed strings to Spanish
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
OPENAI_ORG: ${{ secrets.OPENAI_ORG }}
run: python translate.py es
- name: Translate changed strings to French
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
OPENAI_ORG: ${{ secrets.OPENAI_ORG }}
run: python translate.py fr
- name: Translate changed strings to German
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
OPENAI_ORG: ${{ secrets.OPENAI_ORG }}
run: python translate.py de
- name: Remove translation script
run: rm -rf translate.py
- name: Delete existing branch if it exists
run: |
if git show-ref --quiet refs/remotes/origin/translate/changed-strings; then
git push origin --delete translate/changed-strings
fi
- name: Create PR for updated translated files
id: create_pr
uses: peter-evans/create-pull-request@v5
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: 'Update translations for changed strings'
title: 'Update translations for changed strings'
body: 'This PR translates changed strings in en.json to Spanish, French, and German.'
branch: 'translate/changed-strings'
delete-branch: true
labels: 'translation, automated'
- name: Check if PR was created
if: steps.create_pr.outputs.pull-request-number == ''
run: echo "No changes to translations. No PR created."