2014-12-26 27 views
10

Tôi đang thiết lập một máy chủ ubuntu có jenkins cho CI.Không xây dựng của Jenkin trên npm cài đặt

Khi tôi cố gắng chạy một xây dựng tôi nhận được thất bại

Câu hỏi: Làm thế nào tôi có thể làm cho npm install làm việc từ công việc Jenkins của tôi?

build 1:

[morningharwood] $ /bin/sh -xe /tmp/hudson8925730298288495807.sh 
+ pwd 
/var/lib/jenkins/workspace/morningharwood 
+ ls 
bower.json 
client 
e2e 
Gruntfile.js 
karma.conf.js 
package.json 
protractor.conf.js 
server 
+ npm install 
/tmp/hudson8925730298288495807.sh: 5: /tmp/hudson8925730298288495807.sh: npm: not found 
Build step 'Execute shell' marked build as failure 
Finished: FAILURE 

Jenkin xây dựng enter image description here

UPDATE:

~$ pwd 
/home/ubuntu 

ls -a 


. .bash_history .bashrc .config .gem .gnupg .node-gyp .nvm  .rbenv .ssh .viminfo 
.. .bash_logout .cache .dotfiles .gemrc .local .npm  .profile .rvm .vim 

Bây giờ tôi thấy .npm

+ /home/ubuntu/.npm/npm install 
/tmp/hudson1456103398115324880.sh: 5: /tmp/hudson1456103398115324880.sh: /home/ubuntu/.npm/npm: not found 
Build step 'Execute shell' marked build as failure 
Finished: FAILURE 

Cấu hình Script:

enter image description here

gì xảy ra khi bạn chạy từ thiết bị đầu cuối ssh?

npm WARN engine [email protected]: wanted: {"node":"~0.8 || ~0.10"} (current: {"node":"0.11.14","npm":"2.0.0"}) 
npm ERR! Linux 3.13.0-36-generic 
npm ERR! argv "/home/ubuntu/.nvm/v0.11.14/bin/node" "/home/ubuntu/.nvm/v0.11.14/bin/npm" "install" 
npm ERR! node v0.11.14 
npm ERR! npm v2.0.0 
npm ERR! path /var/lib/jenkins/workspace/morningharwood/node_modules 
npm ERR! code EACCES 
npm ERR! errno -13 

npm ERR! Error: EACCES, mkdir '/var/lib/jenkins/workspace/morningharwood/node_modules' 
... 

Vì vậy, tôi đã chown thư mục:

+ pwd 
    /var/lib/jenkins/workspace/morningharwood 
    sudo chown ubuntu /var/lib/jenkins/workspace/morningharwood/ -Rv 
    ... 

Ran NPM cài đặt sau đó NPM cài đặt

Nó đã thành công!

VẤN ĐỀ MỚI: Quá trình xây dựng của tôi hiện không thành công khi cố gắng sao chép kho từ github qua jenkins.

điều khiển log

Started by user matthew harwood 
Building in workspace /var/lib/jenkins/workspace/morningharwood 
> git rev-parse --is-inside-work-tree # timeout=10 
Fetching changes from the remote Git repository 
> git config remote.origin.url [email protected]:matthewharwood/morningharwood.git # timeout=10 
ERROR: Error fetching remote repo 'origin' 
ERROR: Error fetching remote repo 'origin' 
Finished: FAILURE 

Hiển thị chủ nhân:

ls -la 
drwxr-xr-x 3 jenkins jenkins 4096 Dec 26 20:31 . 
drwxr-xr-x 13 jenkins jenkins 4096 Dec 26 08:23 .. 
drwxr-xr-x 7 ubuntu jenkins 4096 Dec 26 20:59 morningharwood 

Trả lời

10

Có một số vấn đề ở đây.

Dường như bạn đang sử dụng node 0,11. Tại sao? Bạn có cần một tính năng từ nhánh không ổn định đó không?

Nếu không, tôi sẽ khuyên bạn nên sử dụng nodesource đóng gói node module, như mô tả ở đây: https://github.com/nodesource/distributions#usage-instructions

curl -sL https://deb.nodesource.com/setup | sudo bash - sudo apt-get install -y nodejs

này sẽ giúp bạn có một cài đặt tốt của nodenpm trong đường dẫn toàn cầu, có thể nhìn thấy cả hai người dùng ubuntu và người dùng jenkins của bạn.

Cuối cùng, /home/ubuntu/.npm/npm không phải là tệp thực thi, nhưng là phiên bản được lưu trong bộ nhớ cache của gói npm; /home/ubuntu/.npm là bộ nhớ cache tải xuống cho mỗi người dùng.

+1

Xin cảm ơn người đàn ông rất nhiều vì đã giúp đỡ! Tôi đã đốt cháy nó và bắt đầu lại. Tôi đang tái tạo công việc ngay bây giờ. Sẽ sớm cập nhật! –

+0

Đã làm việc thật tuyệt vời! cám ơn rất nhiều! hey tôi có cùng một vấn đề nhưng với ruby ​​bây giờ lol tôi là khủng khiếp. http://stackoverflow.com/questions/27670407/set-up-ruby-globally-for-all-users-on-ubuntu –

+0

"Có vẻ như bạn đang sử dụng nút 0.11. Tại sao?" thật là một câu hỏi. làm thế nào ai đó có một lý do cụ thể để sử dụng 0,11. bạn có thực sự mong đợi một câu trả lời cho điều đó không? – eyurdakul

2

như nó nói

/tmp/hudson8925730298288495807.sh: 5: /tmp/hudson8925730298288495807.sh: npm: not found 

npm không có sẵn trong đường dẫn của bạn, vì vậy thay đổi công việc của bạn tới SP ecify đường dẫn đầy đủ đến npm

ví dụ

/usr/local/bin/npm install 

hoặc bất cứ nơi nào npm nằm

+0

Tôi đã cập nhật câu trả lời của mình. Tôi nghĩ rằng tôi đã nằm đúng thư mục npm nhưng tôi vẫn nhận được lỗi. bạn có thể vui lòng xem lại không? –

+0

bạn có thể đăng cấu hình cập nhật và điều gì sẽ xảy ra khi bạn thực thi cùng một lệnh từ cùng một người dùng với jenkins đang chạy –

+0

Tôi đã cập nhật câu trả lời chưa. Cũng đi xuống một con đường khác> _

Các vấn đề liên quan