DEV Community

Jeyakanth Thangam
Jeyakanth Thangam

Posted on

Terraform built-in functions interview questions

Terraform General Questions

1. What are Terraform built-in functions, and how are they used in configurations?
Terraform built-in functions are pre-defined functions that help manipulate strings, numbers, collections, and more. They are used inside expressions within Terraform configurations.

2. How do Terraform functions help in making configurations dynamic?
Functions allow transformations and calculations on variables, making configurations flexible and reusable. For example, using join(“,”, var.list) to dynamically create a comma-separated string.

3. What are the different categories of functions in Terraform?

Terraform functions are categorized into:

  • String Functions (join(), split())
  • Numeric Functions (max(), min())
  • Collection Functions (length(), merge())
  • Filesystem Functions (file(), fileexists())
  • Type Conversion Functions (tostring(), tonumber())
  • IP Address Functions (cidrsubnet())
  • Date & Time Functions (timestamp())

String Functions

How does the join() function work in Terraform? Provide an example.
join() concatenates elements of a list with a separator.

join(", ", ["apple", "banana", "cherry"]) // Output: "apple, banana, cherry"
Enter fullscreen mode Exit fullscreen mode

2. What is the difference between replace() and regex() functions?
replace() replaces a substring with another string.

replace("hello world", "world", "Terraform") // Output: "hello Terraform"
Enter fullscreen mode Exit fullscreen mode

regex() extracts matching text using a regex pattern.

regex("Hello (.+)", "Hello Terraform") // Output: "Terraform"
Enter fullscreen mode Exit fullscreen mode

3. How can you convert a string to lowercase in Terraform?
Use the lower() function:

lower("HELLO") // Output: "hello"
Enter fullscreen mode Exit fullscreen mode

4. How does the split() function work?
It splits a string into a list based on a delimiter.

split(",", "a,b,c") // Output: ["a", "b", "c"]
Enter fullscreen mode Exit fullscreen mode

Numeric Functions

1. What is the purpose of the max() and min() functions?
max() returns the largest value, while min() returns the smallest.

max(3, 5, 9) // Output: 9
Enter fullscreen mode Exit fullscreen mode

2. How does ceil() and floor() work in Terraform?
ceil() rounds a number up to the nearest whole number.

ceil(4.2) // Output: 5
Enter fullscreen mode Exit fullscreen mode

floor() rounds down.

floor(4.8) // Output: 4
Enter fullscreen mode Exit fullscreen mode

3. Can you explain how the abs() function is used in Terraform?
abs() returns the absolute value of a number.

abs(-10) // Output: 10
Enter fullscreen mode Exit fullscreen mode

Top comments (0)