jenkins pipeline: ajan ve düğüm?


134

Jenkins ardışık düzenindeki bir aracı ile düğüm arasındaki fark nedir ?

Bu tanımları buldum:

  • düğüm : Bir İşlem Hattının gerçekleştirdiği çoğu iş, bir veya daha fazla bildirilmiş düğüm adımı bağlamında yapılır.
  • ajan : Ajan direktifi, ajan direktifinin nereye yerleştirildiğine bağlı olarak tüm Pipeline'ın veya belirli bir aşamanın Jenkins ortamında nerede yürütüleceğini belirtir.

Yani her ikisi de ardışık düzen adımlarını yürütmek için kullanılır. Ama hangisini ne zaman kullanmalı?

Yanıtlar:


146

Basit cevabı, Ajan içindir bildirim boru hatları ve düğüm içindir Komut uygulanan boru hatları.

Bildirime dayalı ardışık düzenlerde, ajan yönergesi, işin / görevin hangi aracı / bağımlı birim üzerinde yürütüleceğini belirlemek için kullanılır. Bu yönerge yalnızca görevin nerede yürütüleceğini, hangi aracı, bağımlı, etiket veya docker görüntüsünü belirlemenize izin verir.

Öte yandan, komut dosyası oluşturulmuş ardışık düzenlerde düğüm adımı, belirli bir aracı, etiket, bağımlı birim üzerinde bir komut dosyası / adım çalıştırmak için kullanılabilir. Düğüm aşaması, isteğe bağlı olarak madde ya da etiket adı ve bu düğüm üzerinde yürütülecek olan kod ile daha sonra bir kapak alır.

bildirime dayalı ve komut dosyası oluşturulmuş ardışık düzenler (yoruma göre düzenleyin):

  • bildirim temelli ardışık düzenler, ardışık düzen DSL'in yeni bir uzantısıdır (temelde yalnızca bir adımlı bir ardışık düzen komut dosyasıdır, bağımsız değişkenler içeren bir ardışık düzen adımıdır (yönergeler olarak adlandırılır), bu yönergeler belirli bir sözdizimini izlemelidir. Bu yeni biçimin amacı şudur: daha katıdır ve bu nedenle boru hatlarında yeni olanlar için daha kolay olmalıdır, grafiksel düzenlemeye ve çok daha fazlasına izin verin.
  • komut dosyası oluşturulmuş ardışık düzenler, gelişmiş gereksinimler için yedektir.

5
Evet ve hayır bildirimsel ardışık düzenler, ardışık düzen DSL'in yeni bir uzantısıdır (temelde yalnızca bir adımlı bir ardışık düzen komut dosyasıdır, bağımsız değişkenlerle (yönergeler adı verilir) bir ardışık düzen adımıdır, bu yönergeler belirli bir sözdizimini izlemelidir. daha katıdır ve bu nedenle boru hatlarında yeni olanlar için daha kolay olmalıdır, grafiksel düzenlemeye izin verir ve çok daha fazlası, yukarıdaki bağlantınızdaki özellik listesine bakın. Bu nedenle, basit bir görev için bunun önerilen yaklaşım olduğunu söyleyebilirim, ancak daha gelişmiş vakalar, senaryo yazılan geri dönüş.
Jon S

6
Şimdi orada ile 3 isimler node, agentve slave!
mkobit

2
@mkobit Evet, isimler oldukça kafa karıştırıcı, bir yerde okudum (şu anda referansı bulamıyorum, ya Jenkins blogunda ya da Jenkins JIRA'da), çünkü ajanı slave yerine yeniden adlandırmaya ve kullanmaya çalışıyorlar çünkü "olumsuz" bir kelime olarak değil. Sonra, bildirimsel boru hatları bunu benimsedi ve aracı olarak adlandırdı. Bence düğüm, komut dosyalı ardışık düzenlerden geliyor.
Jon S

1
@DenCowboy Aha, evet, en iyi dördüncü uygulamanın sadece betikli ardışık düzen için geçerli olduğunu söyleyebilirim çünkü bildirimsel her zaman bir düğüm ayırır, aracı yönergesi yalnızca hangi düğümün tahsis edileceğini kısıtlar.
Jon S

1
@DenCowboy Hayır, aynı şeyi kullanmalı, sadece başlangıçta hangi aracı / slave'in kullanılacağını belirlemek için ajan direktifini kullanır.
Jon S
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.