Files
lunasea/.github/workflows/notify.yml

95 lines
2.8 KiB
YAML

name: Notify
on:
workflow_call:
inputs:
build-changelog:
required: true
type: string
build-title:
required: true
type: string
flavor:
required: true
type: string
enable-android:
required: true
type: string
enable-ios:
required: true
type: string
enable-linux:
required: true
type: string
enable-macos:
required: true
type: string
enable-web:
required: true
type: string
enable-windows:
required: true
type: string
secrets:
DISCORD_WEBHOOK_EDGE:
required: true
DISCORD_WEBHOOK_BETA:
required: true
DISCORD_WEBHOOK_CANDIDATE:
required: true
DISCORD_WEBHOOK_STABLE:
required: true
jobs:
discord:
name: Discord
runs-on: ubuntu-latest
steps:
- name: Determine Webhook Channel
id: webhook
uses: actions/github-script@v6
env:
DISCORD_WEBHOOK_EDGE: ${{ secrets.DISCORD_WEBHOOK_EDGE }}
DISCORD_WEBHOOK_BETA: ${{ secrets.DISCORD_WEBHOOK_BETA }}
DISCORD_WEBHOOK_CANDIDATE: ${{ secrets.DISCORD_WEBHOOK_CANDIDATE }}
DISCORD_WEBHOOK_STABLE: ${{ secrets.DISCORD_WEBHOOK_STABLE }}
FLAVOR: ${{ inputs.flavor }}
with:
result-encoding: string
script: |
const ref = process.env.FLAVOR || 'edge';
switch (ref) {
case 'beta': return process.env.DISCORD_WEBHOOK_BETA;
case 'candidate': return process.env.DISCORD_WEBHOOK_CANDIDATE;
case 'stable': return process.env.DISCORD_WEBHOOK_STABLE;
case 'edge':
default: return process.env.DISCORD_WEBHOOK_EDGE;
}
- name: Create Discord Embed
id: embed
uses: actions/github-script@v6
env:
BUILD_TITLE: ${{ inputs.build-title }}
CHANGELOG: ${{ inputs.build-changelog }}
ENABLE_ANDROID: ${{ inputs.enable-android }}
ENABLE_IOS: ${{ inputs.enable-ios }}
ENABLE_LINUX: ${{ inputs.enable-linux }}
ENABLE_MACOS: ${{ inputs.enable-macos }}
ENABLE_WEB: ${{ inputs.enable-web }}
ENABLE_WINDOWS: ${{ inputs.enable-windows }}
FLAVOR: ${{ inputs.flavor }}
with:
result-encoding: string
script: return require('.github/scripts/notify-embed.js')();
- name: Send Discord Message
uses: Ilshidur/action-discord@0.3.2
env:
DISCORD_WEBHOOK: ${{ steps.webhook.outputs.result }}
DISCORD_USERNAME: LunaSea Support
DISCORD_AVATAR: https://raw.githubusercontent.com/JagandeepBrar/LunaSea/master/assets/icon/icon.png
DISCORD_EMBEDS: ${{ steps.embed.outputs.result }}