đường ống jenkins: đại lý vs nút?


134

Sự khác biệt giữa một tác nhân và một nút trong đường ống jenkins là gì?

Tôi đã tìm thấy những định nghĩa:

  • nút : Hầu hết các công việc mà Đường ống thực hiện được thực hiện trong ngữ cảnh của một hoặc nhiều bước nút được khai báo.
  • tác nhân : Chỉ thị tác nhân chỉ định nơi toàn bộ Đường ống, hoặc một giai đoạn cụ thể, sẽ thực thi trong môi trường Jenkins tùy thuộc vào nơi chỉ thị tác nhân được đặt.

Vì vậy, cả hai được sử dụng để thực hiện các bước đường ống. Nhưng khi nào nên dùng cái nào?

Câu trả lời:


145

Câu trả lời đơn giản là, Đại lý dành cho đường ống khai báonút dành cho đường ống dẫn kịch bản .

Trong các đường ống khai báo, chỉ thị tác nhân được sử dụng để chỉ định tác nhân / nô lệ nào mà công việc / tác vụ sẽ được thực hiện trên đó. Lệnh này chỉ cho phép bạn chỉ định nơi thực hiện tác vụ, tác nhân, nô lệ, nhãn hoặc hình ảnh docker.

Mặt khác, trong các đường ống theo kịch bản, bước nút có thể được sử dụng để thực thi tập lệnh / bước trên một tác nhân, nhãn, nô lệ cụ thể. Bước nút tùy ý lấy tên tác nhân hoặc nhãn và sau đó đóng với mã sẽ được thực thi trên nút đó.

đường ống khai báo và kịch bản (chỉnh sửa dựa trên nhận xét):

  • đường ống khai báo là một phần mở rộng mới của DSL đường ống (về cơ bản nó là tập lệnh đường ống chỉ có một bước, bước đường ống có đối số (được gọi là chỉ thị), các lệnh này phải tuân theo một cú pháp cụ thể. Điểm của định dạng mới này là nghiêm ngặt hơn và do đó sẽ dễ dàng hơn đối với những người mới sử dụng đường ống, cho phép chỉnh sửa đồ họa và nhiều hơn nữa.
  • đường ống dẫn kịch bản là dự phòng cho các yêu cầu nâng cao.

5
Có và không có đường ống khai báo là phần mở rộng mới của DSL đường ống (về cơ bản nó là tập lệnh đường ống chỉ có một bước, bước đường ống có đối số (được gọi là chỉ thị), các chỉ thị này phải tuân theo một cú pháp cụ thể. rằng nó nghiêm ngặt hơn và do đó sẽ dễ dàng hơn đối với những người mới sử dụng đường ống, cho phép chỉnh sửa đồ họa và hơn thế nữa, xem danh sách tính năng trên liên kết của bạn ở trên. Vì vậy, với nhiệm vụ đơn giản tôi sẽ nói rằng đó là cách tiếp cận được đề xuất, nhưng để nâng cao hơn trường hợp, kịch bản là dự phòng.
Jon S

6
Hiện nay có 3 tên với node, agentslave!
mkobit

2
@mkobit Vâng, những cái tên khá khó hiểu, tôi đã đọc ở đâu đó (không thể tìm thấy tài liệu tham khảo ngay bây giờ, trên blog của Jenkins hoặc trên Jenkins JIRA), rằng họ đang cố gắng đổi tên và sử dụng tác nhân thay vì nô lệ không phải là một từ "tiêu cực". Sau đó, tôi đoán đường ống khai báo đã thông qua đó và gọi nó là đại lý. Tôi nghĩ rằng, nút bắt nguồn từ các đường ống dẫn kịch bản.
Jon S

1
@DenCowboy Aha, vâng, tôi sẽ nói rằng cách thực hành tốt thứ 4 ở đó chỉ áp dụng cho đường ống theo kịch bản vì khai báo luôn phân bổ một nút, chỉ thị tác nhân chỉ giới hạn nút nào được phân bổ.
Jon S

1
@DenCowboy Không nên sử dụng tương tự, nó chỉ sử dụng chỉ thị tác nhân để xác định ban đầu sử dụng tác nhân / nô lệ nào.
Jon S
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.