2013-08-16 54 views
5

Tôi đang sử dụng tre để thực hiện xây dựng, cũng như triển khai trên máy linux (ubuntu). Tôi cũng có một kế hoạch xây dựng bằng cách sử dụng một tác nhân từ xa trên Windows 7 64-bit.Buộc tre sử dụng tác nhân xây dựng cụ thể để triển khai

Tôi nhận thấy rằng Bamboo muốn thử và sử dụng tác nhân từ xa (windows7) để triển khai xây dựng linux vào các thời điểm. Làm thế nào để ngăn chặn điều này?

Tôi thấy rằng tôi có thể đặt Đại lý trong màn hình Chỉnh sửa kế hoạch triển khai, nhưng điều đó sẽ yêu cầu một tác nhân linux để xây dựng và một tác nhân linux để triển khai. Có thể sử dụng cùng một tác nhân linux để xây dựng và triển khai trong khi đảm bảo rằng triển khai là LUÔN LUÔN bằng cách sử dụng tác nhân linux thay vì bất kỳ tác nhân không phải Linux nào khác không?

Trả lời

6

Điều gần nhất mà chúng tôi đang thực hiện là thêm khả năng được yêu cầu cho các tác nhân cụ thể mà các tác nhân khác không có. Vì vậy, trên các đại lý linux, xác định một khả năng tùy chỉnh cho đại lý đó. Sau đó, trong Yêu cầu cho việc triển khai, hãy bao gồm khả năng tùy chỉnh đó. Điều này sẽ ngăn chặn các đại lý từ xa Windows từ chọn công việc đó.

+1

LÀM THẾ NÀO? Làm thế nào bạn làm điều này "trong Yêu cầu cho việc triển khai, bao gồm khả năng tùy chỉnh", chính xác? Tôi có một số tác nhân có khả năng tùy chỉnh, nhưng không thể tìm cách làm những gì bạn đang nói? – Strelok

+2

Chúng tôi không sử dụng các dự án triển khai thực tế từ Bamboo, chỉ là định nghĩa xây dựng thông thường. Đi đến trang đại lý linux và xác định khả năng "CanBuildLinux" và đặt nó thành true. Sau đó, trên cấu hình xây dựng của bạn -> Job mặc định -> tab Requirements, tạo "CanBuildLinux" bằng true. Bây giờ chỉ có các tác nhân có khả năng đó mới có thể chạy công trình đó. –

+0

Brett Bim * sigh * :) Tôi nghĩ bạn đang sử dụng Dự án triển khai và bằng cách nào đó đã tìm thấy một tùy chọn kỳ diệu mà tôi bỏ qua sau 3 giờ nhấp vào từng liên kết trong giao diện người dùng đó :) Cảm ơn bạn đã phản hồi và khiến tôi thấy thoải mái nó thực sự không thể với các dự án triển khai;) – Strelok

1

Tôi không nghĩ rằng có bất kỳ chức năng ứng dụng nào để thực hiện những gì bạn đang cố gắng làm, ngoài việc cống hiến (các) tác nhân để chỉ có sẵn để xử lý các dự án triển khai được chỉ định.

Tuy nhiên, một cách giải quyết có vẻ như hoàn thành cùng một mục tiêu là bao gồm một bước giả trong nhiệm vụ của bạn mà không làm gì ngoài việc làm cho Tre gửi nó đến một nhóm đại lý nhất định.

Ví dụ: tôi có vấn đề ngược lại nơi tôi cần triển khai của mình để chạy trên hộp Windows và không phải hộp Linux. Tôi bao gồm một nhiệm vụ MSBuild với /? cho tên giải pháp, làm cho Bamboo gửi triển khai đến chỉ các máy chủ Windows, nhưng tác vụ thực sự không làm gì ngoài việc in các tùy chọn lệnh MSBuild trong nhật ký.

Tôi chắc chắn bạn có thể tìm thấy điều gì đó tương tự cho Linux. Ngoài ra, tôi nghĩ bạn có thể chỉ định tệp thực thi tùy chỉnh bằng cách sử dụng loại nhiệm vụ Lệnh. Nếu bạn xác định lệnh đó với một đường dẫn và đảm bảo rằng nó tồn tại trên các máy bạn muốn nhắm mục tiêu, bạn có thể đạt được kết quả mong muốn. Thực thi thực tế chỉ có thể là một tập lệnh không làm gì cả.