diff --git a/azurerm/config.go b/azurerm/config.go index 4bfced4e7a79..e4231bd3d0bb 100644 --- a/azurerm/config.go +++ b/azurerm/config.go @@ -341,6 +341,7 @@ func getArmClient(c *authentication.Config, skipProviderRegistration bool, partn client.appInsights = applicationinsights.BuildClient(o) client.automation = automation.BuildClient(o) client.authorization = authorization.BuildClient(o) + client.batch = batch.BuildClient(o) client.cdn = cdn.BuildClient(o) client.cognitive = cognitive.BuildClient(o) client.containers = containers.BuildClient(o) diff --git a/azurerm/data_source_batch_certificate_test.go b/azurerm/data_source_batch_certificate_test.go index 1230299c6080..904f1d3516e9 100644 --- a/azurerm/data_source_batch_certificate_test.go +++ b/azurerm/data_source_batch_certificate_test.go @@ -9,12 +9,12 @@ import ( "github.com/terraform-providers/terraform-provider-azurerm/azurerm/helpers/tf" ) -func TestAccDataSourceAzureRMBatchCertificate(t *testing.T) { +func TestAccDataSourceAzureRMBatchCertificate_basic(t *testing.T) { dataSourceName := "data.azurerm_batch_certificate.test" ri := tf.AccRandTimeInt() rs := acctest.RandString(4) location := testLocation() - config := testAccDataSourceAzureRMBatchCertificate(ri, rs, location) + config := testAccDataSourceAzureRMBatchCertificate_basic(ri, rs, location) resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, @@ -23,19 +23,19 @@ func TestAccDataSourceAzureRMBatchCertificate(t *testing.T) { { Config: config, Check: resource.ComposeTestCheckFunc( - resource.TestCheckResourceAttr(dataSourceName, "name", "SHA1-42C107874FD0E4A9583292A2F1098E8FE4B2EDDA"), + resource.TestCheckResourceAttr(dataSourceName, "name", "sha1-42c107874fd0e4a9583292a2f1098e8fe4b2edda"), resource.TestCheckResourceAttr(dataSourceName, "account_name", fmt.Sprintf("testaccbatch%s", rs)), resource.TestCheckResourceAttr(dataSourceName, "format", "Pfx"), resource.TestCheckResourceAttr(dataSourceName, "public_data", "MIIFqzCCA5OgAwIBAgIJAMs4jwMPq7T1MA0GCSqGSIb3DQEBCwUAMGwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApTb21lLVN0YXRlMRgwFgYDVQQKDA9UZXJyYWZvcm0gVGVzdHMxDjAMBgNVBAsMBUF6dXJlMR4wHAYDVQQDDBVUZXJyYWZvcm0gQXBwIEdhdGV3YXkwHhcNMTYxMTAxMTcxOTEyWhcNMjYxMDMwMTcxOTEyWjBsMQswCQYDVQQGEwJVUzETMBEGA1UECAwKU29tZS1TdGF0ZTEYMBYGA1UECgwPVGVycmFmb3JtIFRlc3RzMQ4wDAYDVQQLDAVBenVyZTEeMBwGA1UEAwwVVGVycmFmb3JtIEFwcCBHYXRld2F5MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA49HW2pYIlW/mlaadLA1AsXiV48xVhXAvGVk3DEl1ffjp5bN8rap5WV1D83uMg1Ii7CJM8yNHkRkvN8n5WXFng4R5V1jPxGOTAj+xLybvEASi++GZelWdpOuMk8/nAoKPMbQ5NyKFy5WzlOduMldR7Awt2pwdId3akqm1i9ITG9Js+4P4nYXM8vfJCajILqi4YfhEoCNvS1EUgvlpSFE7pfNhc2W+zsfUWxWmB2SpWwX9MgQ1D4OmdKp+Eo+b6vzst3XArKMHMadPTUAk8H+ZgAnlX9yO+3vQ6z86vma/WgrG2LH6GCGXBjmKlhxVCPMLA5LeRUwEGc/Q7X/ClitGWY9umPN1XVj5e5Di1K2M082Y14mgbTTRTpv/nx7Xlph+MHnVhEWvaGMpqCHuM1W1y7wIS1IREYQ2q+K54xxZSPKYJMSnmj6A0hR/LBV0rL1uVhedEpdviduuO76qCyZrGG4HwBlW4hnIaahLzgqlvlmbDUQonAVPDgi3brVdXJgLv2zi7/ZHFW3IHgDylUVIdig0ccbzxKymlkGQ0RsLBjWOyxak2J8bN5JNVyxSwX43NZqxJ8yOv5xjB+rVMri9SX3Dl5NbFzOjynov601Pmwvb7zYnyttG2Hl5EKrkahjijGRjGy3EWEiBiArLkdTKCDHBlHxykTEvY6ZH5B9waP0CAwEAAaNQME4wHQYDVR0OBBYEFD2/Hq3IivZ5RMOKrPsM7ijIFHmMMB8GA1UdIwQYMBaAFD2/Hq3IivZ5RMOKrPsM7ijIFHmMMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQELBQADggIBAKxHWO/Q4labjnCVxYi+kaMRCPJUdHj7lga8yi8EGHaL+CbwynkaiyTfPvtmcqiuaZM9BaXsuNMRcHMtXM0EHBsjViwAHk6SrqLXd/opFvMI2QbG93koFUCpczrpyO9GvnRN4iOIYbSPXAdGOB6bkpMbm/XajORoDrua+/ET/X/1FP0GZBTmEFwojuCfOI/VuJXj0OW8XzkLmsXiLpOiakjU1obBup/1lz9DtOEBsiB9Ury+f5gZ+FnZuqhgQxeDxlZ69P6YYAfkzhcfbf7HO+nMKhppAj1BFeR4SBb+F/fLchCGO5yohwkxWz3i2q9gTDhBgo31416viyCKFWSVW3Vn7jbsjZ+Q9MK1jVSOSxC7qoQkRoNy9SKpqylunXZb+K6F3HfBkDQvn3OwsxYiSOcX9JaWpQAInNIZVg+WrJ1PXm8PFIaVPJfMgP3GOdm9vRAMjOM5Bc9iqGr2spimFd5h0GmgLvh35B3jHHWF4i3NupJQ6hUvHQZtYZOxfwxnY0/LVBTyLTVlniFA7dGSI+5Uexm+Pjh7IMGI532jTONlfNm9Bz/jdf1o0FlOclzG6Eif22gml3GM3xCUVlaElylYNAjO2lfvZuRVo5GKdMwtV9acNl0OwSx+0zbMYY2Ni3jQCI4kOL5Csctryf0rHXTlCCvnzBYVDPKmFJPna61T"), - resource.TestCheckResourceAttr(dataSourceName, "thumbprint", "42C107874FD0E4A9583292A2F1098E8FE4B2EDDA"), - resource.TestCheckResourceAttr(dataSourceName, "thumbprint_algorithm", "SHA1"), + resource.TestCheckResourceAttr(dataSourceName, "thumbprint", "42c107874fd0e4a9583292a2f1098e8fe4b2edda"), + resource.TestCheckResourceAttr(dataSourceName, "thumbprint_algorithm", "sha1"), // api now always returns this as lowercase ), }, }, }) } -func testAccDataSourceAzureRMBatchCertificate(rInt int, rString string, location string) string { +func testAccDataSourceAzureRMBatchCertificate_basic(rInt int, rString string, location string) string { return fmt.Sprintf(` resource "azurerm_resource_group" "test" { name = "testaccbatch%d" @@ -55,7 +55,7 @@ resource "azurerm_batch_certificate" "test" { certificate = "${filebase64("testdata/batch_certificate.pfx")}" format = "Pfx" password = "terraform" - thumbprint = "42C107874FD0E4A9583292A2F1098E8FE4B2EDDA" + thumbprint = "42c107874fd0e4a9583292a2f1098e8fe4b2edda" thumbprint_algorithm = "SHA1" } diff --git a/azurerm/data_source_batch_pool_test.go b/azurerm/data_source_batch_pool_test.go index 1d91f1f7d330..5745a7f21457 100644 --- a/azurerm/data_source_batch_pool_test.go +++ b/azurerm/data_source_batch_pool_test.go @@ -93,7 +93,7 @@ resource "azurerm_batch_certificate" "test" { certificate = "${filebase64("testdata/batch_certificate.pfx")}" format = "Pfx" password = "terraform" - thumbprint = "42C107874FD0E4A9583292A2F1098E8FE4B2EDDA" + thumbprint = "42c107874fd0e4a9583292a2f1098e8fe4b2edda" thumbprint_algorithm = "SHA1" } diff --git a/azurerm/resource_arm_batch_certificate.go b/azurerm/resource_arm_batch_certificate.go index efb01cb7b04d..422c6340020b 100644 --- a/azurerm/resource_arm_batch_certificate.go +++ b/azurerm/resource_arm_batch_certificate.go @@ -71,10 +71,11 @@ func resourceArmBatchCertificate() *schema.Resource { }, "thumbprint_algorithm": { - Type: schema.TypeString, - Required: true, - ForceNew: true, - ValidateFunc: validation.StringInSlice([]string{"SHA1"}, false), + Type: schema.TypeString, + Required: true, + ForceNew: true, + ValidateFunc: validation.StringInSlice([]string{"SHA1"}, false), + DiffSuppressFunc: suppress.CaseDifference, }, "public_data": { diff --git a/azurerm/resource_arm_batch_certificate_test.go b/azurerm/resource_arm_batch_certificate_test.go index 434a6616f9b4..daa42d594d40 100644 --- a/azurerm/resource_arm_batch_certificate_test.go +++ b/azurerm/resource_arm_batch_certificate_test.go @@ -20,7 +20,7 @@ func TestAccAzureRMBatchCertificate_Pfx(t *testing.T) { location := testLocation() subscriptionID := os.Getenv("ARM_SUBSCRIPTION_ID") - certificateID := fmt.Sprintf("/subscriptions/%s/resourceGroups/testaccbatch%d/providers/Microsoft.Batch/batchAccounts/testaccbatch%s/certificates/SHA1-42C107874FD0E4A9583292A2F1098E8FE4B2EDDA", subscriptionID, ri, rs) + certificateID := fmt.Sprintf("/subscriptions/%s/resourceGroups/testaccbatch%d/providers/Microsoft.Batch/batchAccounts/testaccbatch%s/certificates/sha1-42c107874fd0e4a9583292a2f1098e8fe4b2edda", subscriptionID, ri, rs) config := testAccAzureRMBatchCertificatePfx(ri, rs, location) @@ -34,10 +34,16 @@ func TestAccAzureRMBatchCertificate_Pfx(t *testing.T) { Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttr(resourceName, "id", certificateID), resource.TestCheckResourceAttr(resourceName, "format", "Pfx"), - resource.TestCheckResourceAttr(resourceName, "thumbprint", "42C107874FD0E4A9583292A2F1098E8FE4B2EDDA"), - resource.TestCheckResourceAttr(resourceName, "thumbprint_algorithm", "SHA1"), + resource.TestCheckResourceAttr(resourceName, "thumbprint", "42c107874fd0e4a9583292a2f1098e8fe4b2edda"), + resource.TestCheckResourceAttr(resourceName, "thumbprint_algorithm", "sha1"), ), }, + { + ResourceName: resourceName, + ImportState: true, + ImportStateVerify: true, + ImportStateVerifyIgnore: []string{"certificate", "password"}, + }, }, }) } @@ -69,7 +75,7 @@ func TestAccAzureRMBatchCertificate_Cer(t *testing.T) { location := testLocation() subscriptionID := os.Getenv("ARM_SUBSCRIPTION_ID") - certificateID := fmt.Sprintf("/subscriptions/%s/resourceGroups/testaccbatch%d/providers/Microsoft.Batch/batchAccounts/testaccbatch%s/certificates/SHA1-312D31A79FA0CEF49C00F769AFC2B73E9F4EDF34", subscriptionID, ri, rs) + certificateID := fmt.Sprintf("/subscriptions/%s/resourceGroups/testaccbatch%d/providers/Microsoft.Batch/batchAccounts/testaccbatch%s/certificates/sha1-312d31a79fa0cef49c00f769afc2b73e9f4edf34", subscriptionID, ri, rs) config := testAccAzureRMBatchCertificateCer(ri, rs, location) @@ -84,10 +90,16 @@ func TestAccAzureRMBatchCertificate_Cer(t *testing.T) { resource.TestCheckResourceAttr(resourceName, "id", certificateID), resource.TestCheckResourceAttr(resourceName, "format", "Cer"), - resource.TestCheckResourceAttr(resourceName, "thumbprint", "312D31A79FA0CEF49C00F769AFC2B73E9F4EDF34"), - resource.TestCheckResourceAttr(resourceName, "thumbprint_algorithm", "SHA1"), + resource.TestCheckResourceAttr(resourceName, "thumbprint", "312d31a79fa0cef49c00f769afc2b73e9f4edf34"), + resource.TestCheckResourceAttr(resourceName, "thumbprint_algorithm", "sha1"), ), }, + { + ResourceName: resourceName, + ImportState: true, + ImportStateVerify: true, + ImportStateVerifyIgnore: []string{"certificate"}, + }, }, }) } @@ -132,7 +144,7 @@ resource "azurerm_batch_certificate" "test" { certificate = "${filebase64("testdata/batch_certificate.pfx")}" format = "Pfx" password = "terraform" - thumbprint = "42C107874FD0E4A9583292A2F1098E8FE4B2EDDA" + thumbprint = "42c107874fd0e4a9583292a2f1098e8fe4b2edda" thumbprint_algorithm = "SHA1" } `, rInt, location, batchAccountSuffix) @@ -157,7 +169,7 @@ resource "azurerm_batch_certificate" "test" { account_name = "${azurerm_batch_account.test.name}" certificate = "${filebase64("testdata/batch_certificate.pfx")}" format = "Pfx" - thumbprint = "42C107874FD0E4A9583292A2F1098E8FE4B2EDDA" + thumbprint = "42c107874fd0e4a9583292a2f1098e8fe4b2edda" thumbprint_algorithm = "SHA1" } `, rInt, location, batchAccountSuffix) @@ -181,7 +193,7 @@ resource "azurerm_batch_certificate" "test" { account_name = "${azurerm_batch_account.test.name}" certificate = "${filebase64("testdata/batch_certificate.cer")}" format = "Cer" - thumbprint = "312D31A79FA0CEF49C00F769AFC2B73E9F4EDF34" + thumbprint = "312d31a79fa0cef49c00f769afc2b73e9f4edf34" thumbprint_algorithm = "SHA1" } `, rInt, location, batchAccountSuffix) @@ -206,7 +218,7 @@ resource "azurerm_batch_certificate" "test" { certificate = "${filebase64("testdata/batch_certificate.cer")}" format = "Cer" password = "should not have a password for Cer" - thumbprint = "312D31A79FA0CEF49C00F769AFC2B73E9F4EDF34" + thumbprint = "312d31a79fa0cef49c00f769afc2b73e9f4edf34" thumbprint_algorithm = "SHA1" } `, rInt, location, batchAccountSuffix) diff --git a/azurerm/resource_arm_batch_pool_test.go b/azurerm/resource_arm_batch_pool_test.go index 2541774e3b9d..705c7fe5aedc 100644 --- a/azurerm/resource_arm_batch_pool_test.go +++ b/azurerm/resource_arm_batch_pool_test.go @@ -935,7 +935,7 @@ resource "azurerm_batch_certificate" "testpfx" { certificate = "${filebase64("testdata/batch_certificate.pfx")}" format = "Pfx" password = "terraform" - thumbprint = "42C107874FD0E4A9583292A2F1098E8FE4B2EDDA" + thumbprint = "42c107874fd0e4a9583292a2f1098e8fe4b2edda" thumbprint_algorithm = "SHA1" }