0Pricing
DevOps Bootcamp · درس

تشريح مجلد Role

tasks وhandlers وtemplates وdefaults وvars

تشريح مجلد Role درس مجاني في DevOps Bootcamp على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في DevOps Bootcamp، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.

الدور عبارة عن شجرة مجلدات

الدور ليس سوى مجلد يضم مجموعة ثابتة من المجلدات الفرعية. يعرف Ansible كل مجلد باسمه ويحمّل محتوياته تلقائيًا.

roles/
  nginx/
    tasks/
    handlers/
    templates/

tasks/main.yml هي نقطة الدخول

يحتوي الملف tasks/main.yml على قائمة المهام الرئيسية للدور. وهو أول ما يشغّله Ansible عند تطبيق الدور.

tasks/main.yml:
- name: Install nginx
  ansible.builtin.package:
    name: nginx

يحتوي handlers/ على منطق إعادة التشغيل

يعرّف مجلد handlers إجراءات مثل إعادة تشغيل خدمة. تُخطِر المهام هذه المعالجات، بحيث تحدث عمليات إعادة التشغيل عند وجود تغيير فقط.

templates/ لملفات Jinja2

ضع ملفات القوالب .j2 في templates/. تعثر وحدة القوالب عليها هناك بالاسم، من دون الحاجة إلى مسار كامل.

templates/
  nginx.conf.j2

files/ للملفات الثابتة

يخزّن مجلد files الملفات العادية التي تنسخها كما هي. وتحدد وحدة النسخ موقعها تلقائيًا، تمامًا كما يحدث مع القوالب.

يحدد defaults/ متغيّرات منخفضة الأولوية

يحتوي الملف defaults/main.yml على متغيّرات ذات أدنى أولوية، ولذلك يمكن للمستخدمين تجاوزها بسهولة من خارج الدور.

defaults/main.yml:
nginx_port: 80

يحدد vars/ متغيّرات عالية الأولوية

يحتوي الملف vars/main.yml على متغيّرات ذات أولوية أعلى. استخدمه للقيم التي يعتمد عليها الدور والتي يُفترض أن تتغير نادرًا.

يصف meta/main.yml الدور

يسرد الملف meta/main.yml مؤلف الدور وترخيصه والمنصات المدعومة وأي تبعيات للأدوار.

main.yml هو الاسم المميّز

داخل مجلدات المهام والمعالجات والمتغيّرات والقيم الافتراضية، يحمّل Ansible تلقائيًا الملف المسمى main.yml. وهذه التسمية هي الاصطلاح الذي يربط كل شيء معًا.

لا تحتاج إلا إلى ما تستخدمه

لا يحتاج الدور إلى كل المجلدات. فإذا لم تكن لديه قوالب، فما عليك سوى تخطّي مجلد templates. يتجاهل Ansible المجلدات الاختيارية المفقودة.

tests/ وREADME لإضفاء اللمسات الأخيرة

تضيف الأدوار الناضجة ملف README ومجلد اختبارات حتى يفهم الآخرون أتمتتك ويتحققوا منها قبل استخدامها.

تحقق سريع

تذكّر أين توجد قائمة المهام الرئيسية للدور.

خلاصة

الدور عبارة عن شجرة مجلدات لكل من tasks والمعالجات والقوالب والملفات والقيم الافتراضية والمتغيّرات وmeta موضع ثابت فيها، وكلها تعتمد على main.yml. 📁

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

هل درس «تشريح مجلد Role» مجاني؟

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

ماذا ستتعلم في «تشريح مجلد Role»؟

tasks وhandlers وtemplates وdefaults وvars تتمرن على DevOps Bootcamp مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

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

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

كم من الوقت يستغرق درس «تشريح مجلد Role»؟

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

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

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

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

  1. لماذا Roles: من البنية الأحادية إلى الوحدات
  2. تشريح مجلد Role
  3. إنشاء هيكل Role باستخدام ansible-galaxy init
  4. تطبيق Roles وتمرير متغيرات Role
← العودة إلى DevOps Bootcamp