الدوررسمة في
.tf، والـ provider يكلّم الخدمةأول أمر
terraform init، وتعيده لو الـ provider أو الـ backend اتغيرالقفل في git
.terraform.lock.hcl أيوه، وفولدر .terraform/ لأقبل الخطة
terraform fmt وبعدين terraform validateالمعاينة
terraform plan يطبع + و~ و-/+ و-التنفيذ
terraform apply، وفي CI plan -out=tfplan ثم apply tfplan-auto-approveيعدّي السؤال. بيتتجاهل لو مدّيت ملف خطة
استبدال
-/+ وmust be replaced يعني هدم وبناءالمسح
terraform destroy يمسح الموارد، وملف الـ state يفضلالدفتر
terraform.tfstate رابط المعرّفات. متعدّلوش بإيدكسر
sensitive يخبي الطرفية. القيمة تفضل في الـ stategitامنع
*.tfstate و*.tfstate.* و*.tfvarsقفل بعيدbackend
s3 مع use_lockfile = true من 1.10DynamoDB
dynamodb_table deprecated. سيّبه بس وقت النقلترتيب القيمdefault، ثم
TF_VAR_، ثم terraform.tfvars، ثم *.auto.tfvars، ثم -varlocalحساب جوه الملف.
local.name مش var.nameالموديول
module "note" وsource، والمخرج module.note.pathpath.moduleفولدر البلوك.
path.root فولدر الأمرأسماء ثابتة
for_each على map. count بيزحزح الأرقامانحرافمسح من الكونسول والرسمة لسه طالبه يخلّي الخطة
createخلّصت الموضوع لما
🧠 اختبر نفسك
١) إيه اللي يتحط في git: الـ lock ولا الـ state؟
ملف
.terraform.lock.hcl. الـ state لأ.٢) خطة فيها -/+ على سيرفر إنتاج. تعمل apply على طول؟
اقرأها الأول. الرمز ده استبدال، مش تعديل في مكانه.
٣) عايز نسختين بأسماء a وb وممكن تشيل واحدة. count ولا for_each؟
for_each، عشان العنوان بالمفتاح ومسح واحد ميهزش التاني.