0Pricing
Helm Academy · درس

التكرار على الملفات باستخدام range مع .Files.Glob

إنشاء ConfigMaps من دليل يحتوي على ملفات

التكرار على الملفات باستخدام range مع .Files.Glob درس مجاني في Helm Academy على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Helm Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Helm Academy 4 دروس في المجموع.

تضمين الملفات في مخطط

يمكن للمخططات شحن ملفات إضافية إلى جانب القوالب. يتيح الكائن .Files لقوالبكم الوصول للقراءة إلى تلك الملفات المضمنة.

مطابقة الملفات باستخدام Glob

تعيد الطريقة .Files.Glob الملفات التي تتطابق مساراتها مع نمط معين، مثل جميع الملفات الموجودة ضمن دليل إعدادات.

{{ $files := .Files.Glob "configs/*.conf" }}

التكرار على الملفات المطابقة

استخدموا Glob مع range للتكرار على كل ملف مطابق، إذ يزوّدكم بمساره وبايتاته الخام داخل الحلقة.

{{ range $path, $bytes := .Files.Glob "configs/*" }}

إنشاء ConfigMap

من الاستخدامات الشائعة إنشاء ConfigMap واحد تكون مفاتيح بياناته أسماء الملفات وقيمه محتويات تلك الملفات.

اختصار AsConfig

في هذه الحالة تحديدًا، يحوّل AsConfig نتيجة glob مباشرة إلى كتلة بيانات جاهزة للاستخدام في ConfigMap.

data: {{ (.Files.Glob "configs/*").AsConfig | nindent 2 }}

الأسرار باستخدام AsSecrets

يُرمّز النظير AsSecrets كل ملف بترميز Base64، مما يتيح لنتيجة glob تعبئة مورد Secret بدلًا من ذلك.

data: {{ (.Files.Glob "secret/*").AsSecrets | nindent 2 }}

استخدام الاسم الأساسي

غالبًا ما تحتاجون داخل الحلقة إلى اسم الملف فقط كمفتاح، لذا طبّقوا الدالة base لإزالة جزء الدليل.

{{ base $path }}: |

قراءة محتوى كل ملف

متغير الحلقة عبارة عن بايتات خام، لذا مرروه عبر toString أو nindent لوضع المحتوى بشكل منسق أسفل مفتاحه.

{{ $content | toString | nindent 4 }}

أنماط Glob نسبية

تُحل أنماط Glob انطلاقًا من جذر المخطط، ويتم تخطي الملفات التي تبدأ أسماؤها بنقطة، لذا ضعوا الأصول المضمنة في مجلدات واضحة الأسماء.

الحفاظ على صحة المخرجات

تُعد المسافات البادئة مهمة: استخدموا nindent لكل كتلة حتى تتداخل المفاتيح والأجسام المنشأة بشكل صحيح ضمن data.

قراءة ملف واحد

عندما تحتاجون إلى ملف واحد فقط بدلًا من مجموعة، تعيد .Files.Get محتواه مباشرةً دون الحاجة إلى أي تكرار.

{{ .Files.Get "configs/app.conf" }}

تحقق سريع

تحقق سريع من البحث عن الملفات باستخدام Glob.

مراجعة

تعلمتم تحديد الملفات المضمنة باستخدام .Files.Glob، والتكرار عليها باستخدام range، وإنشاء ConfigMaps عبر AsConfig أو AsSecrets. 🎉

الأسئلة الشائعة

هل درس «التكرار على الملفات باستخدام range مع .Files.Glob» مجاني؟

نعم — نص درس «التكرار على الملفات باستخدام range مع .Files.Glob» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Helm Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Helm Academy 4 دروس في المجموع.

ماذا ستتعلم في «التكرار على الملفات باستخدام range مع .Files.Glob»؟

إنشاء ConfigMaps من دليل يحتوي على ملفات تتمرن على Helm Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Helm Academy؟

لا تُشترط خبرة سابقة. Helm Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.

كم من الوقت يستغرق درس «التكرار على الملفات باستخدام range مع .Files.Glob»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Helm Academy هذا؟

نعم. كل درس في Helm Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. دمج عميق باستخدام mergeOverwrite وdict
  2. tpl: تصيير السلاسل من القيم
  3. التكرار على الملفات باستخدام range مع .Files.Glob
  4. حارس fail وعمليات التحقق المخصصة
← العودة إلى Helm Academy