2016-03-24 19 views
5

Tôi đang thử phiên bản địa phương của Jenkins. Mọi thứ đều ở phiên bản mới nhất có thể. Tôi đã cài đặt Trình tạo yêu cầu kéo GitHub, nhưng tôi không thể báo cáo trạng thái xây dựng lại cho GitHub và cập nhật PR với THÀNH CÔNG, KHÔNG L FAI hoặc L ERI.Không thể cập nhật GitHub PR bằng Trình tạo yêu cầu kéo Jenkins GitHub

tôi đã thực hiện các bước sau:

  • Quản lý Jenkins> Configure System> Github Kéo Yêu cầu Builder: Tôi đã thêm Credentials của tôi và thực hiện tất cả các test thành công:
    • Kiểm tra kết nối cơ bản để GitHub -> hoạt động
    • Kiểm tra quyền đối với một kho lưu trữ -> hoạt động
    • Thử thêm nhận xét vào yêu cầu kéo -> hoạt động
    • Kiểm tra cập nhật cam kết tình trạng -> làm việc

sau đó tôi đã tạo ra một công việc mới với các cài đặt sau:

Jenkins Screenshot

Tuy nhiên, tôi không thể nhận được Jenkins để cập nhật các GitHub PR khi làm một công trình nào đó. Việc xây dựng được báo cáo chính xác là thành công hay thất bại trong Jenkins, nhưng không có gì làm cho nó trở lại GitHub.

Lưu ý rằng tôi đang xây dựng theo cách thủ công và không thông qua "Sử dụng móc github để kích hoạt xây dựng". Tôi cho rằng điều này không tạo nên sự khác biệt?

+1

Theo như tôi hiểu, plugin này sẽ chỉ có hiệu lực khi trình kích hoạt thực sự * được sử dụng *. Và tôi nghĩ rằng điều này là làm việc như dự định, bạn không muốn hướng dẫn sử dụng của bạn chạy tất cả được đẩy vào github của bạn, nó chỉ nên nhận được thêm khi xây dựng là để đáp ứng với một yêu cầu kéo. Bạn không thể kiểm tra nó bằng cách đưa ra yêu cầu kéo? [Ở đây] (https://github.com/ruslo/polly/wiki/Jenkins-%28build-bot,-PR%29) là một số cách tôi thấy thú vị. Có lẽ nó hữu ích cho bạn. –

+0

@DominikGebhart bạn chính xác 100%! Nếu bạn muốn thêm câu trả lời này làm câu trả lời, tôi rất sẵn lòng cung cấp cho bạn các điểm – JonoB

+0

Cảm ơn bạn, tôi đã thêm nó. –

Trả lời

3

Plugin này sẽ chỉ có hiệu lực khi trình kích hoạt thực sự được sử dụng. Và tôi nghĩ rằng điều này là làm việc như dự định, bạn không muốn chạy thủ công của bạn tất cả được đẩy vào github của bạn, nó chỉ nên được thêm vào khi xây dựng là để đáp ứng với một yêu cầu kéo.

Bạn sẽ có thể kiểm tra bằng cách tự mình thực hiện yêu cầu kéo. Ngoài ra, here là một số cách tôi thấy thú vị.

0

Bạn nên xem xét kiểm tra ra các hướng dẫn được cung cấp tại chính thức trang https://wiki.jenkins-ci.org/display/JENKINS/GitHub+pull+request+builder+plugin trong đoạn "Tạo công việc:"

Điểm quan trọng là để thiết lập đúng "refspec" và "chi nhánh specifier" lĩnh vực.

Under Advanced, set "refspec" to 
+refs/pull/*:refs/remotes/origin/pr/* 
In "Branch Specifier", enter 
${sha1} 
or if you want to use the actual commit in the pull request, use 
${ghprbActualCommit} 

Plugin dựa trên một số thông số cho công việc mà bạn [có thể] không cung cấp khi bạn kích hoạt thủ công.

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