2016-06-19 7 views
1

現在、ユニットテストにmochaを使用するemberjsノードプロジェクト用のJenkinsでCIを実装しようとしています。 Amazon EC2サーバーでJenkinsを実行しています。ローカルで実行されるMochaテストはJenkins(環境問題)で実行されません

私は(私のデスクトップ上で、AND EC2サーバ上の両方)、ローカルモカを実行すると、私はこれを取得:

./node_modules/mocha/bin/mocha 
Initializing server on port 8090 


    Unit Test for /test 
test API call incoming 
key res value is: test! 
    ✓ gives a json object with res: test! 


    1 passing (35ms) 

しかし、私はこれと同じコマンドを実行するように設定ジェンキンスを持っている場合:

01:44:46 + ./node_modules/mocha/bin/mocha 
01:44:46 
01:44:46 /var/lib/jenkins/workspace/Rekindle2_Node/server/routes/test/getTest.js:4 
01:44:46 const getTest = (req, res) => { 
01:44:46       ^
01:44:46 SyntaxError: Unexpected token > 
etc 

package.jsonには必要なものがすべて含まれています。私は、git clone、npm install、およびec2からのmochaを実行すると、インスタンス)。私が知っているのは、ジェンキンは、実行中のサーバーから環境変数を消費することで時々問題を抱えることがあるということです。誰かが私が直面している問題が何であるか知っていますか?私はノードをアンインストールして再インストールしようとしましたが、ec2はそうではありませんが、Jenkinsはノードの古いインストールを検討している可能性があります。これを伝える方法はありますか?特定のビルドの環境変数を調べるにはどうすればよいですか?

答えて

1

Jenkinsがnode.jsの古いバージョンを使用しているようですこれを確認するために、Jenkinsジョブにログを追加します。 node --versionは、Jenkinsが認識しているnode.jsのバージョンを出力します。また、環境に興味がある場合は、Jenkins Web UIで特定のビルドから環境を表示するビューがあります。または、envをJenkinsのビルドスクリプトに追加して、現在の環境変数を出力することもできます。 node.jsバージョンの問題が判明した場合は、nodejsバージョンを管理するためにプラグインを使用します。node.js Jenkins plugin

+0

ローカルで実行したとき、node --versionはv5.0.0を期待通りに返しました。私がゲンキンズで走ったとき、私は 02:13:40 +ノード--version 02:13:40 v0.10.42 だから、あなたが正しいように見える!プラグインを調べてみよう。ありがとう! –

+0

それはすべてのようだった!ノードのバージョンプラグインはすべてを修正しました。ありがとう! –

+0

それを聞いてうれしい! – tphummel

関連する問題