2012-02-09 36 views
8

Tôi có một master (linux) và một slave windows được thiết lập, và muốn xây dựng một công việc duy nhất trên cả master và slave. Tùy chọn "Hạn chế nơi dự án này có thể được chạy" cho phép chúng tôi liên kết công việc với một nô lệ cụ thể nhưng có thể ràng buộc một công việc với chủ cũng như nô lệ không? Làm thế nào một trong những cấu hình "Build Step" kể từ khi chạy nó trên Windows đòi hỏi một xây dựng với Windows lệnh batch và Linux yêu cầu lệnh shell. Ví dụ ngay cả khi công việc cố gắng chạy trên master và slave, nó sẽ thất bại tại một thời điểm vì cả hai tùy chọn xây dựng (với lệnh batch và shell) sẽ được thực hiện?Jenkins - Chạy một công việc duy nhất trong master cũng như slave

Trả lời

12

Vâng, trong Jenkins bạn có thể tạo các nhóm máy (chủ hay nô lệ), để làm điều này:

  • nhấp chuột vào tên máy trên trang đầu tiên của Jenkins
  • nhập trong cấu hình nút menu
  • sau đó, bạn có thể nhập một số nhãn trong trường Nhãn. Hãy thêm một nhãn mutli_platform ví dụ
  • quay trở lại trang đầu tiên của Jenkins
  • làm điều đó cho mỗi máy mà bạn cần để chạy các công việc
  • quay trở lại trang đầu tiên của Jenkins
  • nhấp chuột trên công việc bạn muốn chạy trên nhiều nút
  • chuyển đến menu cấu hình
  • kiểm tra Restrict where this project can be run và đặt mutli_platform vào trong đó.

Sau đó, bản dựng của bạn sẽ có thể chạy trên nhãn mutli_platform.

Đối với phần thứ hai, tập lệnh đa nền tảng, bạn có thể sử dụng kiến ​​xây dựng hoặc xây dựng python (với python plugin).

CHỈNH SỬA: Nếu bạn cần xây dựng trên nền tảng 2 (hoặc nhiều hơn), bạn nên sử dụng Matrix Job. Bạn sẽ có thể tạo một công việc và buộc nó chạy trên mọi nô lệ bạn cần.

+0

Điều này có khiến công việc xây dựng trên chủ hoặc nô lệ không? Tôi đang tìm kiếm thứ gì đó sẽ xây dựng cùng một công việc cho chủ nhân và nô lệ. Một cách sẽ là tạo ra một công việc khác và tạo hai công việc xây dựng trên hai máy khác nhau, nhưng tôi không muốn sao chép một công việc và muốn sử dụng cùng một công việc trên master và slave. – Pythomania

+1

@Pythomania: Tôi không hiểu bạn muốn chạy trên nền tảng 2 trên mỗi bản dựng, tôi đã chỉnh sửa câu trả lời của tôi với công việc Matrix mà dường như là những gì bạn cần. –

+0

Cảm ơn bạn Cédric Julien, Công việc ma trận là những gì tôi cần :) – Pythomania

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