.NET用のCIを探していて、AppVeyorを見つけました。
なんとGitHubにpushした時点で自動でコンパイルまでしてくれて、GitHub ReleaseなりS3なりFTPサーバーなり、好きなところにデプロイしてくれるという優れもの。
私は
git tag a タグ名 -m "コメント"
git push origin タグ名
でタグを設定したらデプロイする、という設定にしました。
(masterブランチが変更されるたびにデプロイする設定がデフォルト)
OSSなら無料で使わせてくれるとのことで、早速利用してみましたが、ちょこちょこ躓いたので記録。
まずは[AppVeyorでWindows向けバイナリを作ってGitHub Releasesに公開|Qiita]を参考に色々設定。
これだけではNugetパッケージがないって怒られてコンパイルできず。
SETTINGS→Build→Before build scriptで
nuget restore
と設定すればコンパイルが通るようになります。
また、ルートフォルダにslnファイルがないような場合には、
Visual Studio solution or project fileにslnファイルが入っているフォルダを指定しつつ、Before build scriptを
nuget restore windows
とすればOK。
Artifactsはリポジトリのルートからの相対パスで書かないとダメなので注意。
参考:Packaging artifacts|AppVeyor公式
なお、いろいろ試していたらたくさんダメなGitHub Releaseができてしまいました。
そんなときはGitのコンソールで
git push --delete origin 削除するタグ名
をしておいて、GitHubのReleasesの画面でEdit→discard draftボタンをクリックで跡形もなく消える。
(お世話になったサイト:GitHubのリリース(Releases)を削除する|Qiita)