2015年6月29日月曜日

iutest を NuGet パッケージにして公開しました

NuGet で公開しました。
パッケージインストールするだけで、すぐさま iutest を使ったテストが書けるようになりました!

パッケージ作成の備忘録
参考URL:
Past We Saw - 原文: Deep Dive into NuGet Native (Part One)
NuGet パッケージを作って公開する - しばやん雑記
Nuspec Reference

iutest の場合、インクルードオンリーなフレームワークですので、必要なのはヘッダーファイルとそのパスを通すための .targets ファイルです。
それらのファイルをパッケージングするようにした .nuspec を用意したら終わりです。

実際に書いたファイルは、以下で確認できます。
https://github.com/srz-zumix/iutest/tree/master/projects/nuget

ローカルでテスト
参考URL:
NuGet をオフラインで使用する - THE TRUTH IS OUT THERE - Site Home - MSDN Blogs

パッケージできたら、本番環境にデプロイするまえにテストしたいですよね。
NuGet のパッケージソースは、ローカルパスにも対応しています。
ツール > NuGet パッケージ マネージャー > パッケージ マネージャーの設定 > パッケージ ソース で追加することができます。


これで、ローカルパスを追加して、パッケージのインストールをすることができます。
社内向けとかプライベートなパッケージも置くことができますね。

Appveyor で自動デプロイ
参考URL:
AppVeyor で NuGet パッケージの作成とデプロイを自動化 | grabacr.nét

最初、この設定でやってみたのですが、どうやら .csproj の場合しかやってくれないっぽい。
ということで、この方法は諦め。

参考URL:
Appveyor でNuget Packageの発行を自動化する - 銀の光と碧い空

続いて、こちらを参考にして PowerShell でパッケージ作成をしました。
まず、ビルドスクリプトでパッケージを作成します。
$nuspecPath = "projects\nuget\iutest.nuspec"
Write-Output "Building NuGet package"
nuget pack $nuspecPath -OutputDirectory ".\"

iutest では、.nuspec ファイルのバージョンは手付でやるので、上書きとかはせず単純にパッケージ作成をしました。

次に Artifacts の設定でビルドで作成した .nupkg ファイルを成果物として保存します。
「DEPLOYMENT NAME」 には適当な名前を入れてください。あとで使います。


最後に、Delpoyment の設定をします。
Provider を NuGet に設定し、API Key を設定してください。
そして、その下の Artifact(s) のところに先ほど設定した 「DEPLOYMENT NAME」 を設定します。


というわけで

NuGet で公開されてます。
是非、使ってみて下さい

0 件のコメント:

コメントを投稿