İçeriğe geç
Subnomic

İş akışları

Birbirine bağlanmış ürünler

İnsanların zaten elle yaptığını otomatikleştir.

Okumalardan, kontrollerden, onaylardan ve eylemlerden bir grafik çiz; sonra onu bir zamanlamayla, bir olayla, bir webhook’la ya da bir düğmeyle çalıştır. Her iş akışı kendi kimlik bilgisiyle çalışır; bu yüzden onu yazan kişiden daha öteye asla uzanamaz.

Düğüm türleri
40+
Şablonlar
109
Tetikleyiciler
zamanlama · olay · webhook
Çökmeden sonra
devam eder

Nasıl çalışır

Bir cümleden ya da bir şablondan, okuyabildiğin bir çalıştırmaya.

01

Bir şablondan ya da bir cümleden başla

İzleme, olaylar, veritabanları, Kubernetes, depolama, CI/CD ve güvenlik alanlarındaki 109 şablondan birini seç — ya da anlat, Runa grafiği tuvale çizsin; grafik, kaydederken kullanılan doğrulayıcının aynısıyla denetlenir.

02

Adımları birbirine bağla

Okumalar, koşullar, onaylar, eylemler ve bildirimler; her birinin kendi yeniden denemeleri ve kesin bir süre sınırı var. Gizli anahtarlara adlarıyla başvurulur ve her izde maskelenir.

notify · message
Disk on {{ nodes.disk.host }} is at {{ nodes.disk.percent }}%.
Token: {{ secret "pagerduty" }}
03

Onu neyin başlatacağını seç

Bir düğme, gerçek bir saat dilimindeki bir zamanlama, bir webhook URL’si ya da bir olay — tetiklenen ya da çözülen bir alarm, ilan edilen bir olay, oluşan bir tespit, başarısız olan bir görev ya da bir bucket’a düşen bir nesne.

Çalışır halde bırakmayı güvenli kılan şey

İnsanlarla aynı kurallara tabi otomasyon.

Kendi kimlik bilgisi

Her iş akışı bir ajan erişimine bağlıdır. Yapabilecekleri, o erişim ile yazarının şu anki izinlerinin kesişimidir.

İnsan onayı

Bir manual.approval adımı, biri onaylayana ya da reddedene kadar çalıştırmayı duraklatır. Planın tamamına verilen onay grafiğin bir hash’ine bağlıdır; bu yüzden her düzenleme onayı yeniden ister.

Baştan değil, kaldığı yerden

Çalıştırmalar kiralanır ve işçisi ölen bir çalıştırma yeniden devralınır. Başarılı adımlar yeniden yüklenir; zaten gönderilmiş bir komut yeniden gönderilmez, sahiplenilir.

Komutlarda korkuluklar

Sunuculardaki kabuk adımları korkuluklardan geçer; onay gerektiren bir sunucu da etkin bir anlık (JIT) erişim izni ister.

Yıkıcı adımlar beyan edilir

Yıkıcı olarak işaretlenen bir adımın yeniden denemesi olmamalı, bir etki alanı notu ve öncesinde bir onay olmalıdır — yoksa iş akışı kaydedilmez.

Yapıştırılan anahtarlar değil, bağlantılar

PagerDuty, Jira ve GitHub eylemleri, kendi sağlayıcın üzerinden e-posta ve Slack, Teams, Discord, Mattermost ya da imzalı bir webhook.

Alt iş akışları ve döngüler

Başka bir iş akışını beş seviye derinliğe kadar çağır ya da bir eşzamanlılık sınırıyla, en fazla elli öğe için öğe başına bir tane çalıştır.

Okuyabildiğin çalıştırmalar

Her çalıştırma; tetikleyicisini, her adımın girdi ve çıktılarını ve bağlı her görevi, daha çalışırken canlı olarak tutar. 30 gün saklanır.

Yaz saatine dayanıklı zamanlamalar

Gerçek IANA saat dilimleri, bir sonraki çalıştırmanın önizlemesi ve kesintiden sonra birikmiş bir kuyruk yerine tek bir telafi çalıştırması.

Düğümler

Tuvale koyabileceğin her şey.

Paletteki gruplar, düzenleyicide göründükleri gibi. Tuvalde renk aileyi belirtir; bir düğümün kenarındaki şerit, onun bir şeyi değiştirdiğini ya da bir kişiyi beklediğini söyler.

Başlattrigger — manual, schedule, once, event; ayrıca herhangi birine bir webhook
Okudb.query · kube.get · kube.logs · app.get · docker.logs · host.metrics · host.file_read · rollout.status
Çalışma alanıincident.list · alert.list · detection.list · task.list · activity.search · incident.declare · incident.update · incident.note · alert.resolve
Karar vercondition · switch · transform · assert
Uygulatask · server.exec · schedule.create · host.file_write · cloud.provision
Depolamaobjects.buckets · objects.list · objects.stat · objects.read · objects.write · objects.delete · objects.share · objects.presign_upload
Düşünai.agent — araç kullanan yapay zekâ adımı; iş akışının kimlik bilgisinin izin verdiğiyle sınırlı
Bildirnotify · email.send · http.request · connector.call (PagerDuty, Jira, GitHub)
Akışmanual.approval · delay · sub.workflow · foreach

Sınırlar

Her planın içerdikleri.

Plan Ücretsiz Pro Team Enterprise
İş akışları1202002.000
Zamanlanmış görevler1202002.000
Ajan erişimleri—210100

Plan, çalıştırmaları değil kaydedilmiş iş akışlarını sayar — çalıştırmalar ölçülmez. Bir grafik en fazla 200 düğüm tutabilir.

Sorular

Geceleri çalışmasına izin vermeden önce.

Bir iş akışı, yazarının yapamadığı bir şeyi yapabilir mi?

Hayır. Yazarın şu anki izinleriyle kesiştirilmiş bir ajan erişimi olarak çalışır — yazarın yetkisini düşürürsen iş akışı da o erişimi onunla birlikte kaybeder.

Bir işçi çalıştırmanın ortasında ölürse ne olur?

Çalıştırmayı başka bir işçi devralır. Zaten başarılı olmuş adımlar yeniden çalıştırılmaz; zaten gönderilmiş bir sunucu komutu ya da görev de iki kez gönderilmek yerine sahiplenilir.

Bir webhook nasıl doğrulanır?

URL’sindeki rastgele token ile — URL’ye sahip olan herkes bir çalıştırma başlatabilir, bu yüzden onu bir sır gibi sakla. İstediğin zaman yenilenebilir ya da kaldırılabilir.

Bir şablon etkin olarak mı gelir?

Bir şablon, grafiği doldurulmuş olarak düzenleyicide açılır ve sen kaydedene kadar hiçbir şey kaydedilmez. İhtiyaç duyduğu hedefler, seçmen için işaretlenir.

Elle yapıp durduğun runbook’u otomatikleştir.

Bir şablondan başla ya da anlat, Runa çizsin. Sen kaydedene kadar hiçbir şey çalışmaz.