diff --git a/.github/actions/notify_failure/action.yml b/.github/actions/notify_failure/action.yml index aec684b99..0fd9a6872 100644 --- a/.github/actions/notify_failure/action.yml +++ b/.github/actions/notify_failure/action.yml @@ -88,7 +88,14 @@ runs: if [[ -n "${{ inputs.refStream }}" ]]; then yq -iP '.attachments[0].content.body[0].columns[1].items[2].facts += [ { "title": "RefStream", "value": "${{ inputs.refStream }}" } ]' teams_payload.json fi - yq -iP '.attachments[0].content.body[0].columns[1].items[2].facts += [ { "title": "Assignee", "value": "${{ steps.pick-assignee.outputs.assignee }}" } ]' teams_payload.json + text_value="{{ steps.pick-assignee.outputs.assignee }}" + entities=$(jq -c '.attachments[0].content.msteams.entities[]' teams_payload.json) + # need to filter entities to only have entry of mentioned person + filtered_entity=$(echo $entities | jq -r --arg text_value "$text_value" 'select(.text == $text_value)') + yq -iP '.attachments[0].content.msteams.entities = [ '"$filtered_entity"' ]' teams_payload.json + + + yq -iP '.attachments[0].content.body[0].columns[1].items[2].facts += [ { "title": "Assignee", "value": "${{ steps.pick-assignee.outputs.assignee }}" } ]' teams_payload.json yq -iP '.attachments[0].content.actions[0].url = "${{ steps.create-project-card.outputs.jobURL }}"' teams_payload.json yq -iP '.attachments[0].content.actions[1].url = "${{ steps.create-project-card.outputs.issueURL }}"' teams_payload.json yq -iP ".attachments[0].content.actions[2].url = \"${{ steps.create-project-card.outputs.opensearchURL }}\"" teams_payload.json diff --git a/.github/teams_payload_template.json b/.github/teams_payload_template.json index ed808c611..5f9c36b24 100644 --- a/.github/teams_payload_template.json +++ b/.github/teams_payload_template.json @@ -9,7 +9,57 @@ "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "version": "1.2", "msteams": { - "width": "Full" + "width": "Full", + "entities": [ + { + "type": "mention", + "text": "elchead", + "mentioned": { + "id": "3931943b-8d4b-4300-ac7e-bbb06c4da27f", + "name": "Adrian Stobbe" + } + }, + { + "type": "mention", + "text": "3u13r", + "mentioned": { + "id": "26869b29-b0d6-48f8-a9ed-7a6374410a53", + "name": "Leonard Cohnen" + } + }, + { + "type": "mention", + "text": "daniel-weisse", + "mentioned": { + "id": "759f3380-526e-4776-a620-cc713dce6177", + "name": "Daniel Weisse" + } + }, + { + "type": "mention", + "text": "katexochen", + "mentioned": { + "id": "fcb7b554-33bb-47f7-8f0e-41b66aab4556", + "name": "Paul Meyer" + } + }, + { + "type": "mention", + "text": "derpsteb", + "mentioned": { + "id": "a9a34611-9a38-4c00-a8a2-f87d94c2bf7d", + "name": "Otto Bittner" + } + }, + { + "type": "mention", + "text": "malt3", + "mentioned": { + "id": "3012fe21-cff7-499d-88cf-48cf12f2e90c", + "name": "Malte Poll" + } + } + ] }, "body": [ {