Skip to content

Commit 3e52cc1

Browse files
Merge pull request #603 from microsoft/psl-fixcopilotcomments-cpsv2
fix: fixed copilot comments
2 parents 81f8181 + 9d87762 commit 3e52cc1

1 file changed

Lines changed: 42 additions & 29 deletions

File tree

.github/workflows/job-send-notification.yml

Lines changed: 42 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,17 @@ jobs:
130130
EXP_LABEL=$( [ "$EXP" = "true" ] && echo "EXP" || echo "Non-EXP" )
131131
echo "CONFIG_LABEL=${WAF_LABEL} + ${EXP_LABEL}" >> $GITHUB_OUTPUT
132132
133+
- name: Prepare HTML Escape Helper
134+
shell: bash
135+
run: |
136+
HTML_ESCAPE_HELPER="$RUNNER_TEMP/html_escape_helper.sh"
137+
cat > "$HTML_ESCAPE_HELPER" <<'EOF'
138+
html_escape() {
139+
printf '%s' "$1" | sed -e 's/&/\&amp;/g' -e 's/</\&lt;/g' -e 's/>/\&gt;/g' -e 's/"/\&quot;/g' -e "s/'/\&#39;/g"
140+
}
141+
EOF
142+
echo "HTML_ESCAPE_HELPER=$HTML_ESCAPE_HELPER" >> "$GITHUB_ENV"
143+
133144
# ------------------------------------------------------------------
134145
# Quota failure
135146
# ------------------------------------------------------------------
@@ -144,7 +155,10 @@ jobs:
144155
CLEANUP_PILL: ${{ steps.cleanup.outputs.CLEANUP_PILL }}
145156
CONFIG_LABEL: ${{ steps.config.outputs.CONFIG_LABEL }}
146157
run: |
158+
. "$HTML_ESCAPE_HELPER"
147159
RUN_URL="https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}"
160+
ACTOR="$(html_escape "$GITHUB_ACTOR")"
161+
BRANCH="$(html_escape "$BRANCH_NAME")"
148162
PILL_BASE="display:inline-block; min-width:70px; text-align:center; padding:4px 12px; border-radius:20px; font-size:12px; font-weight:600; line-height:1.4;"
149163
DEPLOY_PILL="<span style=\"${PILL_BASE} background:#f8d7da; color:#721c24;\">&#x274C; FAILED</span>"
150164
E2E_PILL="<span style=\"${PILL_BASE} background:#d4edda; color:#155724;\">&#x23ED;&#xFE0F; SKIPPED</span>"
@@ -178,9 +192,9 @@ jobs:
178192
<h3 style="margin:0 0 14px; font-size:13px; text-transform:uppercase; letter-spacing:0.5px; color:#6b7280; border-bottom:2px solid #e5e7eb; padding-bottom:8px;">Deployment Details</h3>
179193
<table width="100%" cellpadding="0" cellspacing="0" style="margin-bottom:28px;">
180194
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280; width:140px;">Triggered By</td>
181-
<td style="padding:8px 0; font-size:13px; color:#111827;">${{ github.actor }}</td></tr>
195+
<td style="padding:8px 0; font-size:13px; color:#111827;">${ACTOR}</td></tr>
182196
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Branch</td>
183-
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${{ env.BRANCH_NAME }}</td></tr>
197+
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${BRANCH}</td></tr>
184198
</table>
185199
<table role="presentation" width="100%" cellpadding="0" cellspacing="0"><tr><td align="center" style="padding:8px 0;">
186200
<a href="${RUN_URL}" style="display:inline-block; background:#dc2626; color:#ffffff; text-decoration:none; padding:12px 28px; border-radius:4px; font-size:13px; font-weight:600; letter-spacing:0.3px;">VIEW PIPELINE RUN</a>
@@ -219,8 +233,11 @@ jobs:
219233
CONFIG_LABEL: ${{ steps.config.outputs.CONFIG_LABEL }}
220234
CLEANUP_PILL: ${{ steps.cleanup.outputs.CLEANUP_PILL }}
221235
run: |
236+
. "$HTML_ESCAPE_HELPER"
222237
RUN_URL="https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}"
223-
RESOURCE_GROUP="$INPUT_RESOURCE_GROUP_NAME"
238+
RESOURCE_GROUP="$(html_escape "$INPUT_RESOURCE_GROUP_NAME")"
239+
ACTOR="$(html_escape "$GITHUB_ACTOR")"
240+
BRANCH="$(html_escape "$BRANCH_NAME")"
224241
PILL_BASE="display:inline-block; min-width:70px; text-align:center; padding:4px 12px; border-radius:20px; font-size:12px; font-weight:600; line-height:1.4;"
225242
DEPLOY_PILL="<span style=\"${PILL_BASE} background:#f8d7da; color:#721c24;\">&#x274C; FAILED</span>"
226243
E2E_PILL="<span style=\"${PILL_BASE} background:#d4edda; color:#155724;\">&#x23ED;&#xFE0F; SKIPPED</span>"
@@ -256,9 +273,9 @@ jobs:
256273
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280; width:140px;">Resource Group</td>
257274
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${RESOURCE_GROUP}</td></tr>
258275
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Triggered By</td>
259-
<td style="padding:8px 0; font-size:13px; color:#111827;">${{ github.actor }}</td></tr>
276+
<td style="padding:8px 0; font-size:13px; color:#111827;">${ACTOR}</td></tr>
260277
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Branch</td>
261-
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${{ env.BRANCH_NAME }}</td></tr>
278+
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${BRANCH}</td></tr>
262279
</table>
263280
<table role="presentation" width="100%" cellpadding="0" cellspacing="0"><tr><td align="center" style="padding:8px 0;">
264281
<a href="${RUN_URL}" style="display:inline-block; background:#dc2626; color:#ffffff; text-decoration:none; padding:12px 28px; border-radius:4px; font-size:13px; font-weight:600; letter-spacing:0.3px;">INVESTIGATE FAILURE</a>
@@ -302,14 +319,13 @@ jobs:
302319
CLEANUP_PILL: ${{ steps.cleanup.outputs.CLEANUP_PILL }}
303320
TEST_SUITE_NAME: ${{ steps.test_suite.outputs.TEST_SUITE_NAME }}
304321
run: |
305-
# HTML-escape values that get embedded into the email template to avoid HTML/attribute injection from workflow inputs.
306-
html_escape() {
307-
printf '%s' "$1" | sed -e 's/&/\&amp;/g' -e 's/</\&lt;/g' -e 's/>/\&gt;/g' -e 's/"/\&quot;/g' -e "s/'/\&#39;/g"
308-
}
322+
. "$HTML_ESCAPE_HELPER"
309323
RUN_URL="https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}"
310324
WEBAPP_URL="$(html_escape "${INPUT_CONTAINER_WEB_APPURL:-$INPUT_EXISTING_WEBAPP_URL}")"
311325
RESOURCE_GROUP="$(html_escape "$INPUT_RESOURCE_GROUP_NAME")"
312326
TEST_REPORT_URL="$(html_escape "$INPUT_TEST_REPORT_URL")"
327+
ACTOR="$(html_escape "$GITHUB_ACTOR")"
328+
BRANCH="$(html_escape "$BRANCH_NAME")"
313329
PILL_BASE="display:inline-block; min-width:70px; text-align:center; padding:4px 12px; border-radius:20px; font-size:12px; font-weight:600; line-height:1.4;"
314330
DEPLOY_PILL="<span style=\"${PILL_BASE} background:#d4edda; color:#155724;\">&#x2705; SUCCESS</span>"
315331
@@ -353,9 +369,9 @@ jobs:
353369
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Web App URL</td>
354370
<td style="padding:8px 0; font-size:13px;"><a href="${WEBAPP_URL}" style="color:#2563eb; text-decoration:none; font-family:'Cascadia Code','Courier New',monospace;">${WEBAPP_URL}</a></td></tr>
355371
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Triggered By</td>
356-
<td style="padding:8px 0; font-size:13px; color:#111827;">${{ github.actor }}</td></tr>
372+
<td style="padding:8px 0; font-size:13px; color:#111827;">${ACTOR}</td></tr>
357373
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Branch</td>
358-
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${{ env.BRANCH_NAME }}</td></tr>
374+
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${BRANCH}</td></tr>
359375
${TEST_DETAIL_ROWS}
360376
</table>
361377
<table role="presentation" width="100%" cellpadding="0" cellspacing="0"><tr><td align="center" style="padding:8px 0;">
@@ -399,14 +415,13 @@ jobs:
399415
CONFIG_LABEL: ${{ steps.config.outputs.CONFIG_LABEL }}
400416
TEST_SUITE_NAME: ${{ steps.test_suite.outputs.TEST_SUITE_NAME }}
401417
run: |
402-
# HTML-escape values that get embedded into the email template to avoid HTML/attribute injection from workflow inputs.
403-
html_escape() {
404-
printf '%s' "$1" | sed -e 's/&/\&amp;/g' -e 's/</\&lt;/g' -e 's/>/\&gt;/g' -e 's/"/\&quot;/g' -e "s/'/\&#39;/g"
405-
}
418+
. "$HTML_ESCAPE_HELPER"
406419
RUN_URL="https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}"
407420
WEBAPP_URL="$(html_escape "${INPUT_CONTAINER_WEB_APPURL:-$INPUT_EXISTING_WEBAPP_URL}")"
408421
RESOURCE_GROUP="$(html_escape "$INPUT_RESOURCE_GROUP_NAME")"
409422
TEST_REPORT_URL="$(html_escape "$INPUT_TEST_REPORT_URL")"
423+
ACTOR="$(html_escape "$GITHUB_ACTOR")"
424+
BRANCH="$(html_escape "$BRANCH_NAME")"
410425
PILL_BASE="display:inline-block; min-width:70px; text-align:center; padding:4px 12px; border-radius:20px; font-size:12px; font-weight:600; line-height:1.4;"
411426
DEPLOY_PILL="<span style=\"${PILL_BASE} background:#d4edda; color:#155724;\">&#x2705; SUCCESS</span>"
412427
E2E_PILL="<span style=\"${PILL_BASE} background:#f8d7da; color:#721c24;\">&#x274C; FAILED</span>"
@@ -441,9 +456,9 @@ jobs:
441456
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Web App URL</td>
442457
<td style="padding:8px 0; font-size:13px;"><a href="${WEBAPP_URL}" style="color:#2563eb; text-decoration:none; font-family:'Cascadia Code','Courier New',monospace;">${WEBAPP_URL}</a></td></tr>
443458
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Triggered By</td>
444-
<td style="padding:8px 0; font-size:13px; color:#111827;">${{ github.actor }}</td></tr>
459+
<td style="padding:8px 0; font-size:13px; color:#111827;">${ACTOR}</td></tr>
445460
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Branch</td>
446-
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${{ env.BRANCH_NAME }}</td></tr>
461+
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${BRANCH}</td></tr>
447462
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Test Suite</td>
448463
<td style="padding:8px 0; font-size:13px; color:#111827;">${TEST_SUITE_NAME}</td></tr>
449464
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Test Report</td>
@@ -488,13 +503,12 @@ jobs:
488503
CONFIG_LABEL: ${{ steps.config.outputs.CONFIG_LABEL }}
489504
TEST_SUITE_NAME: ${{ steps.test_suite.outputs.TEST_SUITE_NAME }}
490505
run: |
491-
# HTML-escape values that get embedded into the email template to avoid HTML/attribute injection from workflow inputs.
492-
html_escape() {
493-
printf '%s' "$1" | sed -e 's/&/\&amp;/g' -e 's/</\&lt;/g' -e 's/>/\&gt;/g' -e 's/"/\&quot;/g' -e "s/'/\&#39;/g"
494-
}
506+
. "$HTML_ESCAPE_HELPER"
495507
RUN_URL="https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}"
496508
EXISTING_URL="$(html_escape "$INPUT_EXISTING_WEBAPP_URL")"
497509
TEST_REPORT_URL="$(html_escape "$INPUT_TEST_REPORT_URL")"
510+
ACTOR="$(html_escape "$GITHUB_ACTOR")"
511+
BRANCH="$(html_escape "$BRANCH_NAME")"
498512
PILL_BASE="display:inline-block; min-width:70px; text-align:center; padding:4px 12px; border-radius:20px; font-size:12px; font-weight:600; line-height:1.4;"
499513
DEPLOY_PILL="<span style=\"${PILL_BASE} background:#d4edda; color:#155724;\">&#x23ED;&#xFE0F; SKIPPED</span>"
500514
E2E_PILL="<span style=\"${PILL_BASE} background:#d4edda; color:#155724;\">&#x2705; SUCCESS</span>"
@@ -532,9 +546,9 @@ jobs:
532546
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280; width:140px;">Target URL</td>
533547
<td style="padding:8px 0; font-size:13px;"><a href="${EXISTING_URL}" style="color:#2563eb; text-decoration:none; font-family:'Cascadia Code','Courier New',monospace;">${EXISTING_URL}</a></td></tr>
534548
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Triggered By</td>
535-
<td style="padding:8px 0; font-size:13px; color:#111827;">${{ github.actor }}</td></tr>
549+
<td style="padding:8px 0; font-size:13px; color:#111827;">${ACTOR}</td></tr>
536550
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Branch</td>
537-
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${{ env.BRANCH_NAME }}</td></tr>
551+
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${BRANCH}</td></tr>
538552
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Test Suite</td>
539553
<td style="padding:8px 0; font-size:13px; color:#111827;">${TEST_SUITE_NAME}</td></tr>
540554
${REPORT_ROW}
@@ -578,13 +592,12 @@ jobs:
578592
CONFIG_LABEL: ${{ steps.config.outputs.CONFIG_LABEL }}
579593
TEST_SUITE_NAME: ${{ steps.test_suite.outputs.TEST_SUITE_NAME }}
580594
run: |
581-
# HTML-escape values that get embedded into the email template to avoid HTML/attribute injection from workflow inputs.
582-
html_escape() {
583-
printf '%s' "$1" | sed -e 's/&/\&amp;/g' -e 's/</\&lt;/g' -e 's/>/\&gt;/g' -e 's/"/\&quot;/g' -e "s/'/\&#39;/g"
584-
}
595+
. "$HTML_ESCAPE_HELPER"
585596
RUN_URL="https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}"
586597
EXISTING_URL="$(html_escape "$INPUT_EXISTING_WEBAPP_URL")"
587598
TEST_REPORT_URL="$(html_escape "$INPUT_TEST_REPORT_URL")"
599+
ACTOR="$(html_escape "$GITHUB_ACTOR")"
600+
BRANCH="$(html_escape "$BRANCH_NAME")"
588601
PILL_BASE="display:inline-block; min-width:70px; text-align:center; padding:4px 12px; border-radius:20px; font-size:12px; font-weight:600; line-height:1.4;"
589602
DEPLOY_PILL="<span style=\"${PILL_BASE} background:#d4edda; color:#155724;\">&#x23ED;&#xFE0F; SKIPPED</span>"
590603
E2E_PILL="<span style=\"${PILL_BASE} background:#f8d7da; color:#721c24;\">&#x274C; FAILED</span>"
@@ -622,9 +635,9 @@ jobs:
622635
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280; width:140px;">Target URL</td>
623636
<td style="padding:8px 0; font-size:13px;"><a href="${EXISTING_URL}" style="color:#2563eb; text-decoration:none; font-family:'Cascadia Code','Courier New',monospace;">${EXISTING_URL}</a></td></tr>
624637
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Triggered By</td>
625-
<td style="padding:8px 0; font-size:13px; color:#111827;">${{ github.actor }}</td></tr>
638+
<td style="padding:8px 0; font-size:13px; color:#111827;">${ACTOR}</td></tr>
626639
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Branch</td>
627-
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${{ env.BRANCH_NAME }}</td></tr>
640+
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${BRANCH}</td></tr>
628641
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Test Suite</td>
629642
<td style="padding:8px 0; font-size:13px; color:#111827;">${TEST_SUITE_NAME}</td></tr>
630643
${REPORT_ROW}

0 commit comments

Comments
 (0)