[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/python/python-docs-de/3.14/.github/workflows/sync-check.yml [Back]  [Original]

name: Sync Check with Upstream

on:
  schedule:
    - cron: '0 3 * * 1'   # jeden Montag um 3 Uhr nachts
  workflow_dispatch:

jobs:
  check-sync:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        version: ['3.14', '3.15']
    steps:
      - name: Translation-Repo auschecken
        uses: actions/checkout@v4
        with:
          ref: ${{ matrix.version }}

      - name: Passenden CPython-Branch auschecken
        uses: actions/checkout@v4
        with:
          repository: python/cpython
          ref: ${{ matrix.version }}
          path: cpython-src

      - name: gettext installieren (fr msgmerge)
        run: sudo apt-get update && sudo apt-get install -y gettext

      - name: Python + Sphinx einrichten
        run: |
          python3 -m venv cpython-src/Doc/venv
          cpython-src/Doc/venv/bin/pip install sphinx blurb

      - name: Frische POT-Dateien bauen
        run: |
          cd cpython-src/Doc
          PATH="./venv/bin:$PATH" make gettext

      - name: powrap installieren (fr einheitliche Zeilenumbrche)
        run: pip install --break-system-packages powrap

      - name: msgmerge gegen alle .po-Dateien laufen lassen
        run: |
          for pot in $(find cpython-src/Doc/build/gettext -name "*.pot"); do
            rel="${pot#cpython-src/Doc/build/gettext/}"
            po="${rel%.pot}.po"
            if [ -f "$po" ]; then
              msgmerge --quiet --update --backup=none "$po" "$pot"
            else
              mkdir -p "$(dirname "$po")"
              msginit --no-translator --locale=de --input="$pot" --output-file="$po"
            fi
            powrap "$po"
          done

      - name: Prfen, ob sich etwas gendert hat
        id: check
        run: |
          if [ -z "$(git status --porcelain)" ]; then
            echo "changed=false" >> "$GITHUB_OUTPUT"
          else
            echo "changed=true" >> "$GITHUB_OUTPUT"
          fi

      - name: PR mit den Aktualisierungen erstellen
        if: steps.check.outputs.changed == 'true'
        uses: peter-evans/create-pull-request@v6
        with:
          branch: sync-upstream-${{ matrix.version }}
          base: ${{ matrix.version }}
          title: "Sync mit Upstream-nderungen (${{ matrix.version }})"
          body: |
            Automatisch erkannte nderungen im englischen Original-Quelltext.
            Neue `fuzzy`-Markierungen und fehlende Strings bitte manuell prfen.
          commit-message: "Sync mit Upstream-nderungen (${{ matrix.version }})"

Web Proxy Viewer  |  New URL  |  Original Page