From 640b1f5866af0e6b3cfa13c5845c83b124788834 Mon Sep 17 00:00:00 2001 From: Alexey Golub Date: Sun, 7 Apr 2019 13:01:38 +0300 Subject: [PATCH] Add deploy via chocolatey --- Deploy/Choco/discordchatexporter.nuspec | 25 ++++++++++++++++++++++++ Deploy/Choco/tools/chocolateyinstall.ps1 | 19 ++++++++++++++++++ Deploy/Prepare.ps1 | 24 ++++++++++++++++++----- UpdateVersion.ps1 | 4 +++- appveyor.yml | 19 ++++++++++++++---- 5 files changed, 81 insertions(+), 10 deletions(-) create mode 100644 Deploy/Choco/discordchatexporter.nuspec create mode 100644 Deploy/Choco/tools/chocolateyinstall.ps1 diff --git a/Deploy/Choco/discordchatexporter.nuspec b/Deploy/Choco/discordchatexporter.nuspec new file mode 100644 index 0000000..8b2f383 --- /dev/null +++ b/Deploy/Choco/discordchatexporter.nuspec @@ -0,0 +1,25 @@ + + + + discordchatexporter + DiscordChatExporter + 2.11 + Tyrrrz + Tyrrrz + Copyright (C) Alexey Golub + Exports Discord chat logs to a file + DiscordChatExporter can be used to export message history from a Discord channel to a file. It works for both direct message chats and guild chats, supports markdown, message grouping, and attachments. The tool also lets you select from/to dates to limit the exported messages. There are options to configure the output, such as date format, color theme, message grouping limit, etc. + discordchatexporter discord export chat logs archive gui + https://github.com/Tyrrrz/DiscordChatExporter + https://github.com/Tyrrrz/DiscordChatExporter + http://tyrrrz.me/Projects/DiscordChatExporter + https://github.com/Tyrrrz/DiscordChatExporter/blob/master/Changelog.md + https://raw.githubusercontent.com/Tyrrrz/DiscordChatExporter/master/favicon.png + https://raw.githubusercontent.com/Tyrrrz/DiscordChatExporter/master/License.txt + true + https://github.com/Tyrrrz/DiscordChatExporter/issues + + + + + \ No newline at end of file diff --git a/Deploy/Choco/tools/chocolateyinstall.ps1 b/Deploy/Choco/tools/chocolateyinstall.ps1 new file mode 100644 index 0000000..b3f9557 --- /dev/null +++ b/Deploy/Choco/tools/chocolateyinstall.ps1 @@ -0,0 +1,19 @@ +$ErrorActionPreference = 'Stop'; + +# --- GUI --- + +$packageArgs = @{ + packageName = $env:ChocolateyPackageName + unzipLocation = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)" + url = 'https://github.com/Tyrrrz/DiscordChatExporter/releases/download/2.11/DiscordChatExporter.zip' +} +Install-ChocolateyZipPackage @packageArgs + +# --- CLI --- + +$packageArgs = @{ + packageName = $env:ChocolateyPackageName + unzipLocation = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)" + url = 'https://github.com/Tyrrrz/DiscordChatExporter/releases/download/2.11/DiscordChatExporter.CLI.zip' +} +Install-ChocolateyZipPackage @packageArgs \ No newline at end of file diff --git a/Deploy/Prepare.ps1 b/Deploy/Prepare.ps1 index 4b927ad..313a2cd 100644 --- a/Deploy/Prepare.ps1 +++ b/Deploy/Prepare.ps1 @@ -1,13 +1,27 @@ -New-Item "$PSScriptRoot\bin" -ItemType Directory -Force +# --- PORTABLE / GUI --- -# GUI +# Get files $files = @() $files += Get-Item -Path "$PSScriptRoot\..\License.txt" $files += Get-ChildItem -Path "$PSScriptRoot\..\DiscordChatExporter.Gui\bin\Release\*" -Include "*.exe", "*.dll", "*.config" -$files | Compress-Archive -DestinationPath "$PSScriptRoot\bin\DiscordChatExporter.zip" -Force -# CLI +# Pack into archive +New-Item "$PSScriptRoot\Portable\GUI\bin" -ItemType Directory -Force +$files | Compress-Archive -DestinationPath "$PSScriptRoot\Portable\GUI\bin\DiscordChatExporter.zip" -Force + +# --- PORTABLE / CLI --- + +# Get files $files = @() $files += Get-Item -Path "$PSScriptRoot\..\License.txt" $files += Get-ChildItem -Path "$PSScriptRoot\..\DiscordChatExporter.Cli\bin\Release\net46\*" -Include "*.exe", "*.dll", "*.config" -$files | Compress-Archive -DestinationPath "$PSScriptRoot\bin\DiscordChatExporter.CLI.zip" -Force \ No newline at end of file + +# Pack into archive +New-Item "$PSScriptRoot\Portable\CLI\bin" -ItemType Directory -Force +$files | Compress-Archive -DestinationPath "$PSScriptRoot\Portable\CLI\bin\DiscordChatExporter.CLI.zip" -Force + +# --- CHOCOLATEY --- + +# Create package +New-Item "$PSScriptRoot\Choco\bin\" -ItemType Directory -Force +choco pack $PSScriptRoot\Choco\discordchatexporter.nuspec --out $PSScriptRoot\Choco\bin\ \ No newline at end of file diff --git a/UpdateVersion.ps1 b/UpdateVersion.ps1 index 7f75544..1b545ff 100644 --- a/UpdateVersion.ps1 +++ b/UpdateVersion.ps1 @@ -9,4 +9,6 @@ function Replace-TextInFile { } Replace-TextInFile "$PSScriptRoot\DiscordChatExporter.Cli\DiscordChatExporter.Cli.csproj" '(?<=)(.*?)(?=)' $newVersion -Replace-TextInFile "$PSScriptRoot\DiscordChatExporter.Gui\Properties\AssemblyInfo.cs" '(?<=Assembly.*?Version\(")(.*?)(?="\)\])' $newVersion \ No newline at end of file +Replace-TextInFile "$PSScriptRoot\DiscordChatExporter.Gui\Properties\AssemblyInfo.cs" '(?<=Assembly.*?Version\(")(.*?)(?="\)\])' $newVersion +Replace-TextInFile "$PSScriptRoot\Deploy\Choco\discordchatexporter.nuspec" '(?<=)(.*?)(?=)' $newVersion +Replace-TextInFile "$PSScriptRoot\Deploy\Choco\tools\chocolateyinstall.ps1" '(?<=download/)(.*?)(?=/)' $newVersion \ No newline at end of file diff --git a/appveyor.yml b/appveyor.yml index 2291aed..264fe6d 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -13,17 +13,28 @@ after_build: - ps: Deploy\Prepare.ps1 artifacts: -- path: Deploy\bin\DiscordChatExporter.zip +- path: Deploy\Portable\GUI\bin\DiscordChatExporter.zip name: DiscordChatExporter.zip -- path: Deploy\bin\DiscordChatExporter.Cli.zip - name: DiscordChatExporter.Cli.zip +- path: Deploy\Portable\CLI\bin\DiscordChatExporter.CLI.zip + name: DiscordChatExporter.CLI.zip +- path: Deploy\Choco\bin\DiscordChatExporter*.nupkg + name: DiscordChatExporter-Choco.nupkg deploy: - provider: GitHub auth_token: secure: sjQHWRw29AMiVMn3MtidtWnAzAf1mJ+mkJ/7h1B9TIAHhkFrqwMK7LtXV+uNJ9AO - artifact: DiscordChatExporter.zip,DiscordChatExporter.Cli.zip + artifact: DiscordChatExporter.zip,DiscordChatExporter.CLI.zip description: '[Changelog](https://github.com/Tyrrrz/DiscordChatExporter/blob/master/Changelog.md)' + on: + branch: master + appveyor_repo_tag: true +- provider: NuGet + server: https://push.chocolatey.org/ + api_key: + secure: aQVQ50i8GcwxMXTHf2ck5PijnOeVZY8Z9MEROQTvT49/7/az9w8ru8NCyEsV6H5I + artifact: DiscordChatExporter-Choco.nupkg + skip_symbols: true on: branch: master appveyor_repo_tag: true \ No newline at end of file