5

Cloudbees で Jenkins をビルドして実行しようとしています。NodeJ を正常にインストールし、ソースを BitBucket リポジトリから取得しました。展開する前に、JS ファイルと CSS ファイルを縮小して連結するために、面倒なタスクを実行しようとしています。ただし、正常にインストールされていても、grunt プログラムを実行できません。以下は私のビルドスクリプトです:

curl -s -o use-node https://repository-cloudbees.forge.cloudbees.com/distributions/ci-addons/node/use-node
NODE_VERSION=0.8.0 \
 source ./use-node
npm install
npm install grunt
grunt

-g オプションを使用して、または使用せずに grunt をインストールしようとしましたが、成功しませんでした。私のビルドの grunt 部分のコンソール出力は次のとおりです。

+ npm install grunt
...
npm http GET https://registry.npmjs.org/grunt
npm http 200 https://registry.npmjs.org/grunt
...
grunt@0.4.0 node_modules/grunt
├── dateformat@1.0.2-1.2.3
├── colors@0.6.0-1
├── hooker@0.2.3
├── eventemitter2@0.4.11
├── which@1.0.5
├── iconv-lite@0.2.7
├── coffee-script@1.3.3
├── lodash@0.9.2
├── nopt@1.0.10 (abbrev@1.0.4)
├── rimraf@2.0.3 (graceful-fs@1.1.14)
├── minimatch@0.2.11 (sigmund@1.0.0, lru-cache@2.2.2)
├── glob@3.1.21 (graceful-fs@1.2.0, inherits@1.0.0)
├── findup-sync@0.1.2 (lodash@1.0.1)
└── js-yaml@1.0.3 (argparse@0.1.12)
+ grunt
/tmp/hudson3382014549646667419.sh: line 8: grunt: command not found
Build step 'Execute shell' marked build as failure
Finished: FAILURE

これを機能させる方法についてのアイデアはありますか? これはCloudbeesでも可能ですか?

4

2 に答える 2

5

Grunt は、煩わしいことに、別の cli モジュールに分割されました。また、厄介なことに、その cli モジュールには grunt 自体が含まれていません。

これを機能させるには:

curl -s -o use-node https://repository-cloudbees.forge.cloudbees.com/distributions/ci-addons/node/use-node
NODE_VERSION=0.8.0 \
 source ./use-node
npm install
npm install grunt
npm install grunt-cli
export PATH=$PATH:node_modules/grunt-cli/bin/
grunt

この変更を行っている人々が賢明であるように機能する方法を変更した場合、将来変更される可能性があります.

ドキュメントはこちら: http://gruntjs.com/getting-started

于 2013-03-12T02:04:18.940 に答える
0

jenkins ジョブからすべてをセットアップできます。ssh/コマンドラインは必要ありません。

Jenkins プラグインをインストールする

  • Git プラグイン - git 用
  • Git クライアント プラグイン - git 用
  • Git パラメータ プラグイン - git タグ用
  • GitHub API プラグイン - github 用
  • NodeJS プラグイン -一般的な JavaScript ツール NodeJS と npm の統合

Git / Ant / Maven / NodeJS のインストール

  • SERVER/jenkins/configure に移動
ギット
  • Git -> Git インストール -> Git の追加 -> JGit
  • Git プラグイン -> グローバル構成 user.name 値 = "Anthony Mckale"、グローバル構成 user.email 値 = "anthony.mckale@bskyb.com"
NodeJS
  • NodeJS-> NodeJS installations -> Add NodeJS -> Name = "NodeJS 0.11.10"、"Install automatically" にチェックを入れ、"Install from nodejs.org" を選択し、グローバルにインストールされたパッケージに "grunt-cli" を追加します。

多田

うまくいけば、git/nodejs と grunt が利用できるようになります

grunt/node タスクを jenkins ジョブに追加する方法の詳細については、プラグイン wiki を参照してください -> https://wiki.jenkins-ci.org/display/JENKINS/NodeJS+Plugin

それは本当に簡単です:)

ssh ログインは不要、jenkins 管理者権限のみ

于 2014-02-14T16:07:50.123 に答える