2013-05-15 30 views
6

Tôi muốn thực hiện cuộc gọi API tới Jenkins để tìm nạp danh sách các bản dựng cùng với thông số và trạng thái của chúng. Chúng tôi hiện chuyển một git commit sha1 làm tham số để xây dựng một nhánh cụ thể. Bất kỳ ý tưởng làm thế nào tôi có thể nhận được thông tin này một cách dễ dàng?Jenkins lấy danh sách các thông số xây dựng và tham số

Trả lời

6

Jenkins cung cấp api tuyệt vời.

Đây là tài liệu tại địa chỉ:

http://$HOST/jenkins/api 

Bạn có thể muốn một cái gì đó như:

http://$HOST/jenkins/api/xml?xpath=/hudson/job[1]/build[1]/action[1]/parameter&depth=2 
+1

Dường như việc sử dụng truy vấn tương tự như bạn đã cho thấy không thực sự tạo ra bất kỳ kết quả nào sau/hudson/job [1]. – Joe

+1

Cảm ơn michas. Bạn đã dẫn tôi đến câu trả lời đúng! Đây là đầu ra tôi đang tìm kiếm. Tôi thấy bạn phải chỉ định số bản dựng chính xác. '' '/ job/Clinical.Search/15/api/xml''' – Joe

+1

Bạn có thể sử dụng'/job/Clinical.Search/lastSuccessfulBuild/api/xml' để có được thành công cuối cùng. – gaige

2

Theo như tôi biết, điều này không thể được thực hiện trong một cuộc gọi API duy nhất.

Truy vấn đầu tiên tất cả các bản dựng.

/job/<jobname>/api/xml 
/job/<jobname>/api/json 

Điều này sẽ trả về sản lượng xml hoặc json tương ứng.

Khi bạn nhận được số bản dựng, bạn có thể truy vấn từng số bản dựng.

/job/<jobname>/<jobnum>/api/xml?xpath=/freeStyleBuild/action/lastBuiltRevision/SHA 
/job/<jobname>/<jobnum>/api/json?tree=actions[lastBuiltRevision[SHA]] 

Sau đó, bạn có thể kiểm tra SHA trong kết quả đối với SHA của bạn.

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