2013-06-17 47 views
5

Tôi gặp sự cố khi chạy tập lệnh bash dưới dạng công việc trong Jenkins (Thực hiện bước trình bao). Về cơ bản tôi đã thu hẹp kịch bản của mình thành một dòng ngay bây giờ để kiểm tra lý do tại sao Jenkins không chạy nó. Dưới đây là:Jenkins Không có lỗi hoặc tập tin thư mục như vậy. Nhưng tệp tồn tại

waxsim 

Vì vậy, nó chỉ là một dòng. Điều đó sẽ cho tôi kết quả này khi chạy mà không có thông số:

No app-path was specified! 
usage: waxsim [options] app-path 
example: waxsim -s 2.2 /path/to/app.app 
Available options are: 
    -s sdk Version number of sdk to use (-s 3.1) 
    -f family Device to use (-f ipad) 
    -e VAR=value Environment variable to set (-e CFFIXED_HOME=/tmp/iphonehome) 
    -a Available SDKs 
    -v path Output video recording at path 
    -h Prints out this wonderful documentation! 

Jenkins chạy như người dùng jenkins. Khi công việc đang chạy nó không thành công với:

+ waxsim 
/var/folders/gx/t63prwt53w7gr2jjt9k66q9800009c/T/hudson4478539334800834890.sh: 
line 3: waxsim: No such file or directory 
Build step 'Execute shell' marked build as failure 

Khi tôi thực hiện waxsim bằng tay, đăng nhập như một người dùng Jenkins, mọi thứ đều hoạt động tốt. Nó hoạt động cho mọi người dùng trên máy. Nó không chỉ hoạt động khi được thực hiện trong công việc Jenkins. Có ai biết điều gì có thể là vấn đề?

Tôi đã cố chỉ định đường dẫn đầy đủ đến waxsim, là: /usr/bin/waxsim nhưng không có sự khác biệt.

Cảm ơn!

Trả lời

3

Lý do tại sao nó hoạt động khi chạy trong Terminal và nó không chạy khi Jenkins hóa ra là tầm thường.

Trong terminal chạy bash và Jenkins đang sử dụng trình bao. Do đó, việc thêm PATH vào kịch bản lệnh shell của Jenkins đã giải quyết được vấn đề.

+13

Bạn có ý gì khi ** thêm xuất PATH vào ** của Jenkins? –

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