Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What symbol is used for a single-line comment in HCL?
The # or // symbols are used for single-line comments in HCL.
Click to reveal answer
beginner
How do you write a multi-line comment in HCL?
Use /* to start and */ to end a multi-line comment in HCL.
Click to reveal answer
beginner
Why are comments useful in Terraform configuration files?
Comments help explain the purpose of code, making it easier to understand and maintain.
Click to reveal answer
beginner
Can comments affect the behavior of Terraform configurations?
No, comments are ignored by Terraform and do not affect configuration behavior.
Click to reveal answer
beginner
Show an example of a single-line and a multi-line comment in HCL.
Single-line comment: # This is a comment or // This is a comment Multi-line comment: /* This is a multi-line comment */
Click to reveal answer
Which of the following is NOT a valid way to write a comment in HCL?
A<!-- This is a comment -->
B# This is a comment
C// This is a comment
D/* This is a comment */
✗ Incorrect
HCL does not support HTML-style comments like . Use #, //, or /* */ instead.
What happens to comments when Terraform processes a configuration file?
AThey are executed as code
BThey are converted to variables
CThey are ignored
DThey cause errors
✗ Incorrect
Terraform ignores comments; they do not affect the configuration or execution.
Which symbols can start a single-line comment in HCL?
A# and //
B/* and */
C<!-- and -->
D-- and ##
✗ Incorrect
Single-line comments in HCL start with either # or //.
How do you write a multi-line comment in HCL?
AUse <code>--</code> at the start and end
BStart with <code>#</code> on each line
CUse <code>//</code> on each line
DEnclose text between <code>/*</code> and <code>*/</code>
✗ Incorrect
Multi-line comments in HCL are enclosed between /* and */.
Why should you use comments in your Terraform files?
ATo make the code run faster
BTo explain code for better understanding
CTo hide code from Terraform
DTo create variables
✗ Incorrect
Comments help explain the code, making it easier for others (and yourself) to understand and maintain.
Explain how to write single-line and multi-line comments in HCL and why they are important.
Think about how you add notes in a text to help yourself or others understand it later.
You got /4 concepts.
Describe the impact of comments on Terraform configuration behavior.
Consider if Terraform treats comments like code or just skips them.
You got /3 concepts.
Practice
(1/5)
1. What is the purpose of comments in Terraform's HCL language?
easy
A. To explain the code without affecting its execution
B. To execute additional commands
C. To speed up the Terraform apply process
D. To delete unused resources automatically
Solution
Step 1: Understand the role of comments
Comments are notes in code that help explain what the code does but do not change how it runs.
Step 2: Identify the correct purpose
Since comments do not execute or affect resources, their purpose is purely explanatory.
Final Answer:
To explain the code without affecting its execution -> Option A
Quick Check:
Comments explain code [OK]
Hint: Comments never change code behavior, only explain it [OK]
Common Mistakes:
Thinking comments run code
Assuming comments speed up deployment
Believing comments delete resources
2. Which of the following is a valid single-line comment syntax in Terraform HCL?
easy
A. /* This is a comment */
B. # This is a comment
C. -- This is a comment
D. %% This is a comment
Solution
Step 1: Recall single-line comment syntax in HCL
Terraform HCL supports # and // for single-line comments.
Step 2: Match options with valid syntax
# This is a comment uses #, which is valid. /* This is a comment */ is multi-line comment syntax. Options C and D are invalid in HCL.
Final Answer:
# This is a comment -> Option B
Quick Check:
Single-line comment = # or // [OK]
Hint: Single-line comments start with # or // only [OK]
Common Mistakes:
Using -- or %% which are not valid in HCL
Confusing multi-line comment syntax for single-line
Omitting comment symbols
3. What will happen if you run this Terraform code snippet?
resource "aws_instance" "example" {
ami = "ami-123456"
instance_type = "t2.micro" # This is a small instance
// This line is ignored
/* multi-line
comment here */
}
medium
A. Terraform will create an AWS instance ignoring all comments
B. Terraform will throw a syntax error due to comments
C. Terraform will create an instance but ignore the instance_type
D. Terraform will skip the resource block entirely
Solution
Step 1: Understand how comments affect Terraform code
Comments are ignored by Terraform during execution and do not affect resource creation.
Step 2: Analyze the code snippet
The resource block is valid with comments in single-line (#, //) and multi-line (/* */) forms. Terraform will create the instance as specified.
Final Answer:
Terraform will create an AWS instance ignoring all comments -> Option A
Quick Check:
Comments ignored, resource created [OK]
Hint: Comments do not affect resource creation or syntax [OK]
Common Mistakes:
Thinking comments cause syntax errors
Assuming comments disable resource properties
Believing comments skip resource blocks
4. Identify the error in this Terraform snippet:
resource "aws_s3_bucket" "bucket" {
bucket = "my-bucket"
/* This is a multi-line comment
missing the closing tag
medium
A. Single-line comment used incorrectly
B. Incorrect resource type name
C. Bucket name must be numeric
D. Missing closing */ for multi-line comment
Solution
Step 1: Check multi-line comment syntax
Multi-line comments start with /* and must end with */. The snippet lacks the closing */.
Step 2: Confirm other parts are correct
Resource type and bucket name are valid. No single-line comment issues.
Final Answer:
Missing closing */ for multi-line comment -> Option D
Quick Check:
Unclosed multi-line comment [OK]
Hint: Always close multi-line comments with */ [OK]
Common Mistakes:
Forgetting to close multi-line comments
Confusing resource type errors with comment errors
Assuming bucket names must be numeric
5. You want to temporarily disable a block of Terraform code without deleting it. Which comment style should you use to comment out multiple lines safely?
hard
A. Use # at the start of each line
B. Use // at the start of each line
C. Use /* */ to wrap the entire block
D. Use XML style <!-- --> comments
Solution
Step 1: Review comment styles for multiple lines
Single-line comments (# or //) require prefixing each line, which is tedious for many lines.
Step 2: Identify the best multi-line comment method
Using /* */ wraps multiple lines easily, disabling the entire block at once.
Step 3: Exclude invalid options
XML style comments are not valid in HCL.
Final Answer:
Use /* */ to wrap the entire block -> Option C
Quick Check:
Multi-line comments use /* */ [OK]
Hint: Wrap multiple lines with /* and */ to comment out block [OK]
Common Mistakes:
Using # or // for many lines instead of block comment