Tôi có yêu cầu từ nhóm phát triển để thiết lập hệ thống xây dựng để mỗi bản dựng sẽ có số bản dựng duy nhất cho tất cả các nhánh.Làm cách nào để thuyết phục jenkins chia sẻ số bản dựng cho một số công việc?
Bản dựng được tạo bởi jenkins sử dụng công việc cho từng chi nhánh.
Có một plugin Jenkins rằng có thể thiết lập các buildnumber tiếp theo cho một công việc nhưng đây là kinda vô dụng trong ít nhất hai lý do:
- nó sẽ thiết lập số lượng xây dựng cho một công việc duy nhất và bạn không thể biết tất cả làm thế nào để thiết lập nó cho tất cả các chi nhánh vì họ có thể được loại bỏ hoặc thêm vào bất cứ lúc nào
- nó không thiết lập nó cho xây dựng hiện hành
làm thế nào để chúng ta có được những con số xây dựng: chúng tôi làm thực hiện cuộc gọi HTTP với tên chi nhánh và số sửa đổi trong git/mercurial. Dựa trên điều này, máy chủ tập trung sẽ cho chúng ta một số xây dựng như một phản ứng. Nếu bạn gọi nó hai lần với cùng các tham số, bạn sẽ nhận được cùng một phản hồi (hành vi mong muốn).
Bây giờ, làm thế nào chúng ta có thể tinh chỉnh jenkins để sử dụng cùng một số xây dựng như chúng ta? Rõ ràng tôi có thể sử dụng số xây dựng được trả lại từ tập lệnh, nhưng số công việc sẽ khác và tôi nghi ngờ jenkins sẽ biết rằng tôi đã chạm vào biến BUILD_NUMBER bên trong tập lệnh của mình.
Chủ yếu, những gì tôi cần là một số loại kịch bản lệnh bắt đầu công việc mà tôi có thể chạy, kịch bản sẽ chạy trước khi số bản dựng được gán cho công việc.
Cảm ơn rất nhiều! Đã làm cho tôi. Trong trường hợp của tôi, tôi đang sử dụng plugin thư mục CloudBees, điều đó đã giúp tôi giải quyết vấn đề tìm kiếm theo mẫu. Thay vào đó tôi đã sử dụng phương thức getItems() và loại bỏ công việc hiện tại bằng cách sử dụng "currentJob" :-). –