[FEATURE] Better Discord Status

This commit is contained in:
Dunemask 2024-02-18 17:18:55 -07:00
parent 8191038ee0
commit 23bb552e82

55
action.yml Normal file
View file

@ -0,0 +1,55 @@
name: Oasis Auto Config Action
description: Configure env for deploying apps using Oasis Automagically
inputs:
channel:
description: Channel (ci or deployments)
required: true
header:
description: Header to be displayed next to the environment
required: true
additional-content:
descrption: Additional info to include in the message
required: false
runs:
using: composite
steps:
- name: Configure Envars
shell: bash
run: |
if [ ${{ inputs.channel }} == "deployments" ]; then
echo DISCORD_WEBHOOK=${{ env.DISCORD_WEBHOOK_DEPLOYMENTS }} >> $GITHUB_ENV
echo DISCORD_MESSAGE_TITLE=DEPLOY >> $GITHUB_ENV
elif [ ${{ inputs.channel }} == "ci" ]; then
echo DISCORD_WEBHOOK=${{ env.DISCORD_WEBHOOK_CI }} >> $GITHUB_ENV
echo DISCORD_MESSAGE_TITLE=CI >> $GITHUB_ENV
else
echo "Error! channel required, and must be 'ci' or 'deployments'!"
exit 1
fi
if [ ${{ job.status }} == "success" ]; then
echo DISCORD_MESSAGE_STATUS_ICON=":white_check_mark:" >> $GITHUB_ENV
echo DISCORD_MESSAGE_STATUS_COLOR=3405175 >> $GITHUB_ENV
elif [ ${{ job.status }} == "failure" ]; then
echo DISCORD_MESSAGE_STATUS_ICON=":x:" >> $GITHUB_ENV
echo DISCORD_MESSAGE_STATUS_COLOR=16071219 >> $GITHUB_ENV
else
echo DISCORD_MESSAGE_STATUS_ICON=":warning:" >> $GITHUB_ENV
echo DISCORD_MESSAGE_STATUS_COLOR=16102451 >> $GITHUB_ENV
fi
# Save Common Envars
echo DISCORD_MESSAGE_ACTION_URL=${{ env.GITHUB_SERVER_URL }}/${{ env.GITHUB_REPOSITORY }}/actions/runs/${{ env.GITHUB_RUN_NUMBER }} >> $GITHUB_ENV
echo DISCORD_MESSAGE_REPOSITORY_URL=${{ env.GITHUB_SERVER_URL }}/${{ env.GITHUB_REPOSITORY }} >> $GITHUB_ENV
- name: Configure Kubeconfig
uses: tsickert/discord-webhook@v5.4.0
with:
webhook-url: ${{ env.DISCORD_WEBHOOK }}
embed-title: ${{ env.GITHUB_REPOSITORY }}
embed-url: ${{ env.DISCORD_MESSAGE_REPOSITORY_URL }}
embed-color: ${{ env.DISCORD_MESSAGE_STATUS_COLOR }}
content: |-
**[${{env.DISCORD_MESSAGE_TITLE}}]** | ${{ inputs.header }} | ${{env.DISCORD_MESSAGE_STATUS_ICON}}
${{ env.GITHUB_SERVER_URL }}/${{ env.GITHUB_REPOSITORY }}/actions/runs/${{ env.GITHUB_RUN_NUMBER
${{ inputs.additional-content }}