0Pricing
DevOps Bootcamp · درس

تجميع المهام باستخدام block

اجمع المهام لتشارك السلوك نفسه

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

مهام تنتمي إلى مجموعة واحدة

تشكل بعض المهام وحدةً طبيعية. تجمع الكلمة المفتاحية block عدة مهام حتى تتمكن من مشاركة الإعدادات والسلوك. 📦

كيف تبدو block

إن block قائمة من المهام المتداخلة تحت مفتاح block واحد. وتُشغّل من الأعلى إلى الأسفل، تمامًا مثل المهام العادية.

- name: Set up the app
  block:
    - name: Install package
      ansible.builtin.package:
        name: nginx
    - name: Start service
      ansible.builtin.service:
        name: nginx
        state: started

شارك التوجيهات مرة واحدة

تنطبق التوجيهات المحددة على block على كل مهمة داخلها. حدّد become أو when مرة واحدة بدلًا من تكرارهما لكل مهمة.

- block:
    - ansible.builtin.package:
        name: nginx
    - ansible.builtin.service:
        name: nginx
        state: started
  become: true

شرط when مشترك

ضع when على block، وسيطبقه Ansible على جميع المهام التابعة. إما أن تُشغّل المجموعة بأكملها أو تُتخطى بأكملها.

- block:
    - ansible.builtin.package:
        name: httpd
    - ansible.builtin.service:
        name: httpd
        state: started
  when: ansible_os_family == "RedHat"

الوسوم على block كاملة

يضع tag على block وسمًا على كل مهمة داخلها. وتتيح تسمية واحدة تشغيل المجموعة بأكملها أو تخطيها باستخدام --tags.

- block:
    - ansible.builtin.package:
        name: nginx
  tags:
    - webserver

يمكن تسمية blocks

امنح block اسمًا لجعل المخرجات واضحة. يظهر الاسم في سجل التنفيذ، موضحًا إطار المهام التي تحتوي عليها.

- name: Configure web server
  block:
    - ansible.builtin.template:
        src: nginx.conf.j2
        dest: /etc/nginx/nginx.conf

Blocks ليست حلقات

تجمع block المهام، لكنها لا تكررها. ولتشغيل block عدة مرات، ما زلت بحاجة إلى تطبيق حلقة على المهام الفردية الموجودة داخلها.

توريث لا تجاوز

تُورث توجيهات block من قِبل المهام. ويمكن للمهمة أن تحدد when خاصًا بها، إذ يُدمج مع شرط block باستخدام and المنطقي.

تداخل blocks

يمكن أن تحتوي blocks على blocks أخرى. يتيح التداخل تحديد نطاق الإعدادات بدقة، لكن احرص على إبقائه بسيطًا حتى تظل playbook واضحة.

القوة الحقيقية: معالجة الأخطاء

التجميع مفيد، لكن تتألق blocks عند إقرانها بـ rescue وalways. فهي تحول المجموعة إلى وحدة try وcatch، وسنتناول ذلك لاحقًا. 🛟

أين توجد blocks

توجد block في قائمة tasks الخاصة بـ play، في الموضع نفسه الذي توجد فيه مهمة واحدة. فأينما تصح المهمة، تصح block أيضًا.

تحقق سريع

لنتحقق مما تفعله block.

مراجعة

تجمع block المهام تحت مفتاح واحد حتى تشارك توجيهات مثل become وwhen وtags، كما تتيح معالجة الأخطاء. ✅

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

هل درس «تجميع المهام باستخدام block» مجاني؟

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

ماذا ستتعلم في «تجميع المهام باستخدام block»؟

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

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

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

كم من الوقت يستغرق درس «تجميع المهام باستخدام block»؟

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

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

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

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

  1. تجميع المهام باستخدام block
  2. Try / Catch باستخدام rescue وalways
  3. التحكّم في الفشل: failed_when وignore_errors
  4. تأكيدات مخصّصة باستخدام وحدة fail
← العودة إلى DevOps Bootcamp