Skip to content

Commit

Permalink
ci: change pr-check-links to find base commit against upstream/main
Browse files Browse the repository at this point in the history
  • Loading branch information
f-hollow committed Dec 17, 2024
1 parent 3b1eda0 commit a8863af
Showing 1 changed file with 14 additions and 9 deletions.
23 changes: 14 additions & 9 deletions .github/workflows/pr-check-links.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ on:
pull_request:
branches: [main]

env:
TARGET_REPO_URL: https://github.com/espressif/developer-portal.git
TARGET_BRANCH: main

jobs:
check-links:
runs-on: ubuntu-latest
Expand All @@ -18,21 +22,25 @@ jobs:
- name: Set environment variables
id: set-env
run: |
# Add target remote and fetch its branches
git remote add target ${{ env.TARGET_REPO_URL }}
git fetch target ${{ env.TARGET_BRANCH }}
# Extract the base commit ID where the feature branch diverged from main
base_commit=$(git merge-base origin/main ${{ github.event.pull_request.head.ref }})
echo "base_commit=$base_commit" >> $GITHUB_ENV
base_commit=$(git merge-base target/${{ env.TARGET_BRANCH }} ${{ github.event.pull_request.head.ref }})
echo "BASE_COMMIT=$base_commit" | tee -a $GITHUB_ENV
# Extract the head commit ID on the feature branch
head_commit=${{ github.event.pull_request.head.sha }}
echo "head_commit=$head_commit" >> $GITHUB_ENV
echo "HEAD_COMMIT=$head_commit" | tee -a $GITHUB_ENV
- name: Create baseline branch by reverting feature branch changes
run: |
# Create a copy of the feature branch
git checkout -b feature-baseline
# Reset the new branch to the base commit
git reset --hard ${{ env.base_commit }}
git reset --hard ${{ env.BASE_COMMIT }}
- name: Dump all links from feature-baseline
uses: lycheeverse/[email protected]
Expand All @@ -51,14 +59,11 @@ jobs:
- name: Append links-baseline.txt to .lycheeignore
run: cat links-baseline.txt >> .lycheeignore

- name: Print .lycheeignore
run: cat .lycheeignore

- name: Dump names of files altered in PR and append hash sign to find links with anchors
run: |
git diff --name-only --diff-filter=DM ${{ env.base_commit }} ${{ env.head_commit }} > altered-files.txt
git diff --name-only --diff-filter=DM ${{ env.BASE_COMMIT }} ${{ env.HEAD_COMMIT }} > altered-files.txt
sed -i 's|$|#|' altered-files.txt
git diff --name-status --diff-filter=R ${{ env.base_commit }} ${{ env.head_commit }} | awk '{print $2}' > renamed-files.txt
git diff --name-status --diff-filter=R ${{ env.BASE_COMMIT }} ${{ env.HEAD_COMMIT }} | awk '{print $2}' > renamed-files.txt
sed -i 's|$|#|' renamed-files.txt
- name: Print altered-files.txt
Expand Down

0 comments on commit a8863af

Please sign in to comment.