Create edge-runners-3-2-hack-summary.mdx #287
Workflow file for this run
This file contains 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: Process MDX Files | |
on: | |
pull_request_target: | |
paths: | |
- '**/*.mdx' | |
jobs: | |
process-mdx: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
ref: ${{ github.event.pull_request.head.ref }} | |
repository: ${{ github.event.pull_request.head.repo.full_name }} | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.x' | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install requests | |
pip install pillow | |
sudo apt-get install jq | |
- name: Get list of changed .mdx files | |
id: changed_files | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
echo "Fetching PR details..." | |
PR_NUMBER=$(jq -r .number < "$GITHUB_EVENT_PATH") | |
REPO_FULL_NAME=$(jq -r .pull_request.base.repo.full_name < "$GITHUB_EVENT_PATH") | |
echo "PR Number: $PR_NUMBER" | |
echo "Repository: $REPO_FULL_NAME" | |
RESPONSE=$(curl -s -H "Authorization: token $GITHUB_TOKEN" \ | |
"https://api.github.com/repos/$REPO_FULL_NAME/pulls/$PR_NUMBER/files") | |
echo "GitHub API response: $RESPONSE" | |
CHANGED_FILES=$(echo "$RESPONSE" | jq -r '.[] | select(.filename | endswith(".mdx")) | .filename') | |
echo "CHANGED_FILES=$CHANGED_FILES" >> $GITHUB_ENV | |
echo "Changed files: $CHANGED_FILES" | |
- name: Run image processing script and check for changes | |
id: run_script | |
env: | |
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }} | |
CHANGED_FILES: ${{ env.CHANGED_FILES }} | |
run: | | |
echo "Running script" | |
if [ -z "$CHANGED_FILES" ]; then | |
echo "No .mdx files changed." | |
else | |
echo "Running script with files: $CHANGED_FILES" | |
python scripts/process_images.py $CHANGED_FILES | tee script_output.txt | |
fi | |
continue-on-error: true | |
- name: Set change detection flag | |
id: set_changes_flag | |
run: | | |
if grep -q "CHANGES_MADE" script_output.txt; then | |
echo "script_changes=true" >> $GITHUB_ENV | |
else | |
echo "script_changes=false" >> $GITHUB_ENV | |
fi | |
- name: Print changes made by the script | |
if: env.script_changes == 'true' | |
run: | | |
echo "Printing changes made by the script:" | |
git diff | |
- name: Commit and push changes | |
if: env.script_changes == 'true' | |
env: | |
PAT_TOKEN: ${{ secrets.PAT_TOKEN }} | |
run: | | |
git config --global user.name 'github-actions[bot]' | |
git config --global user.email 'github-actions[bot]@users.noreply.github.com' | |
git add . | |
git commit -m "Processed images in MDX files" | |
git push https://github-actions:${{ secrets.PAT_TOKEN }}@github.com/${{ github.event.pull_request.head.repo.full_name }} HEAD:${{ github.event.pull_request.head.ref }} | |
continue-on-error: true | |
- name: Debugging Upload Failure | |
if: failure() | |
run: | | |
echo "Upload failed. Debugging information:" | |
git status | |
git log -1 | |
echo "End of debugging information." |