.Files.Glob ile range kullanarak dosyalar arasında döngü oluşturma
Bir dosya dizininden ConfigMaps oluşturma
.Files.Glob ile range kullanarak dosyalar arasında döngü oluşturma, CoddyKit'te ücretsiz bir DevOps Bootcamp dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, DevOps Bootcamp öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. DevOps Bootcamp kursu toplamda 4 dersten oluşur.
Bir Grafikte Dosyaları Paketleme
Grafikler, şablonların yanında ek dosyalar da barındırabilir. .Files nesnesi, şablonlarınıza bu paketlenmiş dosyalara okuma erişimi sağlar.
Dosyaları Glob ile Eşleştirme
.Files.Glob yöntemi, bir yapılandırma dizini altındaki tüm dosyalar gibi yolları bir desenle eşleşen dosyaları döndürür.
{{ $files := .Files.Glob "configs/*.conf" }}Eşleşmeler Üzerinde Döngü Kurma
Her eşleşen dosya üzerinde yineleme yapmak için Glob'u range ile eşleştirin; böylece döngü içinde dosyanın yoluna ve ham baytlarına erişebilirsiniz.
{{ range $path, $bytes := .Files.Glob "configs/*" }}Bir ConfigMap Oluşturma
Klasik bir kullanım, veri anahtarlarının dosya adları, değerlerinin ise dosya içerikleri olduğu tek bir ConfigMap oluşturmaktır.
AsConfig Kısayolu
Tam olarak bu durumda AsConfig, bir glob sonucunu doğrudan ConfigMap için kullanıma hazır bir veri bloğuna dönüştürür.
data: {{ (.Files.Glob "configs/*").AsConfig | nindent 2 }}AsSecrets ile Gizli Bilgiler
Eşdeğeri olan AsSecrets her dosyayı Base64 ile kodlar; böylece bir glob sonucu bunun yerine bir Secret kaynağını doldurabilir.
data: {{ (.Files.Glob "secret/*").AsSecrets | nindent 2 }}Temel Adı Kullanma
Döngü içinde anahtar olarak genellikle yalnızca dosya adını istersiniz; bu nedenle dizin bölümünü kaldırmak için base işlevini uygulayın.
{{ base $path }}: |Her Dosyanın İçeriğini Okuma
Döngü değişkeni ham baytlardan oluşur; içeriği anahtarının altına düzgünce yerleştirmek için bu değişkeni toString veya nindent işlevine aktarın.
{{ $content | toString | nindent 4 }}Glob Desenleri Görecelidir
Glob desenleri grafik kökünden çözümlenir ve noktayla başlayan dosyalar atlanır; bu nedenle paketlenmiş varlıkları açıkça adlandırılmış klasörlerde tutun.
Çıktıyı Geçerli Tutma
Girinti önemlidir: oluşturulan anahtarların ve gövdelerin data altında doğru şekilde iç içe yerleşmesi için her blokta nindent kullanın.
Tek Bir Dosyayı Okuma
Bir küme yerine yalnızca tek bir dosyaya ihtiyacınız olduğunda .Files.Get, hiçbir döngüye gerek kalmadan içeriğini doğrudan döndürür.
{{ .Files.Get "configs/app.conf" }}Kısa Kontrol
Dosya glob eşleştirmesini kısaca kontrol edin.
Özet
Paketlenmiş dosyaları .Files.Glob ile seçmeyi, range ile bunlar üzerinde döngü kurmayı ve AsConfig veya AsSecrets aracılığıyla ConfigMap'ler oluşturmayı öğrendiniz. 🎉
Sıkça Sorulan Sorular
“.Files.Glob ile range kullanarak dosyalar arasında döngü oluşturma” dersi ücretsiz mi?
Evet — “.Files.Glob ile range kullanarak dosyalar arasında döngü oluşturma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve DevOps Bootcamp kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. DevOps Bootcamp kursu toplamda 4 dersten oluşur.
“.Files.Glob ile range kullanarak dosyalar arasında döngü oluşturma” dersinde ne öğreneceğim?
Bir dosya dizininden ConfigMaps oluşturma DevOps Bootcamp ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
DevOps Bootcamp öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te DevOps Bootcamp, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“.Files.Glob ile range kullanarak dosyalar arasında döngü oluşturma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu DevOps Bootcamp dersinde kod yazıp çalıştırabilir miyim?
Evet. Her DevOps Bootcamp dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- mergeOverwrite ve dict ile Derin Birleştirme
- tpl: Değerlerden Dizeler Oluşturma
- .Files.Glob ile range kullanarak dosyalar arasında döngü oluşturma
- fail ve Özel Doğrulama Korumaları