Portable + Win x86 deployment

This commit is contained in:
Christian Köllner 2019-07-12 20:48:37 +02:00
parent 97883572af
commit 26ae8762d4
8 changed files with 48 additions and 11 deletions

View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata>
<id>capnpc-csharp-win-x86</id>
<version>1.0.0</version>
<authors>Christian Köllner and contributors</authors>
<owners>Christian Köllner and contributors</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<!--<license type="expression">MIT</license>-->
<licenseUrl>https://licenses.nuget.org/MIT</licenseUrl>
<projectUrl>https://github.com/c80k/capnproto-dotnetcore</projectUrl>
<description>Cap'n Proto C# code generator backend, self-contained Windows x86</description>
<copyright>Christian Köllner and contributors</copyright>
<tags>capnp capnpc RPC serialization cerealization</tags>
<!--<repository type="Git" />-->
</metadata>
<files>
<file src="chocolateyinstall.ps1" target="tools" />
<file src="chocolateyuninstall.ps1" target="tools" />
<file src=".\bin\**" target="tools" />
</files>
</package>

View File

@ -2,4 +2,5 @@ $ErrorActionPreference = 'Stop'
$toolsDir = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"
choco install capnproto
Install-Binfile -Name capnpc-csharp -Path "$toolsDir\capnpc-csharp.exe"

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata>
<id>capnpc-csharp</id>
<id>capnpc-csharp-win-x86</id>
<version>1.0.0</version>
<authors>Christian Köllner and contributors</authors>
<owners>Christian Köllner and contributors</owners>
@ -9,7 +9,7 @@
<!--<license type="expression">MIT</license>-->
<licenseUrl>https://licenses.nuget.org/MIT</licenseUrl>
<projectUrl>https://github.com/c80k/capnproto-dotnetcore</projectUrl>
<description>Cap'n Proto C# code generator backend</description>
<description>Cap'n Proto C# code generator backend, portable .NET Core 2.1</description>
<copyright>Christian Köllner and contributors</copyright>
<tags>capnp capnpc RPC serialization cerealization</tags>
<!--<repository type="Git" />-->
@ -17,6 +17,6 @@
<files>
<file src="chocolateyinstall.ps1" target="tools" />
<file src="chocolateyuninstall.ps1" target="tools" />
<file src=".\deploy\**" target="tools" />
<file src=".\bin\**" target="tools" />
</files>
</package>

View File

@ -0,0 +1,5 @@
$ErrorActionPreference = 'Stop'
$toolsDir = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"
Install-Binfile -Name capnpc-csharp -Path "dotnet" -Command "$toolsDir\capnpc-csharp.dll"

View File

@ -0,0 +1,3 @@
$ErrorActionPreference = 'Stop'
Uninstall-BinFile capnpc-sharp

View File

@ -0,0 +1,8 @@
$id = "capnpc-csharp-win-x86"
$scriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
$installDir = "$scriptDir\..\chocolatey\install"
if (!([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")) { Start-Process powershell.exe "-NoProfile -ExecutionPolicy Bypass -File `"$PSCommandPath`"" -Verb RunAs; exit }
choco install $id -s $installDir --force

View File

@ -1,14 +1,12 @@
$id = "capnpc-csharp"
$version = "1.0.0"
$id_win_x86 = "capnpc-csharp-win-x86"
$scriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
$prefix = "$id.$version"
$chocoDir = "$scriptDir\..\chocolatey"
$nuspecFile = "$prefix.nuspec"
$nuspecPath = "$chocoDir\$nuspecFile"
$deployDir = "$chocoDir\deploy"
$installDir = "$chocoDir\install"
$csprojDir = "$scriptDir\..\capnpc-csharp"
$csprojFile = "capnpc-csharp.csproj"
dotnet publish -c Release -r win-x86 --self-contained -o $deployDir "$csprojDir\$csprojFile"
choco pack $nuspecPath --outputdirectory $installDir
dotnet publish -c Release -r win-x86 --self-contained -o "$chocoDir\$id_win_x86\bin" "$csprojDir\$csprojFile"
dotnet publish -c Release -o "$chocoDir\$id\bin" "$csprojDir\$csprojFile"
choco pack "$chocoDir\$id\$id.nuspec" --outputdirectory "$chocoDir\$id\bin"
choco pack "$chocoDir\$id_win_x86\$id_win_x86.nuspec" --outputdirectory "$chocoDir\$id_win_x86\bin"