Skip to content

Commit

Permalink
Add workflow to create new branch and PR for generating POT automatic…
Browse files Browse the repository at this point in the history
…ally (#242)

Signed-off-by: Andy Fragen <[email protected]>

---------

Signed-off-by: Andy Fragen <[email protected]>
Co-authored-by: Colin Stewart <[email protected]>
  • Loading branch information
afragen and costdev authored Dec 13, 2024
1 parent 5dad256 commit ef25893
Show file tree
Hide file tree
Showing 2 changed files with 71 additions and 26 deletions.
71 changes: 71 additions & 0 deletions .github/workflows/generate-pot-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
name: Generate POT PR

on:
workflow_dispatch:
push:
branches:
- main

jobs:
generate-pot:
name: Generate POT PR
if: github.repository == 'aspirepress/aspireupdate'
permissions:
contents: write
pull-requests: write
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 --global user.email "[email protected]"
git config --global user.name "Andy Fragen"
- name: Check if remote branch exists
run: echo "REMOTE_BRANCH_EXISTS=$([[ -z $(git ls-remote --heads origin generate-pot) ]] && echo "0" || echo "1")" >> $GITHUB_ENV

- name: Create branch to base pull request on
if: env.REMOTE_BRANCH_EXISTS == 0
run: |
git checkout -b generate-pot
- name: Fetch existing branch to add commits to
if: env.REMOTE_BRANCH_EXISTS == 1
run: |
git fetch --all --prune
git checkout generate-pot
git pull --no-rebase
- name: Generate POT
run: |
wp i18n make-pot . "./languages/${{ github.event.repository.name }}.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 status --porcelain) ]] && echo "0" || echo "1")" >> $GITHUB_ENV

- name: Commit changes
if: env.CHANGES_DETECTED == 1
run: |
git add "./languages/${{ github.event.repository.name }}.pot"
git commit -m "Generate POT - $(date +'%Y-%m-%d')"
git push origin generate-pot
- name: Create pull request
if: env.CHANGES_DETECTED == 1
uses: repo-sync/pull-request@v2
with:
source_branch: generate-pot
destination_branch: ${{ github.event.repository.default_branch }}
github_token: ${{ secrets.GITHUB_TOKEN }}
pr_title: Generate POT
pr_body: "This is an automated pull-request"
26 changes: 0 additions & 26 deletions .github/workflows/generate-pot.yml

This file was deleted.

0 comments on commit ef25893

Please sign in to comment.