LoginSignup
1
1

More than 5 years have passed since last update.

node × TeamCity インテグレーション 〜TeamCity上でnode, npm を使用できるようにする〜

Last updated at Posted at 2016-07-25

TeamCity ではデフォルトでnode のコマンドをサポートしていません。
そのためTeamCity のプラグインを導入しなければなりません。

ここではそのプラグインの紹介と簡単な使い方を紹介します。
プラグインの導入方法については解説しませんので、ご注意を。

プラグイン

Node 関連のコマンドを扱うプラグインです。
実行できるようになるコマンドは以下になります。

  • node.js
  • npm:パッケージマネージャ
  • nvm:Node バージョン変更
  • Phantom.js:仮想ブラウザ
  • Grunt:タスクランナー
  • Gulp:タスクランナー

プラグインを使うために追加でインストールすべきもの

プラグインを導入しただけでは、TeamCity 上でコマンドを実行した時にエラーとなってしまいます。
そのため、以下のものについては、TeamCity が起動しているサーバに追加インストールする必要があります。

必須

任意

任意とした理由は、もしTeamCity を複数プロジェクトで使用している場合は、プロジェクトごとに異なるバージョンを使用することがあるため、プロジェクト側のビルドプロセスで任意パッケージをインストールしたほうが良いからです。
1プロジェクトであればTeamCity にインストールしておいて問題ありません。

もちろん使用しないのであれば、すべてインストールする必要ありませんが。

TeamCity ビルド

ここでは、npm, gulp を使用したビルドを紹介します。
この例では、各プロジェクトごとに各パッケージのバージョンが異なる前提で作成しています。

全体のタスクは以下のようになります。

all.png


1. Node のバージョンを NVM インストーラで指定します。
first.png


2. Node をインストールしたときに付属してくるnpm をバージョン指定します。ここでは最新版にしています。
second.png


3. gulp をバージョン指定してインストールします。ここでは最新版にしています。
third.png


4. リポジトリから取得したプロジェクトをnpm installします。これでnpm_modules がTeamCity 上にインストールされます。
forth.png


5. リポジトリから取得したプロジェクトの各タスクを実行します。ここではnpm runしています。
fifth.png

ポイントは各パッケージをプロジェクトのビルドプロセスでインストールしていることです。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1