Question : The Nautilus DevOps team is working on automating infrastructure deployment using AWS CloudFormation. As part of this effort, they need to create a CloudFormation stack that provisions an S3 bucket with versioning enabled.
Create a CloudFormation stack named datacenter-stack using Terraform. This stack should contain an S3 bucket named datacenter-bucket-29110 as a resource, and the bucket must have versioning enabled. The Terraform working directory is /home/bob/terraform. Create the main.tf file (do not create a different .tf file) to accomplish this task.
Note: Right-click under the EXPLORER section in VS Code and select Open in Integrated Terminal to launch the terminal.
Please Note:- Perform the below commands based on your question server, user name & other details that might differ as per the task.
1. In VS Code Editor create a new file main.tf
(Refer Video below for better understanding )
Code you will get on Git Lab repository
https://gitlab.com/nb-tech-support/devops/-/blob/master/Terraform
resource "aws_cloudformation_stack" "datacenterstack" {
name = "datacenter-stack"
parameters = {
BucketName = "datacenter-bucket-29110"
}
# Use a heredoc for cleaner inline JSON
template_body = <<EOF
{
"AWSTemplateFormatVersion": "2010-09-09",
"Parameters": {
"BucketName": {
"Type": "String",
"Default": "datacenter-bucket-29110"
}
},
"Resources": {
"datacenterBucket29110": {
"Type": "AWS::S3::Bucket",
"Properties": {
"BucketName": {
"Ref": "BucketName"
},
"VersioningConfiguration": {
"Status": "Enabled"
}
}
}
}
}
EOF |
terraform init terraform plan terraform apply |
3. Click on Finish & Confirm to complete the task successful
Happy Learning!!!!
0 Comments