# Modification along rffontenelle/python-docs-pt-br name: Update translations on: workflow_dispatch: schedule: - cron: '40 23 * * *' #push: # paths: # - '.github/workflows/update.yml' # - 'scripts/update.sh' # branches: # - '3.11' env: CPYTHON_BRANCH: '3.14' LANGUAGE: 'ja' jobs: update: # Job to pull translation from Transifex platform, and commit & push changes runs-on: ubuntu-latest steps: - name: Check out ${{ github.repository }} uses: actions/checkout@v4 - name: Check out CPython uses: actions/checkout@v4 with: repository: python/cpython persist-credentials: false ref: ${{ env.CPYTHON_BRANCH }} path: cpython - name: Set up Python uses: actions/setup-python@v5 with: cache: 'pip' cache-dependency-path: '**/requirements*.txt' - name: Install Transifex CLI run: | curl -o- https://raw.githubusercontent.com/transifex/cli/master/install.sh | bash working-directory: /usr/local/bin - name: Install dependencies run: | sudo apt-get update -y && sudo apt-get install gettext -y pip install --upgrade pip pip install -r requirements.txt -r cpython/Doc/requirements.txt - name: Update translations run: | sh scripts/update.sh env: TX_TOKEN: ${{ secrets.TX_TOKEN }} LANGUAGE: ${{ env.LANGUAGE }} - name: Wrap catalog message files run: | powrap --modified - name: Commit and push changes if: github.repository == 'python/python-docs-ja' run: | git config user.name github-actions git config user.email github-actions@github.com git status git add -A git diff-index --quiet HEAD || ( git commit -m "Update translations from Transifex" && git push ) merge: # Merge translations previously updated into older branches to make sure # older versions of Python Docs gets translated as well. name: merge into ${{ matrix.branch }} needs: [update] strategy: matrix: branch: [ "3.13", "3.12", "3.11" ] runs-on: ubuntu-latest steps: - name: Check out source branch (${{ env.CPYTHON_BRANCH }}) uses: actions/checkout@v4 with: path: ${{ env.CPYTHON_BRANCH }} - name: Check out target branch (${{ matrix.branch }}) uses: actions/checkout@v4 with: ref: ${{ matrix.branch }} path: ${{ matrix.branch }} - name: Set up Python uses: actions/setup-python@v5 with: cache: 'pip' cache-dependency-path: '**/requirements*.txt' - name: Install dependencies run: | sudo apt-get update -y && sudo apt-get install gettext -y pip install pomerge powrap - name: Merge overwriting on stable release branch run: | pomerge --from "${{ env.CPYTHON_BRANCH }}"/**/*.po --to "${{ matrix.branch }}"/**/*.po - name: Wrap catalog message files run: | powrap --modified -C "${{ matrix.branch }}" - name: Commit and push changes if: github.repository == 'python/python-docs-ja' run: | cd "${{ matrix.branch }}" git config user.name github-actions git config user.email github-actions@github.com git status git add -A git diff-index --quiet HEAD || ( git commit -m "Merge ${{ env.CPYTHON_BRANCH }} into ${{ matrix.branch }}" && git push )