CIにはDeploymentという機能があり、Heroku等色々なサービスに対応しています。Releasesに対してファイルをデプロイする事が出来ます。Releasesの使い方に関してzipファイルならなんでも登録でき、登録するファイルサイズはリポジトリにpushするより大きくても問題ないので、バイナリサイズがでかいnode-webkitアプリには向いていると言えます。Qiitaと同じなので、先に読んでおくといいかと思います。node-webkitアプリの実行ファイルの作成node-webkitアプリの実行ファイル(バイナリ)の作成方法といっても基本的にランタイムを丸ごと入れた実行ファイルを作るだけです。これはmllrsohn/node-webkit-builderを使うと簡単に行うことができます。以下のように対応したいプラットフォームと、node-webkitアプリのrootディレクトリを指定するだけでプラットフォームごとの実行ファイルを作ってくれます。./"Macなら.app、Windowsなら.exeのようなファイルがそれぞれ、build/win/github-reader.exeのような感じで作成されます。Releasesに登録するためにはzipファイルでないと行けないので、ビルドしたものをzip化する必要があります。ビルドスクリプトは以下のような感じです。Release"fiこのスクリプトをtravis.ymlでdeployする前に設定しておくと、ビルドした実行ファイルのzipファイルがプロジェクトのrootに並びます。tagのコミットの時に値が入る変数となっています。値があるときのみビルドスクリプトを走らせる感じです。Qiitaと全く同じことなので、簡単に解説します。Releasesへ登録するためのAPIキー等発行されて.travis.ymlに登録されます。trueがないと正しく動かないバグあることに注意して下さい。true最終的な.travis.ymlは以下のようになりました。tagをつけたコミットに対してのみdeployが動作するようになります。tagをはってpushするだけで、自動的に最新のタグにバイナリが登録されます。Releasesでは最新のタグにリンクを貼る方法が存在します。https://github.com/azu/github-reader/releases/latestという感じでバージョンではなく、latestという指定をすると最新バージョンへリダイレクトされます。Releaseにnode-webkitアプリのバイナリを登録する方法について紹介しました。node-webkitアプリはランタイムも含む都合上(含めない方法もありnwファイルがそれです)、ファイルサイズが数十から数百MBとなったりします。GitHubにはpush出来るファイルにサイズ制限があるため、node-webkitアプリのバイナリをリポジトリに置くのは難しいと思います。Releaseを使うのが一般的です。CIはただのテストだけではなく、こういったデプロイの用途にも使えて便利だと思います。Releaseでのバイナリ配布は以下から実例を見られます。タグ:node-webkitGitHubTravisCIお知らせ欄JavaScriptに関する最新情報は週一でJSer.infoを更新しています。efcl/efcl.github.ioからご意見下さい関連記事コメントを。