<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.kamaradski.com/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.kamaradski.com/feed.php">
        <title>wiki.kamaradski.com - terraform</title>
        <description></description>
        <link>https://wiki.kamaradski.com/</link>
        <image rdf:resource="https://wiki.kamaradski.com/lib/exe/fetch.php?media=wiki:logo.png" />
       <dc:date>2026-04-04T11:45:25+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.kamaradski.com/doku.php?id=terraform:conditionalexpressionswithvariables&amp;rev=1719830083&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.kamaradski.com/doku.php?id=terraform:defaultvalues&amp;rev=1719830051&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.kamaradski.com/doku.php?id=terraform:inputvariables&amp;rev=1719827825&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.kamaradski.com/doku.php?id=terraform:list&amp;rev=1729521452&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.kamaradski.com/doku.php?id=terraform:outputvariables&amp;rev=1719828539&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.kamaradski.com/doku.php?id=terraform:providingvaluesforvariables&amp;rev=1719829961&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.kamaradski.com/doku.php?id=terraform:sensitivevariables&amp;rev=1719830020&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.kamaradski.com/doku.php?id=terraform:tuple&amp;rev=1719830541&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.kamaradski.com/doku.php?id=terraform:usingvariablesinconfiguration&amp;rev=1719829886&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.kamaradski.com/doku.php?id=terraform:variabletypeconstraints&amp;rev=1719829857&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.kamaradski.com/doku.php?id=terraform:variablevalidation&amp;rev=1719829986&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.kamaradski.com/lib/exe/fetch.php?media=wiki:logo.png">
        <title>wiki.kamaradski.com</title>
        <link>https://wiki.kamaradski.com/</link>
        <url>https://wiki.kamaradski.com/lib/exe/fetch.php?media=wiki:logo.png</url>
    </image>
    <item rdf:about="https://wiki.kamaradski.com/doku.php?id=terraform:conditionalexpressionswithvariables&amp;rev=1719830083&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-01T10:34:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>conditionalexpressionswithvariables</title>
        <link>https://wiki.kamaradski.com/doku.php?id=terraform:conditionalexpressionswithvariables&amp;rev=1719830083&amp;do=diff</link>
        <description>Conditional Expressions with Variables

Terraform supports conditional expressions that can be used to assign variable values based on conditions.


variable &quot;environment&quot; {
  description = &quot;Deployment environment&quot;
  type        = string
}

resource &quot;aws_instance&quot; &quot;example&quot; {
  ami           = &quot;ami-0c55b159cbfafe1f0&quot;
  instance_type = var.environment == &quot;production&quot; ? &quot;t2.large&quot; : &quot;t2.micro&quot;
}</description>
    </item>
    <item rdf:about="https://wiki.kamaradski.com/doku.php?id=terraform:defaultvalues&amp;rev=1719830051&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-01T10:34:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>defaultvalues</title>
        <link>https://wiki.kamaradski.com/doku.php?id=terraform:defaultvalues&amp;rev=1719830051&amp;do=diff</link>
        <description>Default Values

Variables can have default values, which are used if no other value is provided.


variable &quot;region&quot; {
  description = &quot;AWS region&quot;
  type        = string
  default     = &quot;us-west-2&quot;
}</description>
    </item>
    <item rdf:about="https://wiki.kamaradski.com/doku.php?id=terraform:inputvariables&amp;rev=1719827825&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-01T09:57:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>inputvariables</title>
        <link>https://wiki.kamaradski.com/doku.php?id=terraform:inputvariables&amp;rev=1719827825&amp;do=diff</link>
        <description>Defining Input Variables

Input variables are defined using the variable block. Each variable can have a default value, a type, a description, and other optional parameters.


variable &quot;instance_type&quot; {
  description = &quot;Type of EC2 instance&quot;
  type        = string
  default     = &quot;t2.micro&quot;
}</description>
    </item>
    <item rdf:about="https://wiki.kamaradski.com/doku.php?id=terraform:list&amp;rev=1729521452&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-21T14:37:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>list</title>
        <link>https://wiki.kamaradski.com/doku.php?id=terraform:list&amp;rev=1729521452&amp;do=diff</link>
        <description>Lists

In Terraform, lists are one of the fundamental data types used to store an ordered collection of values. They are particularly useful when you need to manage multiple items of the same type, such as a list of IP addresses, server names, or AWS availability zones.</description>
    </item>
    <item rdf:about="https://wiki.kamaradski.com/doku.php?id=terraform:outputvariables&amp;rev=1719828539&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-01T10:08:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>outputvariables</title>
        <link>https://wiki.kamaradski.com/doku.php?id=terraform:outputvariables&amp;rev=1719828539&amp;do=diff</link>
        <description>Output Variables

