İş Akışları (Workflows)

sürüm 2.19

Semaphore şu anda her görev şablonunu bağımsız bir birim olarak ele almaktadır — birden fazla şablonu çok adımlı bir yürütme işlem hattında birbirine bağlamanın yerleşik bir yolu yoktur. Bu özellik, İş Akışlarını (Workflows) sunar — koşullu dallanma, adımlar arasında değişken aktarımı ve isteğe bağlı insan onayı kapıları ile yürütülen görev şablonlarının yönlendirilmiş döngüsüz grafikleridir (DAG). Tasarım AWX Workflow Job Templates, Rundeck iş akışları ve Jenkins/GitLab CI işlem hattı kavramlarından esinlenmiştir.

Pro

  • İş akışı şablonları — bir proje içinde çok adımlı otomasyon işlem hatları sağlayan, koşullarla (on_success, on_failure, always) yönlendirilmiş kenarlarla bağlanan görev şablonu düğümlerinin DAG’ını tanımlayan yeni bir üst düzey varlık. (#3182, #2334, #1383, #836)
  • İş akışı yürütme motoru — kenar koşullarını gözeterek ve bağımsız dalları paralel çalıştırarak iş akışı düğümlerini topolojik sırada yürütme, birden çok üst öğeye sahip düğümler için TÜMÜ-yakınsama desteği. (#2281, #3088)
  • İş akışı çalıştırma panosu — düğüm başına durum (beklemede, çalışıyor, başarılı, başarısız, atlandı), tıklanabilir düğüm logları ve genel zamanlama ile DAG grafiğini gösteren birleşik bir iş akışı yürütme görünümü.
  • Düğümler arasında değişken aktarımı — görev şablonlarının, alt düğümlere ekstra değişkenler olarak otomatik enjekte edilen çıktı değişkenlerini yaymasına izin verme. (#3182)
  • İş akışı zamanlama ve API tetikleyicileri — iş akışları için cron zamanlama, API ile tetiklenen çalıştırmalar ve webhook tetikleyicileri desteği. (#3088)
  • Görsel iş akışı düzenleyici — gerçek zamanlı DAG doğrulaması, düğüm konumlandırma ve kenarlarda koşul seçicileri ile kullanıcı arayüzünde iş akışları tasarlamak için sürükle-bırak grafiksel düzenleyici.
  • Düğüm başına geçersiz kılmalar — tek bir iş akışı içinde aynı şablonun farklı ortamlarda yeniden kullanılmasını sağlamak için şablonun envanterini, kimlik bilgilerini veya değişkenlerini düğüm düzeyinde geçersiz kılma.
  • Onay kapıları — yapılandırılabilir zaman aşımları, onaylayıcılara bildirim ve arayüzden veya API’den onayla/reddet eylemleriyle insan onayını beklemek için iş akışı yürütmesini belirlenen noktalarda duraklatma.

Enterprise

  • İş akışı RBAC — rol tabanlı onay kapısı ataması ve denetim loglaması ile iş akışları oluşturma, düzenleme, yürütme ve onaylama için ayrıntılı izinler.
  • Projeler arası iş akışları — bir iş akışında diğer projelerdeki görev şablonlarına başvurarak altyapı, uygulama ve izleme projelerini kapsayan organizasyon genelinde otomasyon işlem hatları sağlama.
  • İş akışı sürüm oluşturma ve geri alma — diff’ler ile iş akışı tanımlarının sürüm geçmişini tutma, önceki sürümleri geri yükleme ve her çalıştırma için hangi sürümün kullanıldığını kaydetme.

LDAP ve OpenID Grup Eşleme

sürüm 2.20

Semaphore kimlik doğrulama için LDAP ve OpenID Connect’i (OIDC) destekler, ancak kimlik sağlayıcı grup üyeliklerine dayalı otomatik rol veya proje ataması henüz yoktur. Bu özellik, OIDC ve LDAP gruplarını doğrudan Semaphore projelerine ve rollerine eşleyerek kullanıcı yönetimini otomatikleştirir.

Community

  • Talep (claim) ile OIDC girişini kısıtlama — yalnızca belirli talep değerlerine (örn. gerekli grup üyeliği veya e-posta etki alanı) sahip kullanıcıların oturum açmasına izin verme. (#2626, #2938)
  • SSO otomatik giriş — giriş ekranını atlayarak doğrudan OIDC/SSO sağlayıcısına yönlendirme yapma. (#2548, #2899)
  • OIDC PKCE desteği — OIDC yetkilendirme kodu akışına Proof Key for Code Exchange desteği ekleme. (#3072)
  • Ortam değişkenleri ile OIDC yapılandırması — OIDC sağlayıcılarını yapılandırma dosyası yerine ortam değişkenleriyle yapılandırma olanağı. (#2528, #3120)
  • OIDC sağlayıcısından çıkış — Semaphore oturumunu kapatırken IdP oturumunu da sonlandırma. (#1496)

Enterprise

  • OIDC gruptan role eşleme — OIDC taleplerine (groups talebi) dayalı olarak Semaphore rollerini ve proje üyeliklerini otomatik atama. (#1499, #2483)
  • LDAP gruptan role eşleme — Active Directory / LDAP gruplarını Semaphore rollerine eşleme. (#3226, #1316)
  • LDAP/OIDC entegrasyonu ile tam RBAC — harici kimlik sağlayıcı gruplarından otomatik rol ataması ile ayrıntılı rol tabanlı erişim kontrolü uygulama. (#891)

Yerleşik Envanter Yönetim Sistemi

sürüm 2.22

Bu özellik, yerleşik bir envanter yönetim sistemi sunar: ana makinelerin, grupların ve değişkenlerin Semaphore’da saklanan ve doğrudan web arayüzünde düzenlenebilen birinci sınıf nesneler olduğu, aynı zamanda standart Ansible envanterine tamamen aktarılabilir yapılandırılmış bir envanter düzenleyicisi.

Community

  • Yapılandırılmış ana makine ve grup düzenleyici — ana makineleri ve grupları metin kutusu yerine arayüz üzerinden yönetme. (#836)
  • Arayüzde ana makine ve grup değişkenleri — her ana makine ve grup için host_vars ve group_vars yapılandırılmış anahtar/değer çiftleri olarak tanımlama.
  • Mevcut envanteri içe aktarma — mevcut INI/YAML envanter dosyasını içe aktarma veya yapıştırarak ayrıştırma.
  • Standart Ansible envanterine dışa aktarma — görev çalıştırma anında yönetilen envanteri standart bir Ansible envanter dosyasına dönüştürme.

Esnek Bildirim Sistemi

sürüm 2.21

Bu özellik, bildirimleri proje ve şablon ayrıntısında web arayüzünden yönetilebilir, genişletilebilir ve yapılandırılabilir hale getirir.

Community

  • Genişletilebilir kanal mimarisi — bildirim kanalları için ortak bir arayüz tanımlama. (#2325, #1290)
  • Arayüzden yönetilen bildirim yapılandırması — bildirim kurulumunu Web UI içine taşıma. (#3387)
  • Yeni bildirim kanalları — Discord, Ntfy, Google Chat, Rocket.Chat ve Pushover desteği ekleme.
  • Giden webhook olayları — proje başına olay türleri (START, SUCCESS, FAILURE) ve webhook şablonları tanımlama.

Kullanıcıya Özel Gizli Anahtarlar

sürüm 2.21

Kullanıcıların kendi kimlik bilgilerini proje düzeyinde paylaşmadan güvenle kullanabilmeleri için kullanıcı başına Key Store izolasyonu.

Community

  • Kişisel anahtar deposu — kişisel kimlik bilgilerinin diğer üyelerden izole edilmesi için kullanıcı başına Key Store sağlama. (#1483)
  • Gizli anahtarları işlem listesinden gizleme — gizli değişkenleri komut satırı bağımsız değişkenleri yerine güvenli mekanizmalarla aktarma. (#3219)

requirements.yml İçin Kimlik Bilgileri

sürüm 2.21

Ansible playbooks, özel Git depolarında bulunan requirements.yml içindeki rolleri ve koleksiyonları yüklerken kimlik doğrulaması gerektirir. Bu özellik, ansible-galaxy install aşamasında otomatik kimlik bilgisi kullanımını sağlar.

Kalıcı Depo Önbelleği

sürüm 2.21

Her görev çalıştırmasında depoyu yeniden klonlamak yerine arka planda periyodik olarak güncellenen kalıcı bir klon önbelleği tutma seçeneği.

Şablon Başına Çoklu Envanter

sürüm 2.22

Tek bir görev şablonuna birden fazla envanter ekleyebilme desteği (-i parametreleri ile aktarılır).