私はJenkins CIで自動テストでAngular 4 SPAを設定しています。 SPAはより大きなMaven管理プロジェクトの一部です。そのため、ビルドもMavenで管理されています。これまでのところ、私はしました:カルマがJenkins CIで動作していない、 'karma-jasmine'モジュールが見つからない
- は=「カルマ-CLI phantomjs-構築済みジャスミン「をインストールするには、グローバルNPMパッケージ」を設定されたバージョン8.6.0
- でnodejs.orgからインストール使用して、ジェンキンスのNodeJSプラグインをインストール-core karma-jasmine karma-phantomjs-launcher karma-junit-reporter karma-coverage "
- ブラウザー= PhantomJS/singleRun = true/reporters = dots、junitでpom.xmlに" maven-karma-plugin "を追加しました
- 有効「Jenkinsジョブ設定でノード& npm bin/folder to PATH」を有効にしました
ビルドプロセスはかなりOK起動するが、最終的に私が手:
[INFO] --- maven-karma-plugin:1.6:start (default) @ webclient ---
[INFO] Executing Karma Test Suite ...
/var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/bin/karma start /var/lib/jenkins/workspace/funnel_build/webclient/karma.conf.js --browsers PhantomJS --reporters dots,junit --single-run
07 10 2017 17:07:52.801:ERROR [config]: Error in config file!
{ Error: Cannot find module 'karma-jasmine'
at Function.Module._resolveFilename (module.js:527:15)
at Function.Module._load (module.js:476:23)
at Module.require (module.js:568:17)
at require (internal/module.js:11:18)
at module.exports (/var/lib/jenkins/workspace/funnel_build/webclient/karma.conf.js:9:7)
at Object.parseConfig (/var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/karma/lib/config.js:410:5)
NPMは、ビルドログの先頭にインストールします。
$ /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/bin/npm install -g karma-cli phantomjs-prebuilt jasmine-core karma-jasmine karma-phantomjs-launcher karma-junit-reporter karma-coverage
/var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/bin/karma -> /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/karma-cli/bin/karma
/var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/bin/phantomjs -> /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/phantomjs-prebuilt/bin/phantomjs
> [email protected] install /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/phantomjs-prebuilt
> node install.js
Considering PhantomJS found at /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/bin/phantomjs
Looks like an `npm install -g`
Could not link global install, skipping...
Download already available at /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2
Verified checksum of previously downloaded file
Extracting tar contents (via spawned process)
Removing /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/phantomjs-prebuilt/lib/phantom
Copying extracted folder /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1507388835905/phantomjs-2.1.1-linux-x86_64 -> /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/phantomjs-prebuilt/lib/phantom
Writing location.js file
Done. Phantomjs binary available at /var/lib/jenkins/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/Node.js_8.6.0/lib/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs
npm WARN [email protected] requires a peer of [email protected]* but none was installed.
npm WARN [email protected] requires a peer of [email protected]>=0.9 but none was installed.
npm WARN [email protected] requires a peer of [email protected]>=0.9 but none was installed.
+ [email protected]
+ [email protected]
+ [email protected]
+ [email protected]
+ [email protected]
+ [email protected]
+ [email protected]
updated 7 packages in 10.553s
(理由パッケージ「カルマ'は現在、リストに載っていません。カルマの代わりにカルマ・クリを使うべきだと私はどこか読んでいます。しかし、 'カルマ'パッケージを追加しても何も変更されません)
「カルマジャスミンのモジュールが見つかりません」というポップアップが表示される理由は何ですか? (2)では、karma-jasmineパッケージがリストに表示されていることがわかります。サーバー上で見つけましたが、NodeJSプラグインで見つけられません。
おかげで、サイモン