Output variables are used to return values from a Terraform configuration. They are useful for passing information to other configurations or tools.


output &quot;instance_id&quot; {
  description = &quot;The ID of the EC2 instance&quot;
  value       = aws_instance.example.id
}

output &quot;instance_public_ip&quot; {
  description = &quot;The public IP address of the EC2 instance&quot;
  value       = aws_instance.example.public_ip
}</description>
    </item>
    <item rdf:about="https://wiki.kamaradski.com/doku.php?id=terraform:providingvaluesforvariables&amp;rev=1719829961&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-01T10:32:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>providingvaluesforvariables</title>
        <link>https://wiki.kamaradski.com/doku.php?id=terraform:providingvaluesforvariables&amp;rev=1719829961&amp;do=diff</link>
        <description>Providing Values for Variables

Values for variables can be provided in several ways:

Command-line Flags

Use the -var option with terraform apply or terraform plan.

terraform apply -var=&quot;instance_type=t2.large&quot;

Variable Definition Files

Define variables in a .tfvars file or .tfvars.json file.</description>
    </item>
    <item rdf:about="https://wiki.kamaradski.com/doku.php?id=terraform:sensitivevariables&amp;rev=1719830020&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-01T10:33:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>sensitivevariables</title>
        <link>https://wiki.kamaradski.com/doku.php?id=terraform:sensitivevariables&amp;rev=1719830020&amp;do=diff</link>
        <description>Sensitive Variables

Sensitive variables are used to store sensitive information like passwords. When marked as sensitive, these variables will not be displayed in the console output.


variable &quot;db_password&quot; {
  description = &quot;The password for the database&quot;
  type        = string
  sensitive   = true
}</description>
    </item>
    <item rdf:about="https://wiki.kamaradski.com/doku.php?id=terraform:tuple&amp;rev=1719830541&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-01T10:42:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>tuple</title>
        <link>https://wiki.kamaradski.com/doku.php?id=terraform:tuple&amp;rev=1719830541&amp;do=diff</link>
        <description>Tuples

In Terraform, a tuple is a sequence of values, identified by their order. Tuples are similar to lists, but they are intended to represent a fixed collection of elements where each element can have a different type.

Defining Tuples

Tuples can be defined using square brackets [] with elements separated by commas. Each element in the tuple can be of a different type.</description>
    </item>
    <item rdf:about="https://wiki.kamaradski.com/doku.php?id=terraform:usingvariablesinconfiguration&amp;rev=1719829886&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-01T10:31:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>usingvariablesinconfiguration</title>
        <link>https://wiki.kamaradski.com/doku.php?id=terraform:usingvariablesinconfiguration&amp;rev=1719829886&amp;do=diff</link>
        <description>Using Variables in Configuration

Variables can be accessed using the var keyword.


resource &quot;aws_instance&quot; &quot;example&quot; {
  ami           = &quot;ami-0c55b159cbfafe1f0&quot;
  instance_type = var.instance_type

  tags = var.instance_tags
}</description>
    </item>
    <item rdf:about="https://wiki.kamaradski.com/doku.php?id=terraform:variabletypeconstraints&amp;rev=1719829857&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-01T10:30:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>variabletypeconstraints</title>
        <link>https://wiki.kamaradski.com/doku.php?id=terraform:variabletypeconstraints&amp;rev=1719829857&amp;do=diff</link>
        <description>Variable Type Constraints

You can specify the type of a variable to enforce that the provided value matches the expected type.


variable &quot;vpc_cidr_block&quot; {
  description = &quot;CIDR block for the VPC&quot;
  type        = string
}

variable &quot;availability_zones&quot; {
  description = &quot;List of availability zones&quot;
  type        = list(string)
}

variable &quot;instance_tags&quot; {
  description = &quot;Map of tags to assign to the instance&quot;
  type        = map(string)
}</description>
    </item>
    <item rdf:about="https://wiki.kamaradski.com/doku.php?id=terraform:variablevalidation&amp;rev=1719829986&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-01T10:33:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>variablevalidation</title>
        <link>https://wiki.kamaradski.com/doku.php?id=terraform:variablevalidation&amp;rev=1719829986&amp;do=diff</link>
        <description>Variable Validation

You can add validation rules to ensure that input values meet certain criteria.


variable &quot;instance_type&quot; {
  description = &quot;Type of EC2 instance&quot;
  type        = string
  default     = &quot;t2.micro&quot;

  validation {
    condition     = contains([&quot;t2.micro&quot;, &quot;t2.small&quot;, &quot;t2.medium&quot;], var.instance_type)
    error_message = &quot;Instance type must be one of t2.micro, t2.small, or t2.medium.&quot;
  }
}</description>
    </item>
</rdf:RDF>
