أمرا Terraform `validate` و`fmt`
استخدم أوامر Terraform المضمّنة مثل `validate` للتحقق من صياغة التهيئة و`fmt` لتنسيق الشفرة بشكل متسق.
أمرا Terraform `validate` و`fmt` درس مجاني في DevOps Bootcamp على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في DevOps Bootcamp، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
جودة الشيفرة للبنية التحتية كتعليمة برمجية
لا تقتصر جودة الشيفرة على الوظائف التي تؤديها؛ بل تشمل أيضًا سهولة قراءتها وصحتها. ويزداد ذلك أهمية في البنية التحتية كتعليمة برمجية (IaC)، إذ قد تؤدي الأخطاء إلى مشكلات مكلفة في البنية التحتية.
يوفر Terraform أدوات مضمّنة للمساعدة في ذلك: validate وfmt. وتضمن هذه الأدوات صحة إعداداتكم نحويًا واتساق تنسيقها.
اكتشاف الأخطاء مبكرًا
يفحص الأمر terraform validate ملفات الإعداد بحثًا عن أخطاء الصياغة والاتساق الداخلي. ويضمن سلامة بنية الشيفرة قبل محاولة تطبيقها.
ويشمل ذلك التحقق من أنواع المتغيرات، ووسيطات الموارد، وإعدادات المزوّد. وهذه طريقة سريعة لاكتشاف الأخطاء من دون التفاعل مع مزوّد الخدمة السحابية.
إعداد صحيح
لنلقِ نظرة على إعداد بسيط وصحيح في Terraform. تعلن هذه الشيفرة عن حاوية AWS S3.
سيؤدي تشغيل terraform validate عليه إلى النجاح، مما يشير إلى عدم وجود مشكلات في الصياغة أو الإعداد الأساسي.
resource "aws_s3_bucket" "my_bucket" {
bucket = "my-unique-coddykit-bucket-123"
acl = "private"
tags = {
Environment = "Dev"
Project = "CoddyKit"
}
}اكتشاف خطأ إملائي
ماذا يحدث إذا ارتكبنا خطأ؟ في هذا المثال، كُتبت الوسيطة acl بشكل خاطئ لتصبح accl.
سيكتشف terraform validate هذا الخطأ فورًا، ويخبركم بأن accl ليست وسيطة معروفة لمورد حاوية S3.
resource "aws_s3_bucket" "my_bucket" {
bucket = "my-unique-coddykit-bucket-456"
accl = "private" # Intentional typo!
tags = {
Environment = "Dev"
}
}كيفية استخدام `validate`
للتحقق من إعداداتكم، انتقلوا في الوحدة الطرفية إلى الدليل الذي يحتوي على ملفات .tf. ثم شغّلوا الأمر التالي ببساطة:
terraform validate
يجري الأمر عمليات التحقق في دليل العمل الحالي. إذا نجح التحقق، فسيخرج بصمت مع رسالة نجاح. أما إذا فشل، فسيقدم رسائل خطأ واضحة.
الاتساق هو الأساس
هل سبق أن عملتم ضمن فريق ينسّق كل فرد فيه الشيفرة بطريقة مختلفة؟ قد يجعل ذلك قراءة الشيفرة وصيانتها أمرًا صعبًا. يحل terraform fmt (التنسيق) هذه المشكلة!
يعيد هذا الأمر كتابة ملفات إعدادات Terraform تلقائيًا وفق تنسيق وأسلوب معياريين. ويضمن ذلك الاتساق في قاعدة الشيفرة والفريق بأكمله.
شيفرة غير منسّقة
ألقوا نظرة على هذا الإعداد. المسافات البادئة غير متسقة، والتباعد غير صحيح. الإعداد صحيح، لكن يصعب تصفحه بسرعة.
يمكن أن يحدث هذا النوع من مشكلات التنسيق بسهولة عندما يعمل عدة أشخاص على الملفات نفسها.
resource "aws_s3_bucket" "another_bucket" {
bucket = "coddykit-unformatted-bucket"
acl = "private"
tags = {
Project = "CoddyKit"
Env = "Test"
}
}تنسيق جميل
تخيلوا الآن تشغيل terraform fmt على الشيفرة السابقة. سيضبط الأمر التباعد والمسافات البادئة تلقائيًا لتتوافق مع أسلوب Terraform القياسي.
يجعل ذلك الشيفرة أنظف بكثير وأسهل قراءة. إنه تغيير صغير ذو أثر كبير في التعاون!
resource "aws_s3_bucket" "another_bucket" {
bucket = "coddykit-unformatted-bucket"
acl = "private"
tags = {
Project = "CoddyKit"
Env = "Test"
}
}استخدام fmt للفرق
لتنسيق الملفات، شغّلوا terraform fmt في دليل الإعداد. ويعدّل الأمر الملفات مباشرةً.
في مسارات CI/CD، يمكنكم استخدام terraform fmt -check=true للتحقق من أن الملفات منسّقة بشكل صحيح من دون تعديلها. أو استخدام -diff لعرض التغييرات المقترحة.
اختبروا معرفتكم
أي العبارات التالية حول terraform validate وterraform fmt صحيحة؟
تحققوا من شيفرتكم ونسّقوها!
تعلمتم في هذا الدرس أمرين أساسيين في Terraform:
terraform validate: يضمن صحة صياغة الإعداد والاتساق الداخلي، ويكتشف الأخطاء مبكرًا.terraform fmt: ينسّق الشيفرة تلقائيًا وفق أسلوب متسق، مما يحسّن سهولة القراءة والتعاون.
يساعد استخدام هذه الأدوات بانتظام في الحفاظ على بنية تحتية كتعليمة برمجية عالية الجودة وخالية من الأخطاء وسهلة القراءة. سنستكشف بعد ذلك استراتيجيات اختبار أكثر تقدمًا!
الأسئلة الشائعة
هل درس «أمرا Terraform `validate` و`fmt`» مجاني؟
نعم — نص درس «أمرا Terraform `validate` و`fmt`» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة DevOps Bootcamp، انتقل إلى CoddyKit PRO. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
ماذا ستتعلم في «أمرا Terraform `validate` و`fmt`»؟
استخدم أوامر Terraform المضمّنة مثل `validate` للتحقق من صياغة التهيئة و`fmt` لتنسيق الشفرة بشكل متسق. تتمرن على DevOps Bootcamp مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ DevOps Bootcamp؟
لا تُشترط خبرة سابقة. DevOps Bootcamp على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.
كم من الوقت يستغرق درس «أمرا Terraform `validate` و`fmt`»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس DevOps Bootcamp هذا؟
نعم. كل درس في DevOps Bootcamp يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- أمرا Terraform `validate` و`fmt`
- اختبار الوحدات باستخدام Terratest
- اختبار تكامل الموارد السحابية
- السياسة كتعليمة برمجية وفحوصات الامتثال