Skip to content

Commit

Permalink
Update comment
Browse files Browse the repository at this point in the history
  • Loading branch information
taraspos committed Nov 5, 2024
1 parent 7d85edd commit d1fc6ee
Showing 1 changed file with 36 additions and 20 deletions.
56 changes: 36 additions & 20 deletions .github/workflows/amplify-preview.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,10 @@ jobs:
for app_id in "${app_id_array[@]}"; do
branch_info=$(aws amplify get-branch --app-id ${app_id} --branch-name ${BRANCH_NAME} --query 'branch')
if [ $? -eq 0 ]; then
echo "PREVIEW_URL=$(jq '.displayName' <<< "$branch_info").$app_id.amplifyapp.com" >> $GITHUB_OUTPUT
echo "CREATE_TIME=$(jq '.createTime' <<< "$branch_info")" >> $GITHUB_OUTPUT
echo "UPDATE_TIME=$(jq '.updateTime' <<< "$branch_info")" >> $GITHUB_OUTPUT
echo "JOB_ID=$(jq '.activeJobId' <<< "$branch_info")" >> $GITHUB_OUTPUT
echo "PREVIEW_URL=https://$(jq -r '.displayName' <<< "$branch_info").$app_id.amplifyapp.com" >> $GITHUB_OUTPUT
echo "CREATE_TIME=$(jq -r '.createTime' <<< "$branch_info")" >> $GITHUB_OUTPUT
echo "UPDATE_TIME=$(jq -r '.updateTime' <<< "$branch_info")" >> $GITHUB_OUTPUT
echo "JOB_ID=$(jq -r '.activeJobId' <<< "$branch_info")" >> $GITHUB_OUTPUT
echo "APP_ID=${app_id}" >> $GITHUB_OUTPUT
break
fi
Expand All @@ -46,38 +46,54 @@ jobs:
id: get_amplify_job
env:
APP_ID: ${{ steps.get_amplify_branch.outputs.APP_ID }}
JOB_ID: ${{ steps.get_amplify_branch.outputs.APP_ID }}
JOB_ID: ${{ steps.get_amplify_branch.outputs.JOB_ID }}
BRANCH_NAME: ${{ steps.extract_branch.outputs.branch }}
shell: bash
continue-on-error: true
run: |
job_info=$(aws amplify get-job --app-id ${APP_ID} --branch-name ${BRANCH_NAME} --job-id ${JOB_ID} --query 'job.summary')
echo "JOB_STATUS=$(jq '.status' <<< "$branch_info")" >> $GITHUB_OUTPUT
echo "JOB_STATUS=$(jq -r '.status' <<< "$branch_info")" >> $GITHUB_OUTPUT
- uses: actions/github-script@v7
env:
PREVIEW_URL: ${{ steps.get_amplify_branch.outputs.PREVIEW_URL }}
UPDATE_TIME: ${{ steps.get_amplify_branch.outputs.UPDATE_TIME }}
JOB_ID: ${{ steps.get_amplify_branch.outputs.APP_ID }}
JOB_ID: ${{ steps.get_amplify_branch.outputs.JOB_ID }}
JOB_STATUS: ${{ steps.get_amplify_job.outputs.JOB_STATUS }}
with:
script: |
const previewUrl = process.env.PREVIEW_URL;
const jobId = process.env.JOB_ID;
const jobStatus = process.env.JOB_STATUS || "unknown";
const updatedAt = process.env.UPDATE_TIME;
const commentId = process.env.COMMENT_ID;
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: `![🤖](https://a0.awsstatic.com/libra-css/images/site/fav/favicon.ico) Amplify preview here: ${previewUrl}
const commentBody = `![🤖](https://a0.awsstatic.com/libra-css/images/site/fav/favicon.ico) Amplify preview here: ${previewUrl}
<details><summary>Preview details</summary>
- **LAST_UPDATE_AT**: ${updatedAt}
- **JOB_ID**: ${jobId}
- **JOB_STATUS**: ${jobStatus}
- **JOB_DURATION**:
</details>
`
})
<details><summary>Preview details</summary>
- **LAST_UPDATED_AT**: ${updatedAt}
- **JOB_ID**: ${jobId}
- **JOB_STATUS**: ${jobStatus}
</details>
`
const comments = (await github.rest.issues.listComments({ context.repo.owner, context.repo.repo, issue_number: context.payload.pull_request.number }))?.data;
const existingComment = comments?.find((comment) =>
comment.user.login === "github-actions[bot]" && comment.body.includes("Amplify preview here"));
if (existingComment != null) {
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: commentBody
})
} else {
github.rest.issues.updateComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: commentBody,
comment_id: existingComment.id,
})
}

0 comments on commit d1fc6ee

Please sign in to comment.