الوسمان الخاصان always وnever
أجبر المهام أو امنعها في جميع الحالات
الوسمان الخاصان always وnever درس مجاني في DevOps Bootcamp على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في DevOps Bootcamp، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
وسمان محجوزان
يحجز Ansible اسمَي وسم خاصين بسلوك مضمّن: always وnever. فهما ليسا عاملَي تصفية، بل قاعدتان. 🔒
يُشغّل always في كل مرة
تُشغّل كل مهمة موسومة بـ always في كل play، بغض النظر عن خيارات --tags التي تمررها. وهي مناسبة تمامًا للإعدادات التي يجب تنفيذها.
- name: Gather setup
ansible.builtin.setup:
tags:
- alwaysتخطي always
هناك استثناء واحد: يؤدي تمرير --skip-tags always إلى استبعاد هذه المهام أيضًا عند الحاجة الفعلية إلى ذلك.
ansible-playbook site.yml --skip-tags alwaysاستخدام مناسب لـ always
يُعد تحميل المتغيرات أو الحقائق التي تعتمد عليها المهام اللاحقة استخدامًا مثاليًا لـ always، حتى تكون موجودة مهما كانت التصفية التي تطبقها.
- ansible.builtin.include_vars: app.yml
tags:
- alwaysيبقى never مخفيًا
يتم تخطي المهمة الموسومة بـ never افتراضيًا. ولا تُشغّل إلا عندما تطلبها صراحةً أو تطلب وسمًا آخر من وسومها.
- name: Wipe database
ansible.builtin.command: drop-all
tags:
- never
- debugاختيار never صراحةً
لتشغيل مهمة never، سمّها مباشرةً باستخدام --tags. يؤدي طلبها إلى تجاوز التخطي الافتراضي.
ansible-playbook site.yml --tags debugاستخدم never للخطوات الخطرة
استخدم never لحماية المهام الخطرة أو النادرة، مثل التنظيف المدمر، حتى لا تُنفّذ بالخطأ مطلقًا.
إقران never بوسم فعلي
امنح مهمة never وسمًا ثانيًا أيضًا. ثم شغّلها باستخدام ذلك الاسم الواضح، بينما يبقيها never متوقفة بأمان افتراضيًا.
يتغلب always على الاختيار
حتى عند تشغيل --tags config، تستمر كل مهمة always في التنفيذ إلى جانب المهام التي اخترتها. فهذا السلوك إضافي.
إعدادان افتراضيان متعاكسان
تذكر التناظر: يضم always المهمة افتراضيًا ما لم تُتخطَّ، بينما يستبعدها never ما لم تُطلب.
مهمة تنظيف آمنة
تحمل هذه المهمة المدمرة وسمَي never وcleanup، لذلك لا تُشغّل إلا عندما تطلب التنظيف عمدًا. 🛡️
- name: Reset state
ansible.builtin.command: reset.sh
tags:
- never
- cleanupتحقق سريع
مهمة موسومة بـ never فقط. متى تُشغّل؟
مراجعة
تعلمت أن always تُشغّل المهمة ما لم تُتخطَّ، وأن never تبقيها متوقفة حتى تطلب وسمها صراحةً، مما يحمي المهام الخطرة. ✅
الأسئلة الشائعة
هل درس «الوسمان الخاصان always وnever» مجاني؟
نعم — نص درس «الوسمان الخاصان always وnever» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة DevOps Bootcamp، انتقل إلى CoddyKit PRO. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
ماذا ستتعلم في «الوسمان الخاصان always وnever»؟
أجبر المهام أو امنعها في جميع الحالات تتمرن على DevOps Bootcamp مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ DevOps Bootcamp؟
لا تُشترط خبرة سابقة. DevOps Bootcamp على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «الوسمان الخاصان always وnever»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس DevOps Bootcamp هذا؟
نعم. كل درس في DevOps Bootcamp يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- وضع وسوم على Tasks وPlays وRoles
- تصفية عمليات التشغيل باستخدام --tags و--skip-tags
- الوسمان الخاصان always وnever
- عرض الوسوم والمهام قبل التشغيل