2010-08-18 30 views
8

Nếu có ai đó có thể giúp tôi hiểu tại sao git repo này không nhân bản thì điều đó thật tuyệt vời.Hudson git error ssh

Tôi runt lệnh tương tự từ thiết bị đầu cuối hoạt động. Tôi hy vọng sẽ tìm ra nơi tôi có thể đặt mật khẩu để máy chủ có thể xác thực kết nối.

Xin cảm ơn và cảm ơn.

ERROR: Error cloning remote repo 'origin' : Could not clone ssh://[email protected]/usr/local/repository/kdm/git/TestCaseGenerator.git 
ERROR: Cause: Error performing /usr/bin/git clone -o origin ssh://[email protected]/usr/local/repository/kdm/git/TestCaseGenerator.git /var/lib/hudson/jobs/KDM_Test_Case_Generator/workspace 
Command returned status code 128: Initialized empty Git repository in /var/lib/hudson/jobs/KDM_Test_Case_Generator/workspace/.git/ 
No protocol specified 

(ssh-askpass:12523): Gtk-WARNING **: cannot open display: :0.0 
Host key verification failed. 
fatal: The remote end hung up unexpectedly 

Trying next repository 
ERROR: Could not clone repository 
FATAL: Could not clone 
hudson.plugins.git.GitException: Could not clone 
    at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:719) 
    at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:658) 
    at hudson.FilePath.act(FilePath.java:753) 
    at hudson.FilePath.act(FilePath.java:735) 
    at hudson.plugins.git.GitSCM.checkout(GitSCM.java:658) 
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1046) 
    at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:479) 
    at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:411) 
    at hudson.model.Run.run(Run.java:1248) 
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46) 
    at hudson.model.ResourceController.execute(ResourceController.java:88) 
    at hudson.model.Executor.run(Executor.java:129) 
+0

bạn có chạy nó như hudson từ thiết bị đầu cuối hoặc như chính mình không? –

+0

Hudson không thể thiết lập kết nối ssh vì khóa của bạn được bảo vệ bằng mật khẩu. – Rudi

Trả lời

8

Bạn nên thiết lập một mối quan hệ tin cậy giữa ssh repo của bạn và máy chủ git.

Bạn chỉ cần thực hiện việc này một lần.

Nói tóm lại nó đi qs sau:

Đăng nhập như là người dùng chạy hudson

ssh-keygen 

sử dụng một mật khẩu trống

Điều này tạo ra 2 file trong .ssh: id_dsa và id_dsa.pub .

cat .ssh/id_dsa.pub 

Bây giờ hãy sao chép ngữ pháp đại diện cho khóa công khai.

ssh repo-server 

Xác nhận bạn muốn thêm khóa máy chủ vào known_host. Đăng nhập bằng tài khoản truy cập repo.

cat - >>.ssh/authorized_keys 

(đôi kiểm tra xem bạn có 2> 's hoặc có nguy cơ cơn thịnh nộ của các đồng nghiệp của bạn) Sau đó dán vô nghia bạn chỉ cần sao chép.

Đăng xuất và xác minh bạn hiện có thể ssh mà không cần phải cung cấp mật khẩu.

Điều này phù hợp với các máy chủ dựa trên Unix. Đối với github, gitosis, windows quá trình tương tự, nhưng tất nhiên là khác nhau.

Hudson giờ đây có thể kết nối.

+0

Cảm ơn bạn! Tôi đã đấu tranh một thời gian không hiểu tại sao khóa SSH của tôi không hoạt động, cho đến khi tôi đọc hướng dẫn của bạn, cụ thể là dòng "Đăng nhập với tư cách người dùng đang chạy hundson" :-) – machineghost

0

url nên là:

ssh://[email protected]:/usr/local/repository/kdm/git/TestCaseGenerator.git 

?

(Thiếu ruột sau khi ".net")

+0

Nếu bạn cung cấp giao thức nào để sử dụng "rõ ràng", ':' là không cần thiết. –

0

Bạn cần phải kiểm tra như sau:

  1. Bạn đang sử dụng các phím ssh của người dùng chạy hudson daemon. Ví dụ: nếu user = hudson, bạn nên đăng nhập dưới dạng hudson và tạo các khóa ssh
  2. Bạn đã tải khóa công khai của mình vào máy chủ (github, assembla) từ đúng .ssh/id_rsa.pub tệp tức làcho người sử dụng cùng một người chạy hudson daemon
  3. Bạn đã thêm RSA dấu vân tay của máy chủ của bạn để .ssh/known_hosts tập tin của bạn
0

Nếu tất cả nên được quyền nhưng nó strangly không làm việc, đảm bảo dự án của bạn được phục hồi xây dựng dựa trên các nô lệ bạn đã định cấu hình.

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