terraform-skill
دليل أفضل ممارسات Terraform
تساعد هذه المهارة المطورين على كتابة كود Terraform جاهز للإنتاج مع بنية واختبارات وأمان صحيحين. تقدم إرشادات حول تصميم الوحدات (modules)، والتكامل مع CI/CD، وأفضل ممارسات البنية التحتية بناءً على خبرة المؤسسات.
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "terraform-skill". ساعدني في فهم متى أستخدم count مقابل for_each في Terraform
النتيجة المتوقعة:
Use count when you have a boolean condition (create or not) or a fixed number of identical resources. Use for_each when items may be reordered, removed, or you need stable addressing by key. For example, use for_each = toset(var.availability_zones) for subnets so removing an AZ doesn't recreate all subsequent subnets.
استخدام "terraform-skill". ما هو ترتيب المتغيرات الموصى به في Terraform؟
النتيجة المتوقعة:
Always order variable blocks consistently: description (required), type, default, validation, nullable. This ensures clarity and helps users understand the variable purpose immediately. Always include a description for every variable.
استخدام "terraform-skill". كيف يجب أن أبنى وحدتي في Terraform؟
النتيجة المتوقعة:
A well-structured module includes: main.tf (resources), variables.tf (inputs), outputs.tf (outputs), versions.tf (provider constraints), examples/ (usage examples), and tests/ (test files). Keep modules small and focused on a single responsibility.
التدقيق الأمني
آمنAll static findings are false positives. This is a legitimate Terraform best practices skill providing infrastructure-as-code guidance. The 85 'external_commands' detections are Ruby template syntax in markdown rendering HCL code examples. Network detections are legitimate reference URLs and example CIDR blocks in documentation. Sensitive data and cryptographic algorithm warnings refer to security best practices being taught, not actual vulnerabilities.
مشكلات منخفضة المخاطر (1)
درجة الجودة
ماذا يمكنك بناءه
إعداد مشروع بنية جديد
يحتاج مهندس DevOps الذي يبدأ مشروع Terraform جديد إلى إرشادات حول بنية الدليل وتنظيم الوحدات واتفاقيات التسمية لضمان كود قابل للصيانة من البداية.
اختيار استراتيجية الاختبار
تريد فريق إضافة اختبارات آلية لسير عمل Terraform لكنها تحتاج مساعدة في الاختيار بين الاختبارات الأصلية و Terratest وأدوات التحليل الثابت بناءً على حالة الاستخدام والخبرة.
إعادة هيكلة الوحدات
تحتاج تكوينات Terraform الموجودة إلى إعادة هيكلة لاستخدام أنماط حديثة مثل for_each و moved blocks أو تصميم متغيرات أفضل لتحسين قابلية الصيانة.
جرّب هذه الموجهات
ساعدني في إعداد مشروع Terraform جديد ببنية مناسبة للنشر متعدد البيئات. أحتاج إلى فهم التخطيط الموصى به للدليل للبيئات والوحدات والأمثلة.
ما نهج الاختبار الذي يجب أن استخدامه لوحدات Terraform؟ لدي منطق التحقق البسيط وبعض تكوينات الموارد المعقدة. أبحث عن اختبار فعال من حيث التكلفة يوازن بين التغطية والجهد والصيانة.
راجع بنية وحدتي واقترح تحسينات. لدي وحدة VPC تنشئ الشبكات الفرعية ومجموعات الأمان والتوجيه. هل يجب تقسيم هذا إلى وحدات أصغر أم الاحتفاظ به كوحدة واحدة؟
ساعدني في إنشاء خط أنابيب CI/CD لـ Terraform يتضمن مراحل التحقق وفحص الأمان والتخطيط والتطبيق. أريد تحسين التكلفة وضمان الموافقات المناسبة للتغييرات في الإنتاج.
أفضل الممارسات
- استخدم أسماء وصفية والسياقية للموارد (مثل web_server، application_logs) و 'this' للموارد المفردة
- قم دائماً بتضمين أوصاف للمتغيرات والمخرجات لمساعدة المشرفين المستقبليين
- قم بتثبيت إصدارات المزودين باستخدام قيود متشائمة (مثل ~> 5.0) لموازنة الاستقرار مع التحديثات
تجنب
- تجنب أسماء الموارد العامة مثل 'main' أو 'bucket' أو 'instance' لغير المفردة
- لا تخزن الأسرار في متغيرات Terraform؛ استخدم مديري الأسرار بدلاً من ذلك
- تجنب VPC الافتراضية ومجموعات الأمان المفرطة التساهل (0.0.0.0/0)