mirror of
https://github.com/opentofu/opentofu.git
synced 2025-01-07 14:44:11 -06:00
0769674c54
Most resources are commented out at this stage, as they require surgery to make them work with the new world of the Azure SDK.
252 lines
7.6 KiB
Go
252 lines
7.6 KiB
Go
package azurerm
|
|
|
|
//import (
|
|
// "fmt"
|
|
// "net/http"
|
|
// "testing"
|
|
//
|
|
// "github.com/hashicorp/terraform/helper/acctest"
|
|
// "github.com/hashicorp/terraform/helper/resource"
|
|
// "github.com/hashicorp/terraform/terraform"
|
|
//)
|
|
//
|
|
//func TestAccAzureRMTemplateDeployment_basic(t *testing.T) {
|
|
// ri := acctest.RandInt()
|
|
// config := fmt.Sprintf(testAccAzureRMTemplateDeployment_basicExample, ri, ri)
|
|
// resource.Test(t, resource.TestCase{
|
|
// PreCheck: func() { testAccPreCheck(t) },
|
|
// Providers: testAccProviders,
|
|
// CheckDestroy: testCheckAzureRMTemplateDeploymentDestroy,
|
|
// Steps: []resource.TestStep{
|
|
// resource.TestStep{
|
|
// Config: config,
|
|
// Check: resource.ComposeTestCheckFunc(
|
|
// testCheckAzureRMTemplateDeploymentExists("azurerm_template_deployment.test"),
|
|
// ),
|
|
// },
|
|
// },
|
|
// })
|
|
//}
|
|
//
|
|
//func TestAccAzureRMTemplateDeployment_withParams(t *testing.T) {
|
|
// ri := acctest.RandInt()
|
|
// config := fmt.Sprintf(testAccAzureRMTemplateDeployment_withParams, ri, ri, ri)
|
|
// resource.Test(t, resource.TestCase{
|
|
// PreCheck: func() { testAccPreCheck(t) },
|
|
// Providers: testAccProviders,
|
|
// CheckDestroy: testCheckAzureRMTemplateDeploymentDestroy,
|
|
// Steps: []resource.TestStep{
|
|
// resource.TestStep{
|
|
// Config: config,
|
|
// Check: resource.ComposeTestCheckFunc(
|
|
// testCheckAzureRMTemplateDeploymentExists("azurerm_template_deployment.test"),
|
|
// resource.TestCheckResourceAttr("azurerm_template_deployment.test", "outputs.testOutput", "Output Value"),
|
|
// ),
|
|
// },
|
|
// },
|
|
// })
|
|
//}
|
|
//
|
|
//func testCheckAzureRMTemplateDeploymentExists(name string) resource.TestCheckFunc {
|
|
// return func(s *terraform.State) error {
|
|
// // Ensure we have enough information in state to look up in API
|
|
// rs, ok := s.RootModule().Resources[name]
|
|
// if !ok {
|
|
// return fmt.Errorf("Not found: %s", name)
|
|
// }
|
|
//
|
|
// name := rs.Primary.Attributes["name"]
|
|
// resourceGroup, hasResourceGroup := rs.Primary.Attributes["resource_group_name"]
|
|
// if !hasResourceGroup {
|
|
// return fmt.Errorf("Bad: no resource group found in state for template deployment: %s", name)
|
|
// }
|
|
//
|
|
// conn := testAccProvider.Meta().(*ArmClient).deploymentsClient
|
|
//
|
|
// resp, err := conn.Get(resourceGroup, name)
|
|
// if err != nil {
|
|
// return fmt.Errorf("Bad: Get on deploymentsClient: %s", err)
|
|
// }
|
|
//
|
|
// if resp.StatusCode == http.StatusNotFound {
|
|
// return fmt.Errorf("Bad: TemplateDeployment %q (resource group: %q) does not exist", name, resourceGroup)
|
|
// }
|
|
//
|
|
// return nil
|
|
// }
|
|
//}
|
|
//
|
|
//func testCheckAzureRMTemplateDeploymentDestroy(s *terraform.State) error {
|
|
// conn := testAccProvider.Meta().(*ArmClient).vmClient
|
|
//
|
|
// for _, rs := range s.RootModule().Resources {
|
|
// if rs.Type != "azurerm_template_deployment" {
|
|
// continue
|
|
// }
|
|
//
|
|
// name := rs.Primary.Attributes["name"]
|
|
// resourceGroup := rs.Primary.Attributes["resource_group_name"]
|
|
//
|
|
// resp, err := conn.Get(resourceGroup, name, "")
|
|
//
|
|
// if err != nil {
|
|
// return nil
|
|
// }
|
|
//
|
|
// if resp.StatusCode != http.StatusNotFound {
|
|
// return fmt.Errorf("Template Deployment still exists:\n%#v", resp.Properties)
|
|
// }
|
|
// }
|
|
//
|
|
// return nil
|
|
//}
|
|
//
|
|
//var testAccAzureRMTemplateDeployment_basicExample = `
|
|
// resource "azurerm_resource_group" "test" {
|
|
// name = "acctestrg-%d"
|
|
// location = "West US"
|
|
// }
|
|
//
|
|
// resource "azurerm_template_deployment" "test" {
|
|
// name = "acctesttemplate-%d"
|
|
// resource_group_name = "${azurerm_resource_group.test.name}"
|
|
// template_body = <<DEPLOY
|
|
//{
|
|
// "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
|
|
// "contentVersion": "1.0.0.0",
|
|
// "parameters": {
|
|
// "storageAccountType": {
|
|
// "type": "string",
|
|
// "defaultValue": "Standard_LRS",
|
|
// "allowedValues": [
|
|
// "Standard_LRS",
|
|
// "Standard_GRS",
|
|
// "Standard_ZRS"
|
|
// ],
|
|
// "metadata": {
|
|
// "description": "Storage Account type"
|
|
// }
|
|
// }
|
|
// },
|
|
// "variables": {
|
|
// "location": "[resourceGroup().location]",
|
|
// "storageAccountName": "[concat(uniquestring(resourceGroup().id), 'storage')]",
|
|
// "publicIPAddressName": "[concat('myPublicIp', uniquestring(resourceGroup().id))]",
|
|
// "publicIPAddressType": "Dynamic",
|
|
// "apiVersion": "2015-06-15",
|
|
// "dnsLabelPrefix": "terraform-acctest"
|
|
// },
|
|
// "resources": [
|
|
// {
|
|
// "type": "Microsoft.Storage/storageAccounts",
|
|
// "name": "[variables('storageAccountName')]",
|
|
// "apiVersion": "[variables('apiVersion')]",
|
|
// "location": "[variables('location')]",
|
|
// "properties": {
|
|
// "accountType": "[parameters('storageAccountType')]"
|
|
// }
|
|
// },
|
|
// {
|
|
// "type": "Microsoft.Network/publicIPAddresses",
|
|
// "apiVersion": "[variables('apiVersion')]",
|
|
// "name": "[variables('publicIPAddressName')]",
|
|
// "location": "[variables('location')]",
|
|
// "properties": {
|
|
// "publicIPAllocationMethod": "[variables('publicIPAddressType')]",
|
|
// "dnsSettings": {
|
|
// "domainNameLabel": "[variables('dnsLabelPrefix')]"
|
|
// }
|
|
// }
|
|
// }
|
|
// ]
|
|
//}
|
|
//DEPLOY
|
|
// deployment_mode = "Complete"
|
|
// }
|
|
//
|
|
//`
|
|
//
|
|
//var testAccAzureRMTemplateDeployment_withParams = `
|
|
// resource "azurerm_resource_group" "test" {
|
|
// name = "acctestrg-%d"
|
|
// location = "West US"
|
|
// }
|
|
//
|
|
// output "test" {
|
|
// value = "${azurerm_template_deployment.test.outputs.testOutput}"
|
|
// }
|
|
//
|
|
// resource "azurerm_template_deployment" "test" {
|
|
// name = "acctesttemplate-%d"
|
|
// resource_group_name = "${azurerm_resource_group.test.name}"
|
|
// template_body = <<DEPLOY
|
|
//{
|
|
// "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
|
|
// "contentVersion": "1.0.0.0",
|
|
// "parameters": {
|
|
// "storageAccountType": {
|
|
// "type": "string",
|
|
// "defaultValue": "Standard_LRS",
|
|
// "allowedValues": [
|
|
// "Standard_LRS",
|
|
// "Standard_GRS",
|
|
// "Standard_ZRS"
|
|
// ],
|
|
// "metadata": {
|
|
// "description": "Storage Account type"
|
|
// }
|
|
// },
|
|
// "dnsLabelPrefix": {
|
|
// "type": "string",
|
|
// "metadata": {
|
|
// "description": "DNS Label for the Public IP. Must be lowercase. It should match with the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$ or it will raise an error."
|
|
// }
|
|
// }
|
|
// },
|
|
// "variables": {
|
|
// "location": "[resourceGroup().location]",
|
|
// "storageAccountName": "[concat(uniquestring(resourceGroup().id), 'storage')]",
|
|
// "publicIPAddressName": "[concat('myPublicIp', uniquestring(resourceGroup().id))]",
|
|
// "publicIPAddressType": "Dynamic",
|
|
// "apiVersion": "2015-06-15"
|
|
// },
|
|
// "resources": [
|
|
// {
|
|
// "type": "Microsoft.Storage/storageAccounts",
|
|
// "name": "[variables('storageAccountName')]",
|
|
// "apiVersion": "[variables('apiVersion')]",
|
|
// "location": "[variables('location')]",
|
|
// "properties": {
|
|
// "accountType": "[parameters('storageAccountType')]"
|
|
// }
|
|
// },
|
|
// {
|
|
// "type": "Microsoft.Network/publicIPAddresses",
|
|
// "apiVersion": "[variables('apiVersion')]",
|
|
// "name": "[variables('publicIPAddressName')]",
|
|
// "location": "[variables('location')]",
|
|
// "properties": {
|
|
// "publicIPAllocationMethod": "[variables('publicIPAddressType')]",
|
|
// "dnsSettings": {
|
|
// "domainNameLabel": "[parameters('dnsLabelPrefix')]"
|
|
// }
|
|
// }
|
|
// }
|
|
// ],
|
|
// "outputs": {
|
|
// "testOutput": {
|
|
// "type": "string",
|
|
// "value": "Output Value"
|
|
// }
|
|
// }
|
|
//}
|
|
//DEPLOY
|
|
// parameters {
|
|
// dnsLabelPrefix = "terraform-test-%d"
|
|
// storageAccountType = "Standard_GRS"
|
|
// }
|
|
// deployment_mode = "Complete"
|
|
// }
|
|
//
|
|
//`
|