diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 0ff4132..729ad01 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -4,7 +4,7 @@ repos: hooks: - id: terraform_fmt - id: terraform_tflint - exclude: CHAP07/privatemodule + exclude: CHAP07/privatemodule|CHAP12/preventdestroy/ - id: terraform_validate exclude: CHAP02/version|CHAP06/validate|CHAP07/privatemodule|CHAP07/moduledemo/myapp-loop - id: terraform_tfsec diff --git a/CHAP12/ansible-inventory/main.tf b/CHAP12/ansible-inventory/main.tf index adaf850..80b3992 100755 --- a/CHAP12/ansible-inventory/main.tf +++ b/CHAP12/ansible-inventory/main.tf @@ -9,6 +9,10 @@ terraform { source = "hashicorp/random" version = "3.5.1" } + local = { + source = "hashicorp/local" + version = "2.4.0" + } } } @@ -18,16 +22,6 @@ resource "random_string" "random" { upper = false } -variable "virtual_machines" { - default = [ - { - dns = "test1.test.cloud" - index = "01" - address_ip = "0.0.0.1" - } - ] -} - provider "azurerm" { features { @@ -63,6 +57,7 @@ resource "azurerm_subnet" "snet1" { module "linuxservers" { source = "Azure/compute/azurerm" + version = "5.3.0" resource_group_name = azurerm_resource_group.rg.name vm_os_simple = "UbuntuServer" nb_instances = 2 @@ -74,8 +69,6 @@ module "linuxservers" { admin_password = "test123*" } - - resource "local_file" "inventory" { filename = "inventory" content = templatefile("template-inventory.tpl", diff --git a/CHAP12/cert/.terraform.lock.hcl b/CHAP12/cert/.terraform.lock.hcl new file mode 100644 index 0000000..e7df9f8 --- /dev/null +++ b/CHAP12/cert/.terraform.lock.hcl @@ -0,0 +1,83 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/chilicat/pkcs12" { + version = "0.0.7" + constraints = "0.0.7" + hashes = [ + "h1:YH7CVRfoqapMV0Vra8EXqR1ziOJ54m4dSl0w48tlzkU=", + "zh:0890343e35d99263280abb8c8e035aa7ae0e201619a134b4a01076b27614124b", + "zh:13aabd4e1d383990d0bc7520b46710c3774b19bf63cb2e7a1065e6bfea6c91e8", + "zh:1aa060e180359f216c05b8f9d24bff290b489f1d21c0c9afc0d723244168c5db", + "zh:22f0e40d149d3c634bc6918f33e8893f1d99bda6779a99d33f9ac36c90409533", + "zh:2ffebc8d12a5acd7d06373dc2d6e83db1f48bc19cfa1df41e992cc064a0e2a00", + "zh:34e6a466a7b5b1ca5d6c6f86254d3ac5afaa12a51d1ee354c93957f251f8db6d", + "zh:3737926802592fe2aa07d798fc9acc5626351ce5fbc35bc65513f4adc8448657", + "zh:a7087d650efc7a492d024d556eb9b8bb5c402495cf9ed6d74c73fa8f6ba373fe", + "zh:bf1c4e55ccd918083d286aa483e81d6f05bae0337674f6e66971f63dbdc9cce0", + "zh:cca35bb97f3bac0ff161793c910156fd9ba67ee16e6fa46cc9d08bb04594a90a", + "zh:d71d85d11631350310be495b65c5ede34c30224cfdc4a59c9c10875ccf290507", + "zh:efd1eff32db110d1a1402ae4dd6f1e82b2f2c233fbf28fd451d95f9eb8593b51", + "zh:f367e41e63267d108e4de9ade6b491935f9dd624c0d6d80627ab3d483673b0d7", + "zh:f7b169cac88e712fecd0873b7099a43aade86819106dc53c9a13c69116ca2a5e", + ] +} + +provider "registry.terraform.io/hashicorp/local" { + version = "2.4.0" + hashes = [ + "h1:R97FTYETo88sT2VHfMgkPU3lzCsZLunPftjSI5vfKe8=", + "zh:53604cd29cb92538668fe09565c739358dc53ca56f9f11312b9d7de81e48fab9", + "zh:66a46e9c508716a1c98efbf793092f03d50049fa4a83cd6b2251e9a06aca2acf", + "zh:70a6f6a852dd83768d0778ce9817d81d4b3f073fab8fa570bff92dcb0824f732", + "zh:78d5eefdd9e494defcb3c68d282b8f96630502cac21d1ea161f53cfe9bb483b3", + "zh:82a803f2f484c8b766e2e9c32343e9c89b91997b9f8d2697f9f3837f62926b35", + "zh:9708a4e40d6cc4b8afd1352e5186e6e1502f6ae599867c120967aebe9d90ed04", + "zh:973f65ce0d67c585f4ec250c1e634c9b22d9c4288b484ee2a871d7fa1e317406", + "zh:c8fa0f98f9316e4cfef082aa9b785ba16e36ff754d6aba8b456dab9500e671c6", + "zh:cfa5342a5f5188b20db246c73ac823918c189468e1382cb3c48a9c0c08fc5bf7", + "zh:e0e2b477c7e899c63b06b38cd8684a893d834d6d0b5e9b033cedc06dd7ffe9e2", + "zh:f62d7d05ea1ee566f732505200ab38d94315a4add27947a60afa29860822d3fc", + "zh:fa7ce69dde358e172bd719014ad637634bbdabc49363104f4fca759b4b73f2ce", + ] +} + +provider "registry.terraform.io/hashicorp/random" { + version = "3.5.1" + constraints = "3.5.1" + hashes = [ + "h1:VSnd9ZIPyfKHOObuQCaKfnjIHRtR7qTw19Rz8tJxm+k=", + "zh:04e3fbd610cb52c1017d282531364b9c53ef72b6bc533acb2a90671957324a64", + "zh:119197103301ebaf7efb91df8f0b6e0dd31e6ff943d231af35ee1831c599188d", + "zh:4d2b219d09abf3b1bb4df93d399ed156cadd61f44ad3baf5cf2954df2fba0831", + "zh:6130bdde527587bbe2dcaa7150363e96dbc5250ea20154176d82bc69df5d4ce3", + "zh:6cc326cd4000f724d3086ee05587e7710f032f94fc9af35e96a386a1c6f2214f", + "zh:78d5eefdd9e494defcb3c68d282b8f96630502cac21d1ea161f53cfe9bb483b3", + "zh:b6d88e1d28cf2dfa24e9fdcc3efc77adcdc1c3c3b5c7ce503a423efbdd6de57b", + "zh:ba74c592622ecbcef9dc2a4d81ed321c4e44cddf7da799faa324da9bf52a22b2", + "zh:c7c5cde98fe4ef1143bd1b3ec5dc04baf0d4cc3ca2c5c7d40d17c0e9b2076865", + "zh:dac4bad52c940cd0dfc27893507c1e92393846b024c5a9db159a93c534a3da03", + "zh:de8febe2a2acd9ac454b844a4106ed295ae9520ef54dc8ed2faf29f12716b602", + "zh:eab0d0495e7e711cca367f7d4df6e322e6c562fc52151ec931176115b83ed014", + ] +} + +provider "registry.terraform.io/hashicorp/tls" { + version = "4.0.4" + constraints = "4.0.4" + hashes = [ + "h1:pe9vq86dZZKCm+8k1RhzARwENslF3SXb9ErHbQfgjXU=", + "zh:23671ed83e1fcf79745534841e10291bbf34046b27d6e68a5d0aab77206f4a55", + "zh:45292421211ffd9e8e3eb3655677700e3c5047f71d8f7650d2ce30242335f848", + "zh:59fedb519f4433c0fdb1d58b27c210b27415fddd0cd73c5312530b4309c088be", + "zh:5a8eec2409a9ff7cd0758a9d818c74bcba92a240e6c5e54b99df68fff312bbd5", + "zh:5e6a4b39f3171f53292ab88058a59e64825f2b842760a4869e64dc1dc093d1fe", + "zh:810547d0bf9311d21c81cc306126d3547e7bd3f194fc295836acf164b9f8424e", + "zh:824a5f3617624243bed0259d7dd37d76017097dc3193dac669be342b90b2ab48", + "zh:9361ccc7048be5dcbc2fafe2d8216939765b3160bd52734f7a9fd917a39ecbd8", + "zh:aa02ea625aaf672e649296bce7580f62d724268189fe9ad7c1b36bb0fa12fa60", + "zh:c71b4cd40d6ec7815dfeefd57d88bc592c0c42f5e5858dcc88245d371b4b8b1e", + "zh:dabcd52f36b43d250a3d71ad7abfa07b5622c69068d989e60b79b2bb4f220316", + "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", + ] +} diff --git a/CHAP12/cert/main.tf b/CHAP12/cert/main.tf index dc26a55..f05288a 100644 --- a/CHAP12/cert/main.tf +++ b/CHAP12/cert/main.tf @@ -1,4 +1,5 @@ terraform { + required_version = "~> 1.1" required_providers { tls = { source = "hashicorp/tls" @@ -12,6 +13,10 @@ terraform { source = "hashicorp/random" version = "3.5.1" } + local = { + source = "hashicorp/local" + version = "2.4.0" + } } } diff --git a/CHAP12/demogrunt-wrapper/.terraform.lock.hcl b/CHAP12/demogrunt-wrapper/.terraform.lock.hcl new file mode 100644 index 0000000..5cbb349 --- /dev/null +++ b/CHAP12/demogrunt-wrapper/.terraform.lock.hcl @@ -0,0 +1,42 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/hashicorp/azurerm" { + version = "3.70.0" + constraints = "~> 3.23" + hashes = [ + "h1:jgxJjER0Odm7FCoPrd0Y+mFK6snGHFLDGJo+XkrKlZM=", + "zh:0b8a1fdce4406e066ad3f4cfe7217cdde83ff980c9d145dcea3de715b211bd46", + "zh:0cd04221c0242c579a4ab27aeb6f4d97cff26a23e8863d38d32c06a339791356", + "zh:4afa2e6d89f9e352402caee1a93ebe239218fb54c761d3170ed6acb70929455d", + "zh:62ba9870786632150ea806fa3e034fa4f822b8f4d17422033b21ed98001994cf", + "zh:762502f741936f4831692b32e7fe2f665001eec83cd18e65804fa04a02a0a311", + "zh:887c0e35e79fdb4a6740c232c683adc5344067f0297c28646d6f811b33501c6c", + "zh:927baea8f6a399782c9f53f8035f8abe306cdde2382b31ab982a0b5a975a98ab", + "zh:9d10f8821b23c331cb39fa275aaa298968344a7849ca72dc5dc7d6c04b4df4ec", + "zh:a6d907e78f78dc944c941d9853836b08f1402727026f9b9183a33f4302e39e1b", + "zh:a8f81fd109c3e0e662a0067cc5a2d4828f4906c07cb05d8e91a1c5b3fa09818f", + "zh:ba89168e9ca8144c84503071fe0498cced288965314cba40962a6b71cfcd5a4b", + "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", + ] +} + +provider "registry.terraform.io/hashicorp/random" { + version = "2.3.0" + constraints = "2.3.0" + hashes = [ + "h1:nFL6uiwsQFLiP8QCr35sPfWe9LpXI3/c7gP9tYnih+k=", + "zh:122814e4e79ca4970566b4a43734f3cb4fac46e8946325d081d69495ceb3de6e", + "zh:14957b9817aa1b41650527bbb88da65fdd40b09b61cabb03700b4e221c07505d", + "zh:83b24a7b908a9a742a87a001dbce05f73f00370d241524024623a166a6944f5a", + "zh:ad30a315c280594e14936d5062dbe4d71181cad1d0ca50af045473b74b914c78", + "zh:b491095b0f901c97a7f1ac590e5f5de999e4161e06c49bf1742fdd30b60d5d2b", + "zh:be9324532150575cff2e110e989cd9a2b4ddc4ec30df35ee1d8a79e74d8ee73e", + "zh:c9567d2f22ef8ec72f9c5ad7c9d0aff0e7f034794861ed2029507a25572f80ee", + "zh:cde800a7b5cb3bf899f376a2d3c6f21069cdfe264220b784d4e8904e2e29076f", + "zh:d709418753240e0e063c68bda428cd0f14a07b05b08a9578155cea99267907bd", + "zh:d8c5a06bfb4f024a02847f9b02cb581de891c663fd1f41e48f7b70edf42c6281", + "zh:e6c508b9ca046e0a2c4452dd86d0ae67bc6aeab45e225a5a54d37b6570545d78", + "zh:fef15025713218a0225445aeeaedf84fa2e0d351b98a2216de9643d1fb57ac60", + ] +} diff --git a/CHAP12/demogrunt-wrapper/main.tf b/CHAP12/demogrunt-wrapper/main.tf index a5c71cd..90a697e 100755 --- a/CHAP12/demogrunt-wrapper/main.tf +++ b/CHAP12/demogrunt-wrapper/main.tf @@ -1,5 +1,3 @@ - - terraform { required_version = "~> 1.1" backend "local" {} @@ -18,12 +16,6 @@ provider "azurerm" { features {} } -locals { - common_app_settings = { - "INSTRUMENTATIONKEY" = azurerm_application_insights.appinsight-app.instrumentation_key - } -} - resource "random_string" "random" { length = 4 special = false diff --git a/CHAP12/demogrunt-wrapper/variables.tf b/CHAP12/demogrunt-wrapper/variables.tf index 8a25608..fcfffb3 100755 --- a/CHAP12/demogrunt-wrapper/variables.tf +++ b/CHAP12/demogrunt-wrapper/variables.tf @@ -25,13 +25,6 @@ variable "environment" { description = "Environment Name" } - -variable "custom_app_settings" { - type = map(string) - description = "Custom App settings" - default = {} -} - variable "createdby" { type = string description = "name of the triggers user" diff --git a/CHAP12/demogrunt/dev/network/.terraform.lock.hcl b/CHAP12/demogrunt/dev/network/.terraform.lock.hcl new file mode 100644 index 0000000..c614dd2 --- /dev/null +++ b/CHAP12/demogrunt/dev/network/.terraform.lock.hcl @@ -0,0 +1,22 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/hashicorp/azurerm" { + version = "3.70.0" + constraints = "~> 3.35" + hashes = [ + "h1:jgxJjER0Odm7FCoPrd0Y+mFK6snGHFLDGJo+XkrKlZM=", + "zh:0b8a1fdce4406e066ad3f4cfe7217cdde83ff980c9d145dcea3de715b211bd46", + "zh:0cd04221c0242c579a4ab27aeb6f4d97cff26a23e8863d38d32c06a339791356", + "zh:4afa2e6d89f9e352402caee1a93ebe239218fb54c761d3170ed6acb70929455d", + "zh:62ba9870786632150ea806fa3e034fa4f822b8f4d17422033b21ed98001994cf", + "zh:762502f741936f4831692b32e7fe2f665001eec83cd18e65804fa04a02a0a311", + "zh:887c0e35e79fdb4a6740c232c683adc5344067f0297c28646d6f811b33501c6c", + "zh:927baea8f6a399782c9f53f8035f8abe306cdde2382b31ab982a0b5a975a98ab", + "zh:9d10f8821b23c331cb39fa275aaa298968344a7849ca72dc5dc7d6c04b4df4ec", + "zh:a6d907e78f78dc944c941d9853836b08f1402727026f9b9183a33f4302e39e1b", + "zh:a8f81fd109c3e0e662a0067cc5a2d4828f4906c07cb05d8e91a1c5b3fa09818f", + "zh:ba89168e9ca8144c84503071fe0498cced288965314cba40962a6b71cfcd5a4b", + "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", + ] +} diff --git a/CHAP12/demogrunt/dev/network/main.tf b/CHAP12/demogrunt/dev/network/main.tf index 21c1136..b6cbb9d 100755 --- a/CHAP12/demogrunt/dev/network/main.tf +++ b/CHAP12/demogrunt/dev/network/main.tf @@ -1,3 +1,11 @@ +terraform { + required_version = "~> 1.1" + required_providers { + azurerm = { + version = "~> 3.35" + } + } +} provider "azurerm" { features {} @@ -14,7 +22,6 @@ resource "azurerm_virtual_network" "vnet" { } } - resource "azurerm_subnet" "subnet" { name = var.subnet_name resource_group_name = var.resource_group_name diff --git a/CHAP12/demogrunt/dev/rg/.terraform.lock.hcl b/CHAP12/demogrunt/dev/rg/.terraform.lock.hcl new file mode 100644 index 0000000..c614dd2 --- /dev/null +++ b/CHAP12/demogrunt/dev/rg/.terraform.lock.hcl @@ -0,0 +1,22 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/hashicorp/azurerm" { + version = "3.70.0" + constraints = "~> 3.35" + hashes = [ + "h1:jgxJjER0Odm7FCoPrd0Y+mFK6snGHFLDGJo+XkrKlZM=", + "zh:0b8a1fdce4406e066ad3f4cfe7217cdde83ff980c9d145dcea3de715b211bd46", + "zh:0cd04221c0242c579a4ab27aeb6f4d97cff26a23e8863d38d32c06a339791356", + "zh:4afa2e6d89f9e352402caee1a93ebe239218fb54c761d3170ed6acb70929455d", + "zh:62ba9870786632150ea806fa3e034fa4f822b8f4d17422033b21ed98001994cf", + "zh:762502f741936f4831692b32e7fe2f665001eec83cd18e65804fa04a02a0a311", + "zh:887c0e35e79fdb4a6740c232c683adc5344067f0297c28646d6f811b33501c6c", + "zh:927baea8f6a399782c9f53f8035f8abe306cdde2382b31ab982a0b5a975a98ab", + "zh:9d10f8821b23c331cb39fa275aaa298968344a7849ca72dc5dc7d6c04b4df4ec", + "zh:a6d907e78f78dc944c941d9853836b08f1402727026f9b9183a33f4302e39e1b", + "zh:a8f81fd109c3e0e662a0067cc5a2d4828f4906c07cb05d8e91a1c5b3fa09818f", + "zh:ba89168e9ca8144c84503071fe0498cced288965314cba40962a6b71cfcd5a4b", + "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", + ] +} diff --git a/CHAP12/demogrunt/dev/rg/main.tf b/CHAP12/demogrunt/dev/rg/main.tf index 2f38bdc..fb00282 100755 --- a/CHAP12/demogrunt/dev/rg/main.tf +++ b/CHAP12/demogrunt/dev/rg/main.tf @@ -1,3 +1,12 @@ +terraform { + required_version = "~> 1.1" + required_providers { + azurerm = { + version = "~> 3.35" + } + } +} + provider "azurerm" { features {} } diff --git a/CHAP12/demogrunt/dev/rg/variables.tf b/CHAP12/demogrunt/dev/rg/variables.tf index 528dcc9..4530c4c 100755 --- a/CHAP12/demogrunt/dev/rg/variables.tf +++ b/CHAP12/demogrunt/dev/rg/variables.tf @@ -4,4 +4,5 @@ variable "resource_group_name" { variable "location" { default = "West Europe" + type = string } \ No newline at end of file diff --git a/CHAP12/demogrunt/dev/vm-web/.terraform.lock.hcl b/CHAP12/demogrunt/dev/vm-web/.terraform.lock.hcl new file mode 100644 index 0000000..7511da8 --- /dev/null +++ b/CHAP12/demogrunt/dev/vm-web/.terraform.lock.hcl @@ -0,0 +1,42 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/hashicorp/azurerm" { + version = "3.70.0" + constraints = ">= 3.11.0, ~> 3.35, < 4.0.0" + hashes = [ + "h1:jgxJjER0Odm7FCoPrd0Y+mFK6snGHFLDGJo+XkrKlZM=", + "zh:0b8a1fdce4406e066ad3f4cfe7217cdde83ff980c9d145dcea3de715b211bd46", + "zh:0cd04221c0242c579a4ab27aeb6f4d97cff26a23e8863d38d32c06a339791356", + "zh:4afa2e6d89f9e352402caee1a93ebe239218fb54c761d3170ed6acb70929455d", + "zh:62ba9870786632150ea806fa3e034fa4f822b8f4d17422033b21ed98001994cf", + "zh:762502f741936f4831692b32e7fe2f665001eec83cd18e65804fa04a02a0a311", + "zh:887c0e35e79fdb4a6740c232c683adc5344067f0297c28646d6f811b33501c6c", + "zh:927baea8f6a399782c9f53f8035f8abe306cdde2382b31ab982a0b5a975a98ab", + "zh:9d10f8821b23c331cb39fa275aaa298968344a7849ca72dc5dc7d6c04b4df4ec", + "zh:a6d907e78f78dc944c941d9853836b08f1402727026f9b9183a33f4302e39e1b", + "zh:a8f81fd109c3e0e662a0067cc5a2d4828f4906c07cb05d8e91a1c5b3fa09818f", + "zh:ba89168e9ca8144c84503071fe0498cced288965314cba40962a6b71cfcd5a4b", + "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", + ] +} + +provider "registry.terraform.io/hashicorp/random" { + version = "3.5.1" + constraints = ">= 3.0.0" + hashes = [ + "h1:VSnd9ZIPyfKHOObuQCaKfnjIHRtR7qTw19Rz8tJxm+k=", + "zh:04e3fbd610cb52c1017d282531364b9c53ef72b6bc533acb2a90671957324a64", + "zh:119197103301ebaf7efb91df8f0b6e0dd31e6ff943d231af35ee1831c599188d", + "zh:4d2b219d09abf3b1bb4df93d399ed156cadd61f44ad3baf5cf2954df2fba0831", + "zh:6130bdde527587bbe2dcaa7150363e96dbc5250ea20154176d82bc69df5d4ce3", + "zh:6cc326cd4000f724d3086ee05587e7710f032f94fc9af35e96a386a1c6f2214f", + "zh:78d5eefdd9e494defcb3c68d282b8f96630502cac21d1ea161f53cfe9bb483b3", + "zh:b6d88e1d28cf2dfa24e9fdcc3efc77adcdc1c3c3b5c7ce503a423efbdd6de57b", + "zh:ba74c592622ecbcef9dc2a4d81ed321c4e44cddf7da799faa324da9bf52a22b2", + "zh:c7c5cde98fe4ef1143bd1b3ec5dc04baf0d4cc3ca2c5c7d40d17c0e9b2076865", + "zh:dac4bad52c940cd0dfc27893507c1e92393846b024c5a9db159a93c534a3da03", + "zh:de8febe2a2acd9ac454b844a4106ed295ae9520ef54dc8ed2faf29f12716b602", + "zh:eab0d0495e7e711cca367f7d4df6e322e6c562fc52151ec931176115b83ed014", + ] +} diff --git a/CHAP12/demogrunt/dev/vm-web/main.tf b/CHAP12/demogrunt/dev/vm-web/main.tf index 42a073b..dfb76fb 100755 --- a/CHAP12/demogrunt/dev/vm-web/main.tf +++ b/CHAP12/demogrunt/dev/vm-web/main.tf @@ -1,9 +1,16 @@ +terraform { + required_version = "~> 1.1" + required_providers { + azurerm = { + version = "~> 3.35" + } + } +} + provider "azurerm" { features {} } - - data "azurerm_subnet" "subnet" { name = var.subnet_name resource_group_name = var.resource_group_name @@ -13,6 +20,7 @@ data "azurerm_subnet" "subnet" { module "linuxservers" { source = "Azure/compute/azurerm" + version = "5.3.0" resource_group_name = var.resource_group_name vm_os_simple = "UbuntuServer" vnet_subnet_id = data.azurerm_subnet.subnet.id diff --git a/CHAP12/ignorechanges/.terraform.lock.hcl b/CHAP12/ignorechanges/.terraform.lock.hcl new file mode 100644 index 0000000..481d63d --- /dev/null +++ b/CHAP12/ignorechanges/.terraform.lock.hcl @@ -0,0 +1,42 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/hashicorp/azurerm" { + version = "3.70.0" + constraints = "~> 3.23" + hashes = [ + "h1:jgxJjER0Odm7FCoPrd0Y+mFK6snGHFLDGJo+XkrKlZM=", + "zh:0b8a1fdce4406e066ad3f4cfe7217cdde83ff980c9d145dcea3de715b211bd46", + "zh:0cd04221c0242c579a4ab27aeb6f4d97cff26a23e8863d38d32c06a339791356", + "zh:4afa2e6d89f9e352402caee1a93ebe239218fb54c761d3170ed6acb70929455d", + "zh:62ba9870786632150ea806fa3e034fa4f822b8f4d17422033b21ed98001994cf", + "zh:762502f741936f4831692b32e7fe2f665001eec83cd18e65804fa04a02a0a311", + "zh:887c0e35e79fdb4a6740c232c683adc5344067f0297c28646d6f811b33501c6c", + "zh:927baea8f6a399782c9f53f8035f8abe306cdde2382b31ab982a0b5a975a98ab", + "zh:9d10f8821b23c331cb39fa275aaa298968344a7849ca72dc5dc7d6c04b4df4ec", + "zh:a6d907e78f78dc944c941d9853836b08f1402727026f9b9183a33f4302e39e1b", + "zh:a8f81fd109c3e0e662a0067cc5a2d4828f4906c07cb05d8e91a1c5b3fa09818f", + "zh:ba89168e9ca8144c84503071fe0498cced288965314cba40962a6b71cfcd5a4b", + "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", + ] +} + +provider "registry.terraform.io/hashicorp/random" { + version = "3.5.1" + constraints = "3.5.1" + hashes = [ + "h1:VSnd9ZIPyfKHOObuQCaKfnjIHRtR7qTw19Rz8tJxm+k=", + "zh:04e3fbd610cb52c1017d282531364b9c53ef72b6bc533acb2a90671957324a64", + "zh:119197103301ebaf7efb91df8f0b6e0dd31e6ff943d231af35ee1831c599188d", + "zh:4d2b219d09abf3b1bb4df93d399ed156cadd61f44ad3baf5cf2954df2fba0831", + "zh:6130bdde527587bbe2dcaa7150363e96dbc5250ea20154176d82bc69df5d4ce3", + "zh:6cc326cd4000f724d3086ee05587e7710f032f94fc9af35e96a386a1c6f2214f", + "zh:78d5eefdd9e494defcb3c68d282b8f96630502cac21d1ea161f53cfe9bb483b3", + "zh:b6d88e1d28cf2dfa24e9fdcc3efc77adcdc1c3c3b5c7ce503a423efbdd6de57b", + "zh:ba74c592622ecbcef9dc2a4d81ed321c4e44cddf7da799faa324da9bf52a22b2", + "zh:c7c5cde98fe4ef1143bd1b3ec5dc04baf0d4cc3ca2c5c7d40d17c0e9b2076865", + "zh:dac4bad52c940cd0dfc27893507c1e92393846b024c5a9db159a93c534a3da03", + "zh:de8febe2a2acd9ac454b844a4106ed295ae9520ef54dc8ed2faf29f12716b602", + "zh:eab0d0495e7e711cca367f7d4df6e322e6c562fc52151ec931176115b83ed014", + ] +} diff --git a/CHAP12/ignorechanges/variables.tf b/CHAP12/ignorechanges/variables.tf index 15a482d..67ddf44 100755 --- a/CHAP12/ignorechanges/variables.tf +++ b/CHAP12/ignorechanges/variables.tf @@ -1,32 +1,32 @@ variable "resource_group_name" { description = "Resource group name" + type = string } variable "location" { description = "Location of Azure reource" default = "West Europe" + type = string } variable "service_plan_name" { description = "Service plan name" + type = string } variable "app_name" { description = "Name of application" default = "MyAppDemoignorechange" + type = string } variable "environment" { description = "Environment Name" -} - - -variable "custom_app_settings" { - description = "Custom App settings" - default = {} + type = string } variable "createdby" { description = "name of the triggers user" default = "NA" + type = string } diff --git a/CHAP12/precommit-demo/.terraform.lock.hcl b/CHAP12/precommit-demo/.terraform.lock.hcl new file mode 100644 index 0000000..cd076e1 --- /dev/null +++ b/CHAP12/precommit-demo/.terraform.lock.hcl @@ -0,0 +1,22 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/hashicorp/random" { + version = "2.3.0" + constraints = "2.3.0" + hashes = [ + "h1:nFL6uiwsQFLiP8QCr35sPfWe9LpXI3/c7gP9tYnih+k=", + "zh:122814e4e79ca4970566b4a43734f3cb4fac46e8946325d081d69495ceb3de6e", + "zh:14957b9817aa1b41650527bbb88da65fdd40b09b61cabb03700b4e221c07505d", + "zh:83b24a7b908a9a742a87a001dbce05f73f00370d241524024623a166a6944f5a", + "zh:ad30a315c280594e14936d5062dbe4d71181cad1d0ca50af045473b74b914c78", + "zh:b491095b0f901c97a7f1ac590e5f5de999e4161e06c49bf1742fdd30b60d5d2b", + "zh:be9324532150575cff2e110e989cd9a2b4ddc4ec30df35ee1d8a79e74d8ee73e", + "zh:c9567d2f22ef8ec72f9c5ad7c9d0aff0e7f034794861ed2029507a25572f80ee", + "zh:cde800a7b5cb3bf899f376a2d3c6f21069cdfe264220b784d4e8904e2e29076f", + "zh:d709418753240e0e063c68bda428cd0f14a07b05b08a9578155cea99267907bd", + "zh:d8c5a06bfb4f024a02847f9b02cb581de891c663fd1f41e48f7b70edf42c6281", + "zh:e6c508b9ca046e0a2c4452dd86d0ae67bc6aeab45e225a5a54d37b6570545d78", + "zh:fef15025713218a0225445aeeaedf84fa2e0d351b98a2216de9643d1fb57ac60", + ] +} diff --git a/CHAP12/precommit-demo/main.tf b/CHAP12/precommit-demo/main.tf index 44ccc04..145447f 100644 --- a/CHAP12/precommit-demo/main.tf +++ b/CHAP12/precommit-demo/main.tf @@ -16,4 +16,5 @@ resource "random_string" "random" { variable "random_length" { default = 4 + type = number } \ No newline at end of file diff --git a/CHAP12/preventdestroy/.terraform.lock.hcl b/CHAP12/preventdestroy/.terraform.lock.hcl new file mode 100644 index 0000000..481d63d --- /dev/null +++ b/CHAP12/preventdestroy/.terraform.lock.hcl @@ -0,0 +1,42 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/hashicorp/azurerm" { + version = "3.70.0" + constraints = "~> 3.23" + hashes = [ + "h1:jgxJjER0Odm7FCoPrd0Y+mFK6snGHFLDGJo+XkrKlZM=", + "zh:0b8a1fdce4406e066ad3f4cfe7217cdde83ff980c9d145dcea3de715b211bd46", + "zh:0cd04221c0242c579a4ab27aeb6f4d97cff26a23e8863d38d32c06a339791356", + "zh:4afa2e6d89f9e352402caee1a93ebe239218fb54c761d3170ed6acb70929455d", + "zh:62ba9870786632150ea806fa3e034fa4f822b8f4d17422033b21ed98001994cf", + "zh:762502f741936f4831692b32e7fe2f665001eec83cd18e65804fa04a02a0a311", + "zh:887c0e35e79fdb4a6740c232c683adc5344067f0297c28646d6f811b33501c6c", + "zh:927baea8f6a399782c9f53f8035f8abe306cdde2382b31ab982a0b5a975a98ab", + "zh:9d10f8821b23c331cb39fa275aaa298968344a7849ca72dc5dc7d6c04b4df4ec", + "zh:a6d907e78f78dc944c941d9853836b08f1402727026f9b9183a33f4302e39e1b", + "zh:a8f81fd109c3e0e662a0067cc5a2d4828f4906c07cb05d8e91a1c5b3fa09818f", + "zh:ba89168e9ca8144c84503071fe0498cced288965314cba40962a6b71cfcd5a4b", + "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", + ] +} + +provider "registry.terraform.io/hashicorp/random" { + version = "3.5.1" + constraints = "3.5.1" + hashes = [ + "h1:VSnd9ZIPyfKHOObuQCaKfnjIHRtR7qTw19Rz8tJxm+k=", + "zh:04e3fbd610cb52c1017d282531364b9c53ef72b6bc533acb2a90671957324a64", + "zh:119197103301ebaf7efb91df8f0b6e0dd31e6ff943d231af35ee1831c599188d", + "zh:4d2b219d09abf3b1bb4df93d399ed156cadd61f44ad3baf5cf2954df2fba0831", + "zh:6130bdde527587bbe2dcaa7150363e96dbc5250ea20154176d82bc69df5d4ce3", + "zh:6cc326cd4000f724d3086ee05587e7710f032f94fc9af35e96a386a1c6f2214f", + "zh:78d5eefdd9e494defcb3c68d282b8f96630502cac21d1ea161f53cfe9bb483b3", + "zh:b6d88e1d28cf2dfa24e9fdcc3efc77adcdc1c3c3b5c7ce503a423efbdd6de57b", + "zh:ba74c592622ecbcef9dc2a4d81ed321c4e44cddf7da799faa324da9bf52a22b2", + "zh:c7c5cde98fe4ef1143bd1b3ec5dc04baf0d4cc3ca2c5c7d40d17c0e9b2076865", + "zh:dac4bad52c940cd0dfc27893507c1e92393846b024c5a9db159a93c534a3da03", + "zh:de8febe2a2acd9ac454b844a4106ed295ae9520ef54dc8ed2faf29f12716b602", + "zh:eab0d0495e7e711cca367f7d4df6e322e6c562fc52151ec931176115b83ed014", + ] +} diff --git a/CHAP12/preventdestroy/main.tf b/CHAP12/preventdestroy/main.tf index 32bd910..3c59831 100755 --- a/CHAP12/preventdestroy/main.tf +++ b/CHAP12/preventdestroy/main.tf @@ -15,12 +15,6 @@ provider "azurerm" { features {} } -locals { - common_app_settings = { - "INSTRUMENTATIONKEY" = azurerm_application_insights.appinsight-app.instrumentation_key - } -} - resource "random_string" "random" { length = 4 special = false diff --git a/CHAP12/preventdestroy/variables.tf b/CHAP12/preventdestroy/variables.tf index dfa5478..f41605c 100755 --- a/CHAP12/preventdestroy/variables.tf +++ b/CHAP12/preventdestroy/variables.tf @@ -1,36 +1,37 @@ variable "resource_group_name" { description = "Resource group name" + type = string } variable "location" { description = "Location of Azure reource" default = "West Europe" + type = string } variable "service_plan_name" { description = "Service plan name" + type = string } variable "app_name" { description = "Name of application" default = "MyApp2" + type = string } variable "environment" { description = "Environment Name" -} - - -variable "custom_app_settings" { - description = "Custom App settings" - default = {} + type = string } variable "createdby" { description = "name of the triggers user" default = "NA" + type = string } variable "prevent_destroy_ai" { default = false + type = bool } \ No newline at end of file diff --git a/CHAP12/zerodowntime/.terraform.lock.hcl b/CHAP12/zerodowntime/.terraform.lock.hcl new file mode 100644 index 0000000..5cbb349 --- /dev/null +++ b/CHAP12/zerodowntime/.terraform.lock.hcl @@ -0,0 +1,42 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/hashicorp/azurerm" { + version = "3.70.0" + constraints = "~> 3.23" + hashes = [ + "h1:jgxJjER0Odm7FCoPrd0Y+mFK6snGHFLDGJo+XkrKlZM=", + "zh:0b8a1fdce4406e066ad3f4cfe7217cdde83ff980c9d145dcea3de715b211bd46", + "zh:0cd04221c0242c579a4ab27aeb6f4d97cff26a23e8863d38d32c06a339791356", + "zh:4afa2e6d89f9e352402caee1a93ebe239218fb54c761d3170ed6acb70929455d", + "zh:62ba9870786632150ea806fa3e034fa4f822b8f4d17422033b21ed98001994cf", + "zh:762502f741936f4831692b32e7fe2f665001eec83cd18e65804fa04a02a0a311", + "zh:887c0e35e79fdb4a6740c232c683adc5344067f0297c28646d6f811b33501c6c", + "zh:927baea8f6a399782c9f53f8035f8abe306cdde2382b31ab982a0b5a975a98ab", + "zh:9d10f8821b23c331cb39fa275aaa298968344a7849ca72dc5dc7d6c04b4df4ec", + "zh:a6d907e78f78dc944c941d9853836b08f1402727026f9b9183a33f4302e39e1b", + "zh:a8f81fd109c3e0e662a0067cc5a2d4828f4906c07cb05d8e91a1c5b3fa09818f", + "zh:ba89168e9ca8144c84503071fe0498cced288965314cba40962a6b71cfcd5a4b", + "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", + ] +} + +provider "registry.terraform.io/hashicorp/random" { + version = "2.3.0" + constraints = "2.3.0" + hashes = [ + "h1:nFL6uiwsQFLiP8QCr35sPfWe9LpXI3/c7gP9tYnih+k=", + "zh:122814e4e79ca4970566b4a43734f3cb4fac46e8946325d081d69495ceb3de6e", + "zh:14957b9817aa1b41650527bbb88da65fdd40b09b61cabb03700b4e221c07505d", + "zh:83b24a7b908a9a742a87a001dbce05f73f00370d241524024623a166a6944f5a", + "zh:ad30a315c280594e14936d5062dbe4d71181cad1d0ca50af045473b74b914c78", + "zh:b491095b0f901c97a7f1ac590e5f5de999e4161e06c49bf1742fdd30b60d5d2b", + "zh:be9324532150575cff2e110e989cd9a2b4ddc4ec30df35ee1d8a79e74d8ee73e", + "zh:c9567d2f22ef8ec72f9c5ad7c9d0aff0e7f034794861ed2029507a25572f80ee", + "zh:cde800a7b5cb3bf899f376a2d3c6f21069cdfe264220b784d4e8904e2e29076f", + "zh:d709418753240e0e063c68bda428cd0f14a07b05b08a9578155cea99267907bd", + "zh:d8c5a06bfb4f024a02847f9b02cb581de891c663fd1f41e48f7b70edf42c6281", + "zh:e6c508b9ca046e0a2c4452dd86d0ae67bc6aeab45e225a5a54d37b6570545d78", + "zh:fef15025713218a0225445aeeaedf84fa2e0d351b98a2216de9643d1fb57ac60", + ] +} diff --git a/CHAP12/zerodowntime/main.tf b/CHAP12/zerodowntime/main.tf index 79576e8..9e43003 100755 --- a/CHAP12/zerodowntime/main.tf +++ b/CHAP12/zerodowntime/main.tf @@ -15,12 +15,6 @@ provider "azurerm" { features {} } -locals { - common_app_settings = { - "INSTRUMENTATIONKEY" = azurerm_application_insights.appinsight-app.instrumentation_key - } -} - resource "random_string" "random" { length = 4 special = false diff --git a/CHAP12/zerodowntime/variables.tf b/CHAP12/zerodowntime/variables.tf index 4378e4d..3328600 100755 --- a/CHAP12/zerodowntime/variables.tf +++ b/CHAP12/zerodowntime/variables.tf @@ -1,32 +1,32 @@ variable "resource_group_name" { description = "Resource group name" + type = string } variable "location" { - description = "Location of Azure reource" + description = "Location of Azure resource" default = "West Europe" + type = string } variable "service_plan_name" { description = "Service plan name" + type = string } variable "app_name" { description = "Name of application" default = "MyAppDemo" + type = string } variable "environment" { description = "Environment Name" -} - - -variable "custom_app_settings" { - description = "Custom App settings" - default = {} + type = string } variable "createdby" { description = "name of the triggers user" default = "NA" + type = string } diff --git a/CHAP15/foreach/.terraform.lock.hcl b/CHAP15/foreach/.terraform.lock.hcl new file mode 100644 index 0000000..5cbb349 --- /dev/null +++ b/CHAP15/foreach/.terraform.lock.hcl @@ -0,0 +1,42 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/hashicorp/azurerm" { + version = "3.70.0" + constraints = "~> 3.23" + hashes = [ + "h1:jgxJjER0Odm7FCoPrd0Y+mFK6snGHFLDGJo+XkrKlZM=", + "zh:0b8a1fdce4406e066ad3f4cfe7217cdde83ff980c9d145dcea3de715b211bd46", + "zh:0cd04221c0242c579a4ab27aeb6f4d97cff26a23e8863d38d32c06a339791356", + "zh:4afa2e6d89f9e352402caee1a93ebe239218fb54c761d3170ed6acb70929455d", + "zh:62ba9870786632150ea806fa3e034fa4f822b8f4d17422033b21ed98001994cf", + "zh:762502f741936f4831692b32e7fe2f665001eec83cd18e65804fa04a02a0a311", + "zh:887c0e35e79fdb4a6740c232c683adc5344067f0297c28646d6f811b33501c6c", + "zh:927baea8f6a399782c9f53f8035f8abe306cdde2382b31ab982a0b5a975a98ab", + "zh:9d10f8821b23c331cb39fa275aaa298968344a7849ca72dc5dc7d6c04b4df4ec", + "zh:a6d907e78f78dc944c941d9853836b08f1402727026f9b9183a33f4302e39e1b", + "zh:a8f81fd109c3e0e662a0067cc5a2d4828f4906c07cb05d8e91a1c5b3fa09818f", + "zh:ba89168e9ca8144c84503071fe0498cced288965314cba40962a6b71cfcd5a4b", + "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", + ] +} + +provider "registry.terraform.io/hashicorp/random" { + version = "2.3.0" + constraints = "2.3.0" + hashes = [ + "h1:nFL6uiwsQFLiP8QCr35sPfWe9LpXI3/c7gP9tYnih+k=", + "zh:122814e4e79ca4970566b4a43734f3cb4fac46e8946325d081d69495ceb3de6e", + "zh:14957b9817aa1b41650527bbb88da65fdd40b09b61cabb03700b4e221c07505d", + "zh:83b24a7b908a9a742a87a001dbce05f73f00370d241524024623a166a6944f5a", + "zh:ad30a315c280594e14936d5062dbe4d71181cad1d0ca50af045473b74b914c78", + "zh:b491095b0f901c97a7f1ac590e5f5de999e4161e06c49bf1742fdd30b60d5d2b", + "zh:be9324532150575cff2e110e989cd9a2b4ddc4ec30df35ee1d8a79e74d8ee73e", + "zh:c9567d2f22ef8ec72f9c5ad7c9d0aff0e7f034794861ed2029507a25572f80ee", + "zh:cde800a7b5cb3bf899f376a2d3c6f21069cdfe264220b784d4e8904e2e29076f", + "zh:d709418753240e0e063c68bda428cd0f14a07b05b08a9578155cea99267907bd", + "zh:d8c5a06bfb4f024a02847f9b02cb581de891c663fd1f41e48f7b70edf42c6281", + "zh:e6c508b9ca046e0a2c4452dd86d0ae67bc6aeab45e225a5a54d37b6570545d78", + "zh:fef15025713218a0225445aeeaedf84fa2e0d351b98a2216de9643d1fb57ac60", + ] +} diff --git a/CHAP15/interpolation/.terraform.lock.hcl b/CHAP15/interpolation/.terraform.lock.hcl new file mode 100644 index 0000000..342e5bc --- /dev/null +++ b/CHAP15/interpolation/.terraform.lock.hcl @@ -0,0 +1,22 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/hashicorp/azurerm" { + version = "3.70.0" + constraints = "~> 3.23" + hashes = [ + "h1:jgxJjER0Odm7FCoPrd0Y+mFK6snGHFLDGJo+XkrKlZM=", + "zh:0b8a1fdce4406e066ad3f4cfe7217cdde83ff980c9d145dcea3de715b211bd46", + "zh:0cd04221c0242c579a4ab27aeb6f4d97cff26a23e8863d38d32c06a339791356", + "zh:4afa2e6d89f9e352402caee1a93ebe239218fb54c761d3170ed6acb70929455d", + "zh:62ba9870786632150ea806fa3e034fa4f822b8f4d17422033b21ed98001994cf", + "zh:762502f741936f4831692b32e7fe2f665001eec83cd18e65804fa04a02a0a311", + "zh:887c0e35e79fdb4a6740c232c683adc5344067f0297c28646d6f811b33501c6c", + "zh:927baea8f6a399782c9f53f8035f8abe306cdde2382b31ab982a0b5a975a98ab", + "zh:9d10f8821b23c331cb39fa275aaa298968344a7849ca72dc5dc7d6c04b4df4ec", + "zh:a6d907e78f78dc944c941d9853836b08f1402727026f9b9183a33f4302e39e1b", + "zh:a8f81fd109c3e0e662a0067cc5a2d4828f4906c07cb05d8e91a1c5b3fa09818f", + "zh:ba89168e9ca8144c84503071fe0498cced288965314cba40962a6b71cfcd5a4b", + "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", + ] +}