Skip to content

Commit

Permalink
feat(sync-translated-content): gather releated upstream commits
Browse files Browse the repository at this point in the history
  • Loading branch information
yin1999 committed Mar 7, 2024
1 parent 325caeb commit e449f85
Showing 1 changed file with 28 additions and 1 deletion.
29 changes: 28 additions & 1 deletion .github/workflows/sync-translated-content.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,33 @@ jobs:
working-directory: ${{ github.workspace }}/mdn/content
run: yarn content sync-translated-content ${{ matrix.lang }}

- name: Gather related upstream commits
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
# get original path of moved files
MOVED_FILES=$(git diff --cached --name-status --diff-filter=R | cut -f2 | sed "0,/${{ matrix.lang }}/s//en-us/")
FILE_COMMIT_URLS=""
while read -r MOVED_FILE; do
# gather related upstream commits
COMMIT_URL=$(gh api -XGET repos/mdn/content/commits -F path="${MOVED_FILE}" -F per_page=1 --jq '.[0].html_url')
if [ -n "${COMMIT_URL}" ]; then
FILE_COMMIT_URLS="${FILE_COMMIT_URLS}- ${COMMIT_URL}\n"
fi
done <<< "${MOVED_FILES}"
FILE_COMMIT_URLS=$(echo -e "${FILE_COMMIT_URLS}" | grep -v '^$' | sort | uniq)
echo -e "commit urls:\n${FILE_COMMIT_URLS}"
# set multiline string to env
# https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#multiline-strings
# as the commit urls would not contain 'EOF', we can use it as a delimiter
{
echo 'COMMIT_URLS<<EOF'
echo "${FILE_COMMIT_URLS}"
echo EOF
} >> "$GITHUB_ENV"
- name: Create PR with sync for ${{ matrix.lang }}
uses: peter-evans/create-pull-request@v6
with:
Expand All @@ -67,7 +94,7 @@ jobs:
title: "[${{ matrix.lang }}] sync translated content"
author: mdn-bot <[email protected]>
committer: mdn-bot <[email protected]>
body: Yari generated sync
body: "Yari generated sync. Related upstream commits:\n\n${{ env.COMMIT_URLS }}"
labels: |
automated pr
token: ${{ secrets.AUTOMERGE_TOKEN }}

0 comments on commit e449f85

Please sign in to comment.