𝐈𝐧-𝐝𝐞𝐩𝐭𝐡 𝐋𝐢𝐟𝐞𝐜𝐲𝐜𝐥𝐞 𝐨𝐟 𝐓𝐞𝐫𝐫𝐚𝐟𝐨𝐫𝐦 (𝐈𝐀𝐂)
1. terraform init
2. terraform fmt
3. terraform validate
4. terraform plan
5. terraform apply
1. 𝐭𝐞𝐫𝐫𝐚𝐟𝐨𝐫𝐦 𝐢𝐧𝐢𝐭
These is first stage of lifecycle where terraform creates files/directory,
a) file 1
→ 𝐭𝐞𝐫𝐫𝐚𝐟𝐨𝐫𝐦.𝐥𝐨𝐜𝐤.𝐡𝐜𝐥 file, this keeps the record of providers version and helps us to avoid compatibility issues while changing the versions of providers.
→ also, we can update the version from older version using command
𝐭𝐞𝐫𝐫𝐚𝐟𝐨𝐫𝐦 𝐢𝐧𝐢𝐭 -𝐮𝐩𝐠𝐫𝐚𝐝𝐞
b) folder 1 → These folder will have 2 files, first is license file and 2nd is provider.exe file which helps us terraform to interact with REST API
2. 𝐭𝐞𝐫𝐫𝐚𝐟𝐨𝐫𝐦 𝐟𝐦𝐭
In this phase, it beautifies the file i.e format the file to more readable format
3. 𝐭𝐞𝐫𝐫𝐚𝐟𝐨𝐫𝐦 𝐯𝐚𝐥𝐢𝐝𝐚𝐭𝐞
→ In this phase, it check for any syntax error eg: missing {}, :, :
→ Since we will be creating a huge infrastructure automation like Onboarding, Provisioning Azure Virtual Machines, Implementing Azure Policy & RBAC.
4. 𝐭𝐞𝐫𝐫𝐚𝐟𝐨𝐫𝐦 𝐩𝐥𝐚𝐧
→In this phase, it gives an overview of what exactly will be done once we execute the plan, example: how many resources will be created, destroyed or changed once we execute the plan will be shown here.
5. 𝐭𝐞𝐫𝐫𝐚𝐟𝐨𝐫𝐦 𝐚𝐩𝐩𝐥𝐲
→In this phase, the actual execution of all the plan happens and terraform will try to create, destroy or change the resources of the given cloud provider, example creating azure resource groups.
→ Here, it also creates a state file, namely 𝐭𝐞𝐫𝐫𝐚𝐟𝐨𝐫𝐦.𝐭𝐟𝐬𝐭𝐚𝐭𝐞.𝐛𝐚𝐜𝐤𝐮𝐩 𝐟𝐢𝐥𝐞 & 𝐭𝐞𝐫𝐫𝐚𝐟𝐨𝐫𝐦.𝐭𝐟𝐬𝐭𝐚𝐭𝐞 𝐟𝐢𝐥𝐞 which keeps the all the run history showing the changes made to Infrastructure or what modifications are made in these run.

Comments
Post a Comment