🛠️

AppVeyor で PowerShell Core モジュールをデプロイする

に公開

はじめに

AppVeyor で .NET Core のビルドができるとのことなので、PowerShell Core モジュールのビルドもできるのではないかと思い、試してみました。

実行手順

Environment

公式ドキュメントによると、Visual Studio 2015 または Visual Studio 2017 で .NET Core SDK 2.0 がサポートされています。特に Visual Studio 2015 を選ぶ理由はないので、Visual Studio 2017 を選びます。

https://www.appveyor.com/docs/build-environment

Build

MSBUILD は使えないので、SCRIPT - CMD を選んで dotnet コマンドを実行します。通常の .NET Core アプリケーションとは異なり、PowerShell Core の場合は NuGet パッケージ ソースに MyGet を追加で指定します。

dotnet restore --source https://api.nuget.org/v3/index.json --source https://powershell.myget.org/F/powershell-core/api/v3/index.json
dotnet build --configuration Release

Deployment

PowerShell Gallery への発行を自動化します。Publish-Module を実行するだけですが、必ず SCRIPT - PS CORE を選ぶ必要があります。SCRIPT - PS (Windows PowerShell) だと、Publish-Module の前提条件チェックでエラーが発生します。

Publish-Module -Name {{path}} -NuGetApiKey {{api-key}}

Discussion