Skip to content

Commit

Permalink
Merge pull request #15 from jasminabrar2/main
Browse files Browse the repository at this point in the history
upload merge files from artifact to permanent gh-pages link instead of updating read me
  • Loading branch information
jasminabrar authored Jan 8, 2024
2 parents 7ca4393 + ee2ab76 commit bdf0c7a
Show file tree
Hide file tree
Showing 2 changed files with 60 additions and 27 deletions.
85 changes: 59 additions & 26 deletions .github/workflows/merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ jobs:
- name: run merge script
run: |
python merge/EBeam_merge.py
- name: move merge output files to new folder
Expand All @@ -44,47 +43,81 @@ jobs:
cp "/home/runner/work/openEBL-2024-02/openEBL-2024-02/merge/$file" merge_output/
done
- name: upload artifact
- name: upload merge artifact
uses: actions/upload-artifact@v4
id: artifact-upload
with:
name: merge-files
path: merge_output/

- name: get artifact url
- name: add vars needed for merge artifact url to a txt file
run: |
IFS='/' read -ra REPO <<< "$GITHUB_REPOSITORY"
OWNER="${REPO[0]}"
REPO_NAME="${REPO[1]}"
echo "Owner: $OWNER"
echo "Repository: $REPO_NAME"
RUN_ID=${{ github.run_id }}
ARTIFACT_ID=${{ steps.artifact-upload.outputs.artifact-id }}
ARTIFACT_URL="https://github.com/$OWNER/$REPO_NAME/actions/runs/$RUN_ID/artifacts/$ARTIFACT_ID"
echo "Artifact URL: $ARTIFACT_URL"
# add vars to txt file
echo "$ARTIFACT_ID" > url_info.txt
echo "$RUN_ID" >> url_info.txt
echo "$OWNER" >> url_info.txt
echo "$REPO_NAME" >> url_info.txt
- name: upload txt file as an artifact
uses: actions/upload-artifact@v4
with:
name: url-info
path: url_info.txt

# seperate job needed so we can check out and change code from gh-pages branch
update-url:
runs-on: ubuntu-latest

needs: merge

steps:
- name: checkout repo content
uses: actions/checkout@v2
with:
ref: gh-pages

- name: download url-info artifact
uses: actions/download-artifact@v4
with:
name: url-info
path: .

echo "ARTIFACT_URL=$ARTIFACT_URL" >> $GITHUB_ENV
- name: get vars from url_info.txt file
run: |
ARTIFACT_ID=$(head -1 url_info.txt)
RUN_ID=$(sed -n '2p' url_info.txt)
OWNER=$(sed -n '3p' url_info.txt)
REPO_NAME=$(sed -n '4p' url_info.txt)
echo "ARTIFACT_ID=$ARTIFACT_ID" >> $GITHUB_ENV
echo "RUN_ID=$RUN_ID" >> $GITHUB_ENV
echo "OWNER=$OWNER" >> $GITHUB_ENV
echo "REPO_NAME=$REPO_NAME" >> $GITHUB_ENV
- name: delete url-info artifact
uses: geekyeggo/delete-artifact@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
name: url-info

- name: update url in runner README
- name: update index.html with new merge artifact link
run: |
start_delim="<!-- start-link -->"
end_delim="<!-- end-link -->"
# remove current URL
sed -i "/$start_delim/,/$end_delim/d" README.md
# add new URL
printf "$start_delim\n$ARTIFACT_URL\n$end_delim\n" >> README.md
# merge script always runs on any PR, this ensures link is only updated after a PR is merged into SiEPIC
- name: commit and push changes to README if we are in SiEPIC repo
echo "New artifact URL: https://github.com/$OWNER/$REPO_NAME/actions/runs/$RUN_ID/artifacts/$ARTIFACT_ID"
sed -i 's|URL=https://github.com/'"$OWNER"'/'"$REPO_NAME"'/actions/runs/.*|URL=https://github.com/'"$OWNER"'/'"$REPO_NAME"'/actions/runs/'"$RUN_ID"'/artifacts/'"$ARTIFACT_ID"'">|' index.html
sed -i 's|href="https://github.com/'"$OWNER"'/'"$REPO_NAME"'/actions/runs/.*|href="https://github.com/'"$OWNER"'/'"$REPO_NAME"'/actions/runs/'"$RUN_ID"'/artifacts/'"$ARTIFACT_ID"'">|' index.html
# merge script always runs on any PR, the if statement ensures link is only updated after a PR is merged into SiEPIC
- name: push changes to gh-pages branch
run: |
git diff
git config --local user.email "${{ github.actor }}@users.noreply.github.com"
git config --local user.name "${{ github.actor }}"
git add README.md
git commit -m "update README with new artifact url $ARTIFACT_URL"
git config user.name "${{ github.actor }}"
git config user.email "${{ github.actor }}@users.noreply.github.com"
git add index.html
git commit -m "Update index.html to redirect to new merge artifact url"
git push
if: ${{ github.repository_owner == 'SiEPIC'}}
2 changes: 1 addition & 1 deletion .github/workflows/run-verification.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ jobs:
IFS=$'\n'
# run verification on all files
for file in "$FILES"; do
for file in $FILES; do
echo "Running verification on $file"
Expand Down

0 comments on commit bdf0c7a

Please sign in to comment.