{"id":32471,"date":"2023-01-11T02:21:46","date_gmt":"2023-01-11T02:21:46","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=32471"},"modified":"2023-04-03T07:03:46","modified_gmt":"2023-04-03T07:03:46","slug":"terraform-variable-example","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/terraform-variable-example\/","title":{"rendered":"Terraform Variable Example: Azure &#038; AWS"},"content":{"rendered":"\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Terraform Variable AWS Example<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">variable <span class=\"hljs-string\">\"instance_count\"<\/span> {\n  type = number\n  <span class=\"hljs-keyword\">default<\/span> = <span class=\"hljs-number\">1<\/span>\n}\n\nvariable <span class=\"hljs-string\">\"region\"<\/span> {\n  type = string\n  <span class=\"hljs-keyword\">default<\/span> = <span class=\"hljs-string\">\"us-east-1\"<\/span>\n}\n\nvariable <span class=\"hljs-string\">\"instance_name\"<\/span> {\n  type = string\n  <span class=\"hljs-keyword\">default<\/span> = <span class=\"hljs-string\">\"devopsschool-instance\"<\/span>\n}\n\nvariable <span class=\"hljs-string\">\"security_groups\"<\/span> {\n  type = <span class=\"hljs-keyword\">list<\/span>(string)\n  <span class=\"hljs-keyword\">default<\/span> = &#91;<span class=\"hljs-string\">\"default\"<\/span>, <span class=\"hljs-string\">\"launch-wizard-1\"<\/span>, <span class=\"hljs-string\">\"launch-wizard-2\"<\/span>]\n}\n\nvariable <span class=\"hljs-string\">\"amis\"<\/span> {\n  type = map\n  <span class=\"hljs-keyword\">default<\/span> = {\n    <span class=\"hljs-string\">\"us-east-1\"<\/span> = <span class=\"hljs-string\">\"ami-007855ac798b5175e\"<\/span>\n    <span class=\"hljs-string\">\"us-west-2\"<\/span> = <span class=\"hljs-string\">\"ami-4b32be2b\"<\/span>\n  }\n}\n\nvariable <span class=\"hljs-string\">\"create_vm\"<\/span> {\n  description = <span class=\"hljs-string\">\"If set to true, it will create vm\"<\/span>\n   type   = bool\n}\n\nresource <span class=\"hljs-string\">\"aws_instance\"<\/span> <span class=\"hljs-string\">\"example\"<\/span> {\n  count = <span class=\"hljs-keyword\">var<\/span>.instance_count\n  ami           = <span class=\"hljs-keyword\">var<\/span>.amis&#91;<span class=\"hljs-keyword\">var<\/span>.region]\n  instance_type = <span class=\"hljs-string\">\"t2.micro\"<\/span>\n  vpc_security_group_ids = <span class=\"hljs-keyword\">var<\/span>.security_groups\n  tags = {\n    Name = <span class=\"hljs-keyword\">var<\/span>.instance_name\n  }\n}\n\nresource <span class=\"hljs-string\">\"aws_instance\"<\/span> <span class=\"hljs-string\">\"example1\"<\/span> {\n  count = <span class=\"hljs-keyword\">var<\/span>.create_vm ? <span class=\"hljs-number\">1<\/span> : <span class=\"hljs-number\">0<\/span>\n  ami           = <span class=\"hljs-keyword\">var<\/span>.amis&#91;<span class=\"hljs-keyword\">var<\/span>.region]\n  instance_type = <span class=\"hljs-string\">\"t2.micro\"<\/span>\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Terraform Variable Azure Example<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">\nvariable <span class=\"hljs-string\">\"numofrg\"<\/span> {\n  type = number\n  description = <span class=\"hljs-string\">\"This is for demo of number variable\"<\/span>\n  <span class=\"hljs-keyword\">default<\/span> = <span class=\"hljs-number\">3<\/span>\n}\n\nvariable <span class=\"hljs-string\">\"grpname\"<\/span> {\n  type = string\n  description = <span class=\"hljs-string\">\"This is for demo of string variable\"<\/span>\n  <span class=\"hljs-keyword\">default<\/span> = <span class=\"hljs-string\">\"devopsschool-grp\"<\/span>\n}\n\nvariable <span class=\"hljs-string\">\"users\"<\/span> {\n    type    = <span class=\"hljs-keyword\">list<\/span>\n    <span class=\"hljs-keyword\">default<\/span> = &#91;<span class=\"hljs-string\">\"devops-school-1\"<\/span>, <span class=\"hljs-string\">\"devops-school-2\"<\/span>, <span class=\"hljs-string\">\"devops-school-3\"<\/span>]\n    description = <span class=\"hljs-string\">\"This is for demo of list variable\"<\/span>\n}\n\nvariable <span class=\"hljs-string\">\"grps\"<\/span> {\n  type = map\n  <span class=\"hljs-keyword\">default<\/span> \t= {\n    one = <span class=\"hljs-string\">\"hello1\"<\/span>\n    two = <span class=\"hljs-string\">\"hello2\"<\/span>\n  }\n}\nresource <span class=\"hljs-string\">\"azurerm_resource_group\"<\/span> <span class=\"hljs-string\">\"mapdemo1\"<\/span> {\n  name     = <span class=\"hljs-keyword\">var<\/span>.grps&#91;<span class=\"hljs-string\">\"one\"<\/span>]\n  location = <span class=\"hljs-string\">\"South India\"<\/span>\n}\n\noutput <span class=\"hljs-string\">\"resource_group\"<\/span> { \n\tvalue = azurerm_resource_group.mapdemo1.grps&#91;<span class=\"hljs-string\">\"one\"<\/span>]\n }\n\nresource <span class=\"hljs-string\">\"azurerm_resource_group\"<\/span> <span class=\"hljs-string\">\"mapdemo2\"<\/span> {\n  name     = <span class=\"hljs-keyword\">var<\/span>.grps&#91;<span class=\"hljs-string\">\"two\"<\/span>]\n  location = <span class=\"hljs-string\">\"South India\"<\/span>\n}\n\nresource <span class=\"hljs-string\">\"azurerm_resource_group\"<\/span> <span class=\"hljs-string\">\"listdemo\"<\/span> {\n  name     = <span class=\"hljs-keyword\">var<\/span>.users&#91;<span class=\"hljs-number\">0<\/span>]\n  location = <span class=\"hljs-string\">\"South India\"<\/span>\n}\n\nresource <span class=\"hljs-string\">\"azurerm_resource_group\"<\/span> <span class=\"hljs-string\">\"listdemo1\"<\/span> {\n  name     = <span class=\"hljs-keyword\">var<\/span>.users&#91;<span class=\"hljs-number\">1<\/span>]\n  location = <span class=\"hljs-string\">\"South India\"<\/span>\n}\n\nresource <span class=\"hljs-string\">\"azurerm_resource_group\"<\/span> <span class=\"hljs-string\">\"listdemo2\"<\/span> {\n  name     = <span class=\"hljs-keyword\">var<\/span>.users&#91;<span class=\"hljs-number\">2<\/span>]\n  location = <span class=\"hljs-string\">\"South India\"<\/span>\n}\n\nresource <span class=\"hljs-string\">\"azurerm_resource_group\"<\/span> <span class=\"hljs-string\">\"example1\"<\/span> {\n  name     = <span class=\"hljs-keyword\">var<\/span>.grpname\n  location = <span class=\"hljs-string\">\"South India\"<\/span>\n}\n\nresource <span class=\"hljs-string\">\"azurerm_resource_group\"<\/span> <span class=\"hljs-string\">\"example\"<\/span> {\n  count = <span class=\"hljs-keyword\">var<\/span>.numofrg\n  name     = <span class=\"hljs-string\">\"devopsschool-${count.index}\"<\/span>\n  location = <span class=\"hljs-string\">\"South India\"<\/span>\n}\n\noutput <span class=\"hljs-string\">\"resource_group4\"<\/span> { \n\tvalue = azurerm_resource_group.example1.name\n }\n \n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n","protected":false},"excerpt":{"rendered":"<p>Terraform Variable AWS Example Terraform Variable Azure Example<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","_joinchat":[],"footnotes":""},"categories":[2],"tags":[],"class_list":["post-32471","post","type-post","status-publish","format-standard","hentry","category-uncategorised"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/32471","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=32471"}],"version-history":[{"count":4,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/32471\/revisions"}],"predecessor-version":[{"id":33179,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/32471\/revisions\/33179"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=32471"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=32471"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=32471"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}