Dünyanın en detaylı ücretsiz FDE + DevOps kütüphanesi: 140 üzeri ders, 70 üzeri lab ve 80 uzun yazı, İngilizce ve Türkçe. Öğrenmeye başla →

İki kez korkusuz çalıştırılan kurulum betikleri

Güncelleme

Fabrikada çalışan endüstriyel robot kolu

İdempotent betikler değiştirmeden önce durumu kontrol eder: ikinci koşu ikinci felaket değil zararsız boş iştir.

Kurulum betikleri iki kez koşar. Biri arızadan sonra tekrarlar, hat bir adımı yeniden oynatır, ekip arkadaşı ne olur ne olmaz koşar. Temiz sayfa varsayan betik ikinci koşuda bozar: yinelenen kayıtlar, katlanan izinler, iki kez eklenen bloklar.

Kontrol et, sonra uygula

Her değişiklik kontrolle başlar. Kullanıcı var mı? Dizin doğru mu? Satır zaten var mı? Kontrol karar verir; değişiklik yalnızca boşlukta çalışır.

Adımlar değil istenen durum. Son durumu anlat, ona yakınsa. Kontrolsüz adım listeleri tek atımlık havai fişektir.

İkinci koşuyu kanıtla. Düzenek, koş, yine koş, karşılaştır. İkinci log sakin onay gibi okunmalı: çoğu geçilmiş, hiçbir şey değişmemiş.

Çalışılmış örnek: kurgusal bir karşılama betiği

Aşağıdaki bağlam kurgusaldır. Kurgusal onboard.sh betiği kullanıcı, dizin ağacı ve üç yapılandırma satırı kurar. İkinci koşu yapılandırma satırlarını yineler, mevcut kullanıcıda kırılır.

Yeniden yazım her kaynağı önce kontrol eder: kullanıcı varsa geç, dizin doğruysa geç, satırlar varsa geç. İkinci koşu hiçbir şeyi değiştirmez, söyler. Tekrarlar yapısal güvenli olur.

Kontrol listesi: tekrar koşulabilir betik

  1. Her değişiklik durum kontrollü.
  2. Düzenekte ikinci koşu hiçbir şeyi değiştirmiyor.
  3. Çıktı neyin neden geçildiğini söylüyor.
  4. Yarım arıza elle temizliksiz kaldığı yerden sürüyor.

İlgili okuma

Net yanıtlar

Sık sorulan sorular

İdempotent burada tam ne demek?

Betiği iki kez koşmak bir kez koşmakla aynı sonucu verir. İkinci koşu mevcut durumu görür, hiçbir şeyi değiştirmez.

En ucuz kalıp nedir?

Kaynak başına kontrol-sonra-uygula: varsa ve doğruysa geç; yoksa kur; yanlışsa istenen duruma getir.

Nasıl kanıtlarım?

Düzenekte iki kez koş, sonuçları karşılaştır. Aynı son durum artı temiz ikinci log kanıttır.

Read this page in English

Okumayı sertifikaya dönüştürün

Bu yazı ücretsiz saha notudur. Sınavlar tarihli oturumlarda, 15 kişilik sınıflarda yapılır; tek fiyat tek denemeyi kapsar. Derslerin tamamı ücretsizdir.