Workflows: Add WP 6.8, 6.9 and PHP 8.5 to PHPUnit tests. (#380) #30
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Generate POT PR | |
| on: | |
| workflow_dispatch: | |
| push: | |
| branches: | |
| - main | |
| jobs: | |
| generate-pot: | |
| name: Generate POT PR | |
| if: github.repository == ${{ github.event.repository.full_name }} | |
| permissions: | |
| contents: write | |
| pull-requests: write | |
| env: | |
| BRANCH_NAME: generate-pot | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out source code | |
| uses: actions/checkout@v4 | |
| - name: Set up PHP environment | |
| uses: shivammathur/setup-php@v2 | |
| with: | |
| php-version: "7.4" | |
| - name: Setup WP-CLI | |
| uses: godaddy-wordpress/setup-wp-cli@1 | |
| - name: Configure git user | |
| run: | | |
| git config user.name ${{ github.actor }} | |
| git config user.email ${{ github.actor }}@users.noreply.github.com | |
| - name: Check if remote branch exists | |
| run: echo "REMOTE_BRANCH_EXISTS=$([[ -z $(git ls-remote --heads origin ${BRANCH_NAME}) ]] && echo "0" || echo "1")" >> $GITHUB_ENV | |
| - name: Create branch to base pull request on | |
| if: env.REMOTE_BRANCH_EXISTS == 0 | |
| run: | | |
| git checkout -b ${BRANCH_NAME} | |
| - name: Fetch existing branch to add commits to | |
| if: env.REMOTE_BRANCH_EXISTS == 1 | |
| run: | | |
| git fetch --all --prune | |
| git checkout ${BRANCH_NAME} | |
| git pull --no-rebase | |
| - name: Generate POT | |
| run: | | |
| wp i18n make-pot . "./languages/fair.pot" --headers='{"Report-Msgid-Bugs-To":"https://github.com/${{ github.event.repository.full_name }}/issues"}' | |
| - name: Check if there are changes | |
| run: echo "CHANGES_DETECTED=$([[ -z $(git diff --ignore-matching-lines='^"POT-Creation-Date') ]] && echo "0" || echo "1")" >> $GITHUB_ENV | |
| - name: Commit changes | |
| if: env.CHANGES_DETECTED == 1 | |
| run: | | |
| git add "./languages/fair.pot" | |
| git commit -s -m "Generate POT - $(date +'%Y-%m-%d')" | |
| git push origin ${BRANCH_NAME} | |
| - name: Create pull request | |
| if: env.CHANGES_DETECTED == 1 && env.REMOTE_BRANCH_EXISTS == 0 | |
| run: | | |
| TITLE="Generate POT - $(date +'%Y-%m-%d-%H%M%S')" | |
| BODY="Updated translation files." | |
| echo "Checking for any existing Generate POT PRs..." | |
| gh pr list \ | |
| --head ${BRANCH_NAME} \ | |
| --repo ${{ github.repository }} \ | |
| --state open \ | |
| --json number,headRefName \ | |
| --jq '.[] | select(.headRefName == "'${BRANCH_NAME}'") | .number' | \ | |
| xargs -r -I {} gh pr close {} \ | |
| --repo ${{ github.repository }} \ | |
| --comment "Closing this PR in favor of ${TITLE}." | |
| gh pr create \ | |
| --base ${{ github.event.repository.default_branch }} \ | |
| --title ${TITLE} \ | |
| --head ${BRANCH_NAME} \ | |
| --body ${BODY} | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |