|
|
|
name: CD
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
tags:
|
|
|
|
- "*"
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
runs-on: windows-latest
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- name: Checkout
|
|
|
|
uses: actions/checkout@v2.3.3
|
|
|
|
|
|
|
|
- name: Get release version
|
|
|
|
id: get_version
|
|
|
|
uses: dawidd6/action-get-tag@v1
|
|
|
|
|
|
|
|
- name: Install .NET (v3.1)
|
|
|
|
uses: actions/setup-dotnet@v1.7.2
|
|
|
|
with:
|
|
|
|
dotnet-version: 3.1.x
|
|
|
|
|
|
|
|
- name: Install .NET (v5.0)
|
|
|
|
uses: actions/setup-dotnet@v1.7.2
|
|
|
|
with:
|
|
|
|
dotnet-version: 5.0.x
|
|
|
|
|
|
|
|
- name: Build & publish (CLI)
|
|
|
|
run: dotnet publish DiscordChatExporter.Cli/ -o DiscordChatExporter.Cli/bin/Publish/ --configuration Release
|
|
|
|
|
|
|
|
- name: Build & publish (GUI)
|
|
|
|
run: dotnet publish DiscordChatExporter.Gui/ -o DiscordChatExporter.Gui/bin/Publish/ --configuration Release
|
|
|
|
|
|
|
|
- name: Pack (CLI)
|
|
|
|
run: Compress-Archive -Path DiscordChatExporter.Cli/bin/Publish/* -DestinationPath DiscordChatExporter.Cli/bin/Publish/Archive.zip -Force
|
|
|
|
shell: pwsh
|
|
|
|
|
|
|
|
- name: Pack (GUI)
|
|
|
|
run: Compress-Archive -Path DiscordChatExporter.Gui/bin/Publish/* -DestinationPath DiscordChatExporter.Gui/bin/Publish/Archive.zip -Force
|
|
|
|
shell: pwsh
|
|
|
|
|
|
|
|
- name: Create release
|
|
|
|
id: create_release
|
|
|
|
uses: actions/create-release@v1.0.1
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
with:
|
|
|
|
tag_name: ${{ github.ref }}
|
|
|
|
release_name: ${{ github.ref }}
|
|
|
|
body: |
|
|
|
|
[Changelog](https://github.com/Tyrrrz/DiscordChatExporter/blob/master/Changelog.md)
|
|
|
|
draft: false
|
|
|
|
prerelease: false
|
|
|
|
|
|
|
|
- name: Upload release asset (CLI)
|
|
|
|
uses: actions/upload-release-asset@v1.0.2
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
with:
|
|
|
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
|
|
|
asset_path: DiscordChatExporter.Cli/bin/Publish/Archive.zip
|
|
|
|
asset_name: DiscordChatExporter.CLI.zip
|
|
|
|
asset_content_type: application/zip
|
|
|
|
|
|
|
|
- name: Upload release asset (GUI)
|
|
|
|
uses: actions/upload-release-asset@v1.0.2
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
with:
|
|
|
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
|
|
|
asset_path: DiscordChatExporter.Gui/bin/Publish/Archive.zip
|
|
|
|
asset_name: DiscordChatExporter.zip
|
|
|
|
asset_content_type: application/zip
|
|
|
|
|
|
|
|
- name: Notify Discord
|
|
|
|
uses: satak/webrequest-action@v1.2.4
|
|
|
|
with:
|
|
|
|
url: ${{ secrets.DISCORD_WEBHOOK }}
|
|
|
|
method: POST
|
|
|
|
headers: |
|
|
|
|
{
|
|
|
|
"ContentType": "application/json; charset=UTF-8"
|
|
|
|
}
|
|
|
|
payload: |
|
|
|
|
{
|
|
|
|
"content": "**DiscordChatExporter** new version released!\nVersion: `${{ steps.get_version.outputs.tag }}`\nChangelog: <https://github.com/Tyrrrz/DiscordChatExporter/blob/${{ steps.get_version.outputs.tag }}/Changelog.md>"
|
|
|
|
}
|