diff --git a/azurerm/helpers/azure/batch_account.go b/azurerm/internal/services/batch/batch_account.go similarity index 75% rename from azurerm/helpers/azure/batch_account.go rename to azurerm/internal/services/batch/batch_account.go index 305b4bac03392..03275b65d1383 100644 --- a/azurerm/helpers/azure/batch_account.go +++ b/azurerm/internal/services/batch/batch_account.go @@ -1,4 +1,4 @@ -package azure +package batch import ( "fmt" @@ -6,8 +6,8 @@ import ( "github.com/Azure/azure-sdk-for-go/services/batch/mgmt/2019-08-01/batch" ) -// ExpandBatchAccountKeyVaultReference expands Batch account KeyVault reference -func ExpandBatchAccountKeyVaultReference(list []interface{}) (*batch.KeyVaultReference, error) { +// expandBatchAccountKeyVaultReference expands Batch account KeyVault reference +func expandBatchAccountKeyVaultReference(list []interface{}) (*batch.KeyVaultReference, error) { if len(list) == 0 { return nil, fmt.Errorf("Error: key vault reference should be defined") } @@ -25,8 +25,8 @@ func ExpandBatchAccountKeyVaultReference(list []interface{}) (*batch.KeyVaultRef return ref, nil } -// FlattenBatchAccountKeyvaultReference flattens a Batch account keyvault reference -func FlattenBatchAccountKeyvaultReference(keyVaultReference *batch.KeyVaultReference) interface{} { +// flattenBatchAccountKeyvaultReference flattens a Batch account keyvault reference +func flattenBatchAccountKeyvaultReference(keyVaultReference *batch.KeyVaultReference) interface{} { result := make(map[string]interface{}) if keyVaultReference == nil { diff --git a/azurerm/internal/services/batch/batch_account_data_source.go b/azurerm/internal/services/batch/batch_account_data_source.go index b9e2acc7901dc..7b49c70b63e6c 100644 --- a/azurerm/internal/services/batch/batch_account_data_source.go +++ b/azurerm/internal/services/batch/batch_account_data_source.go @@ -118,7 +118,7 @@ func dataSourceArmBatchAccountRead(d *schema.ResourceData, meta interface{}) err // set empty keyvault reference which is not needed in Batch Service allocation mode. d.Set("key_vault_reference", []interface{}{}) } else if poolAllocationMode == string(batch.UserSubscription) { - if err := d.Set("key_vault_reference", azure.FlattenBatchAccountKeyvaultReference(props.KeyVaultReference)); err != nil { + if err := d.Set("key_vault_reference", flattenBatchAccountKeyvaultReference(props.KeyVaultReference)); err != nil { return fmt.Errorf("Error flattening `key_vault_reference`: %+v", err) } } diff --git a/azurerm/internal/services/batch/tests/batch_account_data_source_test.go b/azurerm/internal/services/batch/batch_account_data_source_test.go similarity index 88% rename from azurerm/internal/services/batch/tests/batch_account_data_source_test.go rename to azurerm/internal/services/batch/batch_account_data_source_test.go index b93719bd52420..fd22145aeee4b 100644 --- a/azurerm/internal/services/batch/tests/batch_account_data_source_test.go +++ b/azurerm/internal/services/batch/batch_account_data_source_test.go @@ -1,4 +1,4 @@ -package tests +package batch_test import ( "fmt" @@ -10,7 +10,7 @@ import ( "github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/acceptance" ) -func TestAccDataSourceAzureRMBatchAccount_basic(t *testing.T) { +func TestAccBatchAccountDataSource_basic(t *testing.T) { data := acceptance.BuildTestData(t, "data.azurerm_batch_account", "test") resource.ParallelTest(t, resource.TestCase{ @@ -18,7 +18,7 @@ func TestAccDataSourceAzureRMBatchAccount_basic(t *testing.T) { Providers: acceptance.SupportedProviders, Steps: []resource.TestStep{ { - Config: testAccDataSourceAzureRMBatchAccount_basic(data), + Config: testAccBatchAccountDataSource_basic(data), Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttr(data.ResourceName, "name", fmt.Sprintf("testaccbatch%s", data.RandomString)), resource.TestCheckResourceAttr(data.ResourceName, "location", azure.NormalizeLocation(data.Locations.Primary)), @@ -29,7 +29,7 @@ func TestAccDataSourceAzureRMBatchAccount_basic(t *testing.T) { }) } -func TestAccDataSourceAzureRMBatchAccount_complete(t *testing.T) { +func TestAccBatchAccountDataSource_complete(t *testing.T) { data := acceptance.BuildTestData(t, "data.azurerm_batch_account", "test") resource.ParallelTest(t, resource.TestCase{ @@ -37,7 +37,7 @@ func TestAccDataSourceAzureRMBatchAccount_complete(t *testing.T) { Providers: acceptance.SupportedProviders, Steps: []resource.TestStep{ { - Config: testAccDataSourceAzureRMBatchAccount_complete(data), + Config: testAccBatchAccountDataSource_complete(data), Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttr(data.ResourceName, "name", fmt.Sprintf("testaccbatch%s", data.RandomString)), resource.TestCheckResourceAttr(data.ResourceName, "location", azure.NormalizeLocation(data.Locations.Primary)), @@ -50,7 +50,7 @@ func TestAccDataSourceAzureRMBatchAccount_complete(t *testing.T) { }) } -func TestAccDataSourceAzureRMBatchAccount_userSubscription(t *testing.T) { +func TestAccBatchAccountDataSource_userSubscription(t *testing.T) { data := acceptance.BuildTestData(t, "data.azurerm_batch_account", "test") tenantID := os.Getenv("ARM_TENANT_ID") @@ -61,7 +61,7 @@ func TestAccDataSourceAzureRMBatchAccount_userSubscription(t *testing.T) { Providers: acceptance.SupportedProviders, Steps: []resource.TestStep{ { - Config: testAccDataSourceAzureBatchAccount_userSubscription(data, tenantID, subscriptionID), + Config: testAccBatchAccountDataSource_userSubscription(data, tenantID, subscriptionID), Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttr(data.ResourceName, "name", fmt.Sprintf("testaccbatch%s", data.RandomString)), resource.TestCheckResourceAttr(data.ResourceName, "location", azure.NormalizeLocation(data.Locations.Primary)), @@ -73,7 +73,7 @@ func TestAccDataSourceAzureRMBatchAccount_userSubscription(t *testing.T) { }) } -func testAccDataSourceAzureRMBatchAccount_basic(data acceptance.TestData) string { +func testAccBatchAccountDataSource_basic(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -98,7 +98,7 @@ data "azurerm_batch_account" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString) } -func testAccDataSourceAzureRMBatchAccount_complete(data acceptance.TestData) string { +func testAccBatchAccountDataSource_complete(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -136,7 +136,7 @@ data "azurerm_batch_account" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString) } -func testAccDataSourceAzureBatchAccount_userSubscription(data acceptance.TestData, tenantID string, subscriptionID string) string { +func testAccBatchAccountDataSource_userSubscription(data acceptance.TestData, tenantID string, subscriptionID string) string { return fmt.Sprintf(` provider "azurerm" { features {} diff --git a/azurerm/internal/services/batch/batch_account_resource.go b/azurerm/internal/services/batch/batch_account_resource.go index 709a38240d810..b06c935e3df66 100644 --- a/azurerm/internal/services/batch/batch_account_resource.go +++ b/azurerm/internal/services/batch/batch_account_resource.go @@ -143,7 +143,7 @@ func resourceArmBatchAccountCreate(d *schema.ResourceData, meta interface{}) err // if pool allocation mode is UserSubscription, a key vault reference needs to be set if poolAllocationMode == string(batch.UserSubscription) { keyVaultReferenceSet := d.Get("key_vault_reference").([]interface{}) - keyVaultReference, err := azure.ExpandBatchAccountKeyVaultReference(keyVaultReferenceSet) + keyVaultReference, err := expandBatchAccountKeyVaultReference(keyVaultReferenceSet) if err != nil { return fmt.Errorf("Error creating Batch account %q (Resource Group %q): %+v", name, resourceGroup, err) } diff --git a/azurerm/internal/services/batch/tests/batch_account_resource_test.go b/azurerm/internal/services/batch/batch_account_resource_test.go similarity index 83% rename from azurerm/internal/services/batch/tests/batch_account_resource_test.go rename to azurerm/internal/services/batch/batch_account_resource_test.go index f3d4dc7f21d8a..1996b325a903c 100644 --- a/azurerm/internal/services/batch/tests/batch_account_resource_test.go +++ b/azurerm/internal/services/batch/batch_account_resource_test.go @@ -1,4 +1,4 @@ -package tests +package batch_test import ( "fmt" @@ -42,18 +42,18 @@ func TestValidateBatchAccountName(t *testing.T) { } } -func TestAccAzureRMBatchAccount_basic(t *testing.T) { +func TestAccBatchAccount_basic(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_account", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchAccountDestroy, + CheckDestroy: testCheckBatchAccountDestroy, Steps: []resource.TestStep{ { - Config: testAccAzureRMBatchAccount_basic(data), + Config: testAccBatchAccount_basic(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchAccountExists(data.ResourceName), + testCheckBatchAccountExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "pool_allocation_mode", "BatchService"), ), }, @@ -61,49 +61,49 @@ func TestAccAzureRMBatchAccount_basic(t *testing.T) { }) } -func TestAccAzureRMBatchAccount_requiresImport(t *testing.T) { +func TestAccBatchAccount_requiresImport(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_account", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchAccountDestroy, + CheckDestroy: testCheckBatchAccountDestroy, Steps: []resource.TestStep{ { - Config: testAccAzureRMBatchAccount_basic(data), + Config: testAccBatchAccount_basic(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchAccountExists(data.ResourceName), + testCheckBatchAccountExists(data.ResourceName), ), }, { - Config: testAccAzureRMBatchAccount_requiresImport(data), + Config: testAccBatchAccount_requiresImport(data), ExpectError: acceptance.RequiresImportError("azurerm_batch_account"), }, }, }) } -func TestAccAzureRMBatchAccount_complete(t *testing.T) { +func TestAccBatchAccount_complete(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_account", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchAccountDestroy, + CheckDestroy: testCheckBatchAccountDestroy, Steps: []resource.TestStep{ { - Config: testAccAzureRMBatchAccount_complete(data), + Config: testAccBatchAccount_complete(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchAccountExists(data.ResourceName), + testCheckBatchAccountExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "pool_allocation_mode", "BatchService"), resource.TestCheckResourceAttr(data.ResourceName, "tags.%", "1"), resource.TestCheckResourceAttr(data.ResourceName, "tags.env", "test"), ), }, { - Config: testAccAzureRMBatchAccount_completeUpdated(data), + Config: testAccBatchAccount_completeUpdated(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchAccountExists(data.ResourceName), + testCheckBatchAccountExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "pool_allocation_mode", "BatchService"), resource.TestCheckResourceAttr(data.ResourceName, "tags.%", "2"), resource.TestCheckResourceAttr(data.ResourceName, "tags.env", "test"), @@ -114,19 +114,19 @@ func TestAccAzureRMBatchAccount_complete(t *testing.T) { }) } -func TestAccAzureRMBatchAccount_userSubscription(t *testing.T) { +func TestAccBatchAccount_userSubscription(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_account", "test") tenantID := os.Getenv("ARM_TENANT_ID") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchAccountDestroy, + CheckDestroy: testCheckBatchAccountDestroy, Steps: []resource.TestStep{ { - Config: testAccAzureRMBatchAccount_userSubscription(data, tenantID), + Config: testAccBatchAccount_userSubscription(data, tenantID), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchAccountExists(data.ResourceName), + testCheckBatchAccountExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "pool_allocation_mode", "UserSubscription"), ), }, @@ -134,7 +134,7 @@ func TestAccAzureRMBatchAccount_userSubscription(t *testing.T) { }) } -func testCheckAzureRMBatchAccountExists(resourceName string) resource.TestCheckFunc { +func testCheckBatchAccountExists(resourceName string) resource.TestCheckFunc { return func(s *terraform.State) error { ctx := acceptance.AzureProvider.Meta().(*clients.Client).StopContext conn := acceptance.AzureProvider.Meta().(*clients.Client).Batch.AccountClient @@ -165,7 +165,7 @@ func testCheckAzureRMBatchAccountExists(resourceName string) resource.TestCheckF } } -func testCheckAzureRMBatchAccountDestroy(s *terraform.State) error { +func testCheckBatchAccountDestroy(s *terraform.State) error { conn := acceptance.AzureProvider.Meta().(*clients.Client).Batch.AccountClient ctx := acceptance.AzureProvider.Meta().(*clients.Client).StopContext @@ -192,7 +192,7 @@ func testCheckAzureRMBatchAccountDestroy(s *terraform.State) error { return nil } -func testAccAzureRMBatchAccount_basic(data acceptance.TestData) string { +func testAccBatchAccount_basic(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -212,8 +212,8 @@ resource "azurerm_batch_account" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString) } -func testAccAzureRMBatchAccount_requiresImport(data acceptance.TestData) string { - template := testAccAzureRMBatchAccount_basic(data) +func testAccBatchAccount_requiresImport(data acceptance.TestData) string { + template := testAccBatchAccount_basic(data) return fmt.Sprintf(` %s resource "azurerm_batch_account" "import" { @@ -225,7 +225,7 @@ resource "azurerm_batch_account" "import" { `, template) } -func testAccAzureRMBatchAccount_complete(data acceptance.TestData) string { +func testAccBatchAccount_complete(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -258,7 +258,7 @@ resource "azurerm_batch_account" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString) } -func testAccAzureRMBatchAccount_completeUpdated(data acceptance.TestData) string { +func testAccBatchAccount_completeUpdated(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -292,7 +292,7 @@ resource "azurerm_batch_account" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString) } -func testAccAzureRMBatchAccount_userSubscription(data acceptance.TestData, tenantID string) string { +func testAccBatchAccount_userSubscription(data acceptance.TestData, tenantID string) string { return fmt.Sprintf(` provider "azurerm" { features {} diff --git a/azurerm/internal/services/batch/tests/batch_application_resource_test.go b/azurerm/internal/services/batch/batch_application_resource_test.go similarity index 80% rename from azurerm/internal/services/batch/tests/batch_application_resource_test.go rename to azurerm/internal/services/batch/batch_application_resource_test.go index 9d479b2c924fb..3952d46a52a7d 100644 --- a/azurerm/internal/services/batch/tests/batch_application_resource_test.go +++ b/azurerm/internal/services/batch/batch_application_resource_test.go @@ -1,4 +1,4 @@ -package tests +package batch_test import ( "fmt" @@ -12,18 +12,18 @@ import ( "github.com/terraform-providers/terraform-provider-azurerm/azurerm/utils" ) -func TestAccAzureRMBatchApplication_basic(t *testing.T) { +func TestAccBatchApplication_basic(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_application", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchApplicationDestroy, + CheckDestroy: testCheckBatchApplicationDestroy, Steps: []resource.TestStep{ { - Config: testAccAzureRMBatchApplication_template(data, ""), + Config: testAccBatchApplication_template(data, ""), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchApplicationExists(data.ResourceName), + testCheckBatchApplicationExists(data.ResourceName), ), }, data.ImportStep(), @@ -31,25 +31,25 @@ func TestAccAzureRMBatchApplication_basic(t *testing.T) { }) } -func TestAccAzureRMBatchApplication_update(t *testing.T) { +func TestAccBatchApplication_update(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_application", "test") displayName := fmt.Sprintf("TestAccDisplayName-%d", data.RandomInteger) resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchApplicationDestroy, + CheckDestroy: testCheckBatchApplicationDestroy, Steps: []resource.TestStep{ { - Config: testAccAzureRMBatchApplication_template(data, ""), + Config: testAccBatchApplication_template(data, ""), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchApplicationExists(data.ResourceName), + testCheckBatchApplicationExists(data.ResourceName), ), }, { - Config: testAccAzureRMBatchApplication_template(data, fmt.Sprintf(`display_name = "%s"`, displayName)), + Config: testAccBatchApplication_template(data, fmt.Sprintf(`display_name = "%s"`, displayName)), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchApplicationExists(data.ResourceName), + testCheckBatchApplicationExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "display_name", displayName), ), }, @@ -57,7 +57,7 @@ func TestAccAzureRMBatchApplication_update(t *testing.T) { }) } -func testCheckAzureRMBatchApplicationExists(resourceName string) resource.TestCheckFunc { +func testCheckBatchApplicationExists(resourceName string) resource.TestCheckFunc { return func(s *terraform.State) error { client := acceptance.AzureProvider.Meta().(*clients.Client).Batch.ApplicationClient ctx := acceptance.AzureProvider.Meta().(*clients.Client).StopContext @@ -83,7 +83,7 @@ func testCheckAzureRMBatchApplicationExists(resourceName string) resource.TestCh } } -func testCheckAzureRMBatchApplicationDestroy(s *terraform.State) error { +func testCheckBatchApplicationDestroy(s *terraform.State) error { client := acceptance.AzureProvider.Meta().(*clients.Client).Batch.ApplicationClient ctx := acceptance.AzureProvider.Meta().(*clients.Client).StopContext @@ -109,7 +109,7 @@ func testCheckAzureRMBatchApplicationDestroy(s *terraform.State) error { return nil } -func testAccAzureRMBatchApplication_template(data acceptance.TestData, displayName string) string { +func testAccBatchApplication_template(data acceptance.TestData, displayName string) string { return fmt.Sprintf(` provider "azurerm" { features {} diff --git a/azurerm/internal/services/batch/tests/batch_certificate_data_source_test.go b/azurerm/internal/services/batch/batch_certificate_data_source_test.go similarity index 94% rename from azurerm/internal/services/batch/tests/batch_certificate_data_source_test.go rename to azurerm/internal/services/batch/batch_certificate_data_source_test.go index e03562c2267ad..b857602519bb5 100644 --- a/azurerm/internal/services/batch/tests/batch_certificate_data_source_test.go +++ b/azurerm/internal/services/batch/batch_certificate_data_source_test.go @@ -1,4 +1,4 @@ -package tests +package batch_test import ( "fmt" @@ -8,7 +8,7 @@ import ( "github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/acceptance" ) -func TestAccDataSourceAzureRMBatchCertificate_basic(t *testing.T) { +func TestAccBatchCertificateDataSource_basic(t *testing.T) { data := acceptance.BuildTestData(t, "data.azurerm_batch_certificate", "test") resource.ParallelTest(t, resource.TestCase{ @@ -16,7 +16,7 @@ func TestAccDataSourceAzureRMBatchCertificate_basic(t *testing.T) { Providers: acceptance.SupportedProviders, Steps: []resource.TestStep{ { - Config: testAccDataSourceAzureRMBatchCertificate_basic(data), + Config: testAccBatchCertificateDataSource_basic(data), Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttr(data.ResourceName, "name", "sha1-42c107874fd0e4a9583292a2f1098e8fe4b2edda"), resource.TestCheckResourceAttr(data.ResourceName, "account_name", fmt.Sprintf("testaccbatch%s", data.RandomString)), @@ -30,7 +30,7 @@ func TestAccDataSourceAzureRMBatchCertificate_basic(t *testing.T) { }) } -func testAccDataSourceAzureRMBatchCertificate_basic(data acceptance.TestData) string { +func testAccBatchCertificateDataSource_basic(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} diff --git a/azurerm/internal/services/batch/tests/batch_certificate_resource_test.go b/azurerm/internal/services/batch/batch_certificate_resource_test.go similarity index 86% rename from azurerm/internal/services/batch/tests/batch_certificate_resource_test.go rename to azurerm/internal/services/batch/batch_certificate_resource_test.go index 4af87c83a4636..9e3c3e32ce61e 100644 --- a/azurerm/internal/services/batch/tests/batch_certificate_resource_test.go +++ b/azurerm/internal/services/batch/batch_certificate_resource_test.go @@ -1,4 +1,4 @@ -package tests +package batch_test import ( "fmt" @@ -14,7 +14,7 @@ import ( "github.com/terraform-providers/terraform-provider-azurerm/azurerm/utils" ) -func TestAccAzureRMBatchCertificate_Pfx(t *testing.T) { +func TestAccBatchCertificate_Pfx(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_certificate", "test") subscriptionID := os.Getenv("ARM_SUBSCRIPTION_ID") certificateID := fmt.Sprintf("/subscriptions/%s/resourceGroups/testaccbatch%d/providers/Microsoft.Batch/batchAccounts/testaccbatch%s/certificates/sha1-42c107874fd0e4a9583292a2f1098e8fe4b2edda", subscriptionID, data.RandomInteger, data.RandomString) @@ -22,10 +22,10 @@ func TestAccAzureRMBatchCertificate_Pfx(t *testing.T) { resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchCertificateDestroy, + CheckDestroy: testCheckBatchCertificateDestroy, Steps: []resource.TestStep{ { - Config: testAccAzureRMBatchCertificatePfx(data), + Config: testAccBatchCertificatePfx(data), Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttr(data.ResourceName, "id", certificateID), resource.TestCheckResourceAttr(data.ResourceName, "format", "Pfx"), @@ -43,23 +43,23 @@ func TestAccAzureRMBatchCertificate_Pfx(t *testing.T) { }) } -func TestAccAzureRMBatchCertificate_PfxWithoutPassword(t *testing.T) { +func TestAccBatchCertificate_PfxWithoutPassword(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_certificate", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchCertificateDestroy, + CheckDestroy: testCheckBatchCertificateDestroy, Steps: []resource.TestStep{ { - Config: testAccAzureRMBatchCertificatePfxWithoutPassword(data), + Config: testAccBatchCertificatePfxWithoutPassword(data), ExpectError: regexp.MustCompile("Password is required"), }, }, }) } -func TestAccAzureRMBatchCertificate_Cer(t *testing.T) { +func TestAccBatchCertificate_Cer(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_certificate", "test") subscriptionID := os.Getenv("ARM_SUBSCRIPTION_ID") certificateID := fmt.Sprintf("/subscriptions/%s/resourceGroups/testaccbatch%d/providers/Microsoft.Batch/batchAccounts/testaccbatch%s/certificates/sha1-312d31a79fa0cef49c00f769afc2b73e9f4edf34", subscriptionID, data.RandomInteger, data.RandomString) @@ -67,10 +67,10 @@ func TestAccAzureRMBatchCertificate_Cer(t *testing.T) { resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchCertificateDestroy, + CheckDestroy: testCheckBatchCertificateDestroy, Steps: []resource.TestStep{ { - Config: testAccAzureRMBatchCertificateCer(data), + Config: testAccBatchCertificateCer(data), Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttr(data.ResourceName, "id", certificateID), @@ -84,23 +84,23 @@ func TestAccAzureRMBatchCertificate_Cer(t *testing.T) { }) } -func TestAccAzureRMBatchCertificate_CerWithPassword(t *testing.T) { +func TestAccBatchCertificate_CerWithPassword(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_certificate", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchCertificateDestroy, + CheckDestroy: testCheckBatchCertificateDestroy, Steps: []resource.TestStep{ { - Config: testAccAzureRMBatchCertificateCerWithPassword(data), + Config: testAccBatchCertificateCerWithPassword(data), ExpectError: regexp.MustCompile("Password must not be specified"), }, }, }) } -func testAccAzureRMBatchCertificatePfx(data acceptance.TestData) string { +func testAccBatchCertificatePfx(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -130,7 +130,7 @@ resource "azurerm_batch_certificate" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString) } -func testAccAzureRMBatchCertificatePfxWithoutPassword(data acceptance.TestData) string { +func testAccBatchCertificatePfxWithoutPassword(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -158,7 +158,7 @@ resource "azurerm_batch_certificate" "test" { } `, data.RandomInteger, data.Locations.Primary, data.RandomString) } -func testAccAzureRMBatchCertificateCer(data acceptance.TestData) string { +func testAccBatchCertificateCer(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -186,7 +186,7 @@ resource "azurerm_batch_certificate" "test" { } `, data.RandomInteger, data.Locations.Primary, data.RandomString) } -func testAccAzureRMBatchCertificateCerWithPassword(data acceptance.TestData) string { +func testAccBatchCertificateCerWithPassword(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -216,7 +216,7 @@ resource "azurerm_batch_certificate" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString) } -func testCheckAzureRMBatchCertificateDestroy(s *terraform.State) error { +func testCheckBatchCertificateDestroy(s *terraform.State) error { conn := acceptance.AzureProvider.Meta().(*clients.Client).Batch.CertificateClient ctx := acceptance.AzureProvider.Meta().(*clients.Client).StopContext diff --git a/azurerm/helpers/azure/batch_pool.go b/azurerm/internal/services/batch/batch_pool.go similarity index 94% rename from azurerm/helpers/azure/batch_pool.go rename to azurerm/internal/services/batch/batch_pool.go index 86b46047ce903..025889e8f515f 100644 --- a/azurerm/helpers/azure/batch_pool.go +++ b/azurerm/internal/services/batch/batch_pool.go @@ -1,4 +1,4 @@ -package azure +package batch import ( "fmt" @@ -12,8 +12,8 @@ import ( "github.com/terraform-providers/terraform-provider-azurerm/azurerm/utils" ) -// FlattenBatchPoolAutoScaleSettings flattens the auto scale settings for a Batch pool -func FlattenBatchPoolAutoScaleSettings(settings *batch.AutoScaleSettings) []interface{} { +// flattenBatchPoolAutoScaleSettings flattens the auto scale settings for a Batch pool +func flattenBatchPoolAutoScaleSettings(settings *batch.AutoScaleSettings) []interface{} { results := make([]interface{}, 0) if settings == nil { @@ -34,8 +34,8 @@ func FlattenBatchPoolAutoScaleSettings(settings *batch.AutoScaleSettings) []inte return append(results, result) } -// FlattenBatchPoolFixedScaleSettings flattens the fixed scale settings for a Batch pool -func FlattenBatchPoolFixedScaleSettings(settings *batch.FixedScaleSettings) []interface{} { +// flattenBatchPoolFixedScaleSettings flattens the fixed scale settings for a Batch pool +func flattenBatchPoolFixedScaleSettings(settings *batch.FixedScaleSettings) []interface{} { results := make([]interface{}, 0) if settings == nil { @@ -60,8 +60,8 @@ func FlattenBatchPoolFixedScaleSettings(settings *batch.FixedScaleSettings) []in return append(results, result) } -// FlattenBatchPoolImageReference flattens the Batch pool image reference -func FlattenBatchPoolImageReference(image *batch.ImageReference) []interface{} { +// flattenBatchPoolImageReference flattens the Batch pool image reference +func flattenBatchPoolImageReference(image *batch.ImageReference) []interface{} { results := make([]interface{}, 0) if image == nil { log.Printf("[DEBUG] image is nil") @@ -88,8 +88,8 @@ func FlattenBatchPoolImageReference(image *batch.ImageReference) []interface{} { return append(results, result) } -// FlattenBatchPoolStartTask flattens a Batch pool start task -func FlattenBatchPoolStartTask(startTask *batch.StartTask) []interface{} { +// flattenBatchPoolStartTask flattens a Batch pool start task +func flattenBatchPoolStartTask(startTask *batch.StartTask) []interface{} { results := make([]interface{}, 0) if startTask == nil { @@ -166,8 +166,8 @@ func FlattenBatchPoolStartTask(startTask *batch.StartTask) []interface{} { return append(results, result) } -// FlattenBatchPoolCertificateReferences flattens a Batch pool certificate reference -func FlattenBatchPoolCertificateReferences(armCertificates *[]batch.CertificateReference) []interface{} { +// flattenBatchPoolCertificateReferences flattens a Batch pool certificate reference +func flattenBatchPoolCertificateReferences(armCertificates *[]batch.CertificateReference) []interface{} { if armCertificates == nil { return []interface{}{} } @@ -194,8 +194,8 @@ func FlattenBatchPoolCertificateReferences(armCertificates *[]batch.CertificateR return output } -// FlattenBatchPoolContainerConfiguration flattens a Batch pool container configuration -func FlattenBatchPoolContainerConfiguration(d *schema.ResourceData, armContainerConfiguration *batch.ContainerConfiguration) interface{} { +// flattenBatchPoolContainerConfiguration flattens a Batch pool container configuration +func flattenBatchPoolContainerConfiguration(d *schema.ResourceData, armContainerConfiguration *batch.ContainerConfiguration) interface{} { result := make(map[string]interface{}) if armContainerConfiguration == nil { @@ -205,6 +205,15 @@ func FlattenBatchPoolContainerConfiguration(d *schema.ResourceData, armContainer if armContainerConfiguration.Type != nil { result["type"] = *armContainerConfiguration.Type } + + names := &schema.Set{F: schema.HashString} + if armContainerConfiguration.ContainerImageNames != nil { + for _, armName := range *armContainerConfiguration.ContainerImageNames { + names.Add(armName) + } + } + result["container_image_names"] = names + result["container_registries"] = flattenBatchPoolContainerRegistries(d, armContainerConfiguration.ContainerRegistries) return []interface{}{result} @@ -306,23 +315,24 @@ func ExpandBatchPoolImageReference(list []interface{}) (*batch.ImageReference, e // ExpandBatchPoolContainerConfiguration expands the Batch pool container configuration func ExpandBatchPoolContainerConfiguration(list []interface{}) (*batch.ContainerConfiguration, error) { - if len(list) == 0 { + if len(list) == 0 || list[0] == nil { return nil, nil } - containerConfiguration := list[0].(map[string]interface{}) - containerType := containerConfiguration["type"].(string) - containerRegistries, err := expandBatchPoolContainerRegistries(containerConfiguration["container_registries"].([]interface{})) + block := list[0].(map[string]interface{}) + + containerRegistries, err := expandBatchPoolContainerRegistries(block["container_registries"].([]interface{})) if err != nil { return nil, err } - containerConf := &batch.ContainerConfiguration{ - Type: &containerType, + obj := &batch.ContainerConfiguration{ + Type: utils.String(block["type"].(string)), ContainerRegistries: containerRegistries, + ContainerImageNames: utils.ExpandStringSlice(block["container_image_names"].(*schema.Set).List()), } - return containerConf, nil + return obj, nil } func expandBatchPoolContainerRegistries(list []interface{}) (*[]batch.ContainerRegistry, error) { diff --git a/azurerm/internal/services/batch/batch_pool_data_source.go b/azurerm/internal/services/batch/batch_pool_data_source.go index 6ea8b745248a1..6ef03ca1e111f 100644 --- a/azurerm/internal/services/batch/batch_pool_data_source.go +++ b/azurerm/internal/services/batch/batch_pool_data_source.go @@ -24,7 +24,7 @@ func dataSourceArmBatchPool() *schema.Resource { "name": { Type: schema.TypeString, Required: true, - ValidateFunc: azure.ValidateAzureRMBatchPoolName, + ValidateFunc: ValidateAzureRMBatchPoolName, }, "resource_group_name": azure.SchemaResourceGroupNameForDataSource(), "account_name": { @@ -378,21 +378,21 @@ func dataSourceArmBatchPoolRead(d *schema.ResourceData, meta interface{}) error d.Set("max_tasks_per_node", props.MaxTasksPerNode) if scaleSettings := props.ScaleSettings; scaleSettings != nil { - if err := d.Set("auto_scale", azure.FlattenBatchPoolAutoScaleSettings(scaleSettings.AutoScale)); err != nil { + if err := d.Set("auto_scale", flattenBatchPoolAutoScaleSettings(scaleSettings.AutoScale)); err != nil { return fmt.Errorf("Error flattening `auto_scale`: %+v", err) } - if err := d.Set("fixed_scale", azure.FlattenBatchPoolFixedScaleSettings(scaleSettings.FixedScale)); err != nil { + if err := d.Set("fixed_scale", flattenBatchPoolFixedScaleSettings(scaleSettings.FixedScale)); err != nil { return fmt.Errorf("Error flattening `fixed_scale `: %+v", err) } } if dcfg := props.DeploymentConfiguration; dcfg != nil { if vmcfg := dcfg.VirtualMachineConfiguration; vmcfg != nil { - if err := d.Set("container_configuration", azure.FlattenBatchPoolContainerConfiguration(d, vmcfg.ContainerConfiguration)); err != nil { + if err := d.Set("container_configuration", flattenBatchPoolContainerConfiguration(d, vmcfg.ContainerConfiguration)); err != nil { return fmt.Errorf("error setting `container_configuration`: %v", err) } - if err := d.Set("storage_image_reference", azure.FlattenBatchPoolImageReference(vmcfg.ImageReference)); err != nil { + if err := d.Set("storage_image_reference", flattenBatchPoolImageReference(vmcfg.ImageReference)); err != nil { return fmt.Errorf("error setting `storage_image_reference`: %v", err) } @@ -402,14 +402,14 @@ func dataSourceArmBatchPoolRead(d *schema.ResourceData, meta interface{}) error } } - if err := d.Set("certificate", azure.FlattenBatchPoolCertificateReferences(props.Certificates)); err != nil { + if err := d.Set("certificate", flattenBatchPoolCertificateReferences(props.Certificates)); err != nil { return fmt.Errorf("error setting `certificate`: %v", err) } - d.Set("start_task", azure.FlattenBatchPoolStartTask(props.StartTask)) - d.Set("metadata", azure.FlattenBatchMetaData(props.Metadata)) + d.Set("start_task", flattenBatchPoolStartTask(props.StartTask)) + d.Set("metadata", FlattenBatchMetaData(props.Metadata)) - if err := d.Set("network_configuration", azure.FlattenBatchPoolNetworkConfiguration(props.NetworkConfiguration)); err != nil { + if err := d.Set("network_configuration", FlattenBatchPoolNetworkConfiguration(props.NetworkConfiguration)); err != nil { return fmt.Errorf("error setting `network_configuration`: %v", err) } } diff --git a/azurerm/internal/services/batch/tests/batch_pool_data_source_test.go b/azurerm/internal/services/batch/batch_pool_data_source_test.go similarity index 96% rename from azurerm/internal/services/batch/tests/batch_pool_data_source_test.go rename to azurerm/internal/services/batch/batch_pool_data_source_test.go index 817d2af5c82c1..65332a3dd83f6 100644 --- a/azurerm/internal/services/batch/tests/batch_pool_data_source_test.go +++ b/azurerm/internal/services/batch/batch_pool_data_source_test.go @@ -1,4 +1,4 @@ -package tests +package batch_test import ( "fmt" @@ -9,7 +9,7 @@ import ( "github.com/hashicorp/terraform-plugin-sdk/helper/resource" ) -func TestAccDataSourceAzureRMBatchPool_complete(t *testing.T) { +func TestAccBatchPoolDataSource_complete(t *testing.T) { data := acceptance.BuildTestData(t, "data.azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ @@ -17,7 +17,7 @@ func TestAccDataSourceAzureRMBatchPool_complete(t *testing.T) { Providers: acceptance.SupportedProviders, Steps: []resource.TestStep{ { - Config: testAccDataSourceAzureRMBatchPool_complete(data), + Config: testAccBatchPoolDataSource_complete(data), Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttr(data.ResourceName, "name", fmt.Sprintf("testaccpool%s", data.RandomString)), resource.TestCheckResourceAttr(data.ResourceName, "account_name", fmt.Sprintf("testaccbatch%s", data.RandomString)), @@ -58,7 +58,7 @@ func TestAccDataSourceAzureRMBatchPool_complete(t *testing.T) { }) } -func testAccDataSourceAzureRMBatchPool_complete(data acceptance.TestData) string { +func testAccBatchPoolDataSource_complete(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} diff --git a/azurerm/internal/services/batch/batch_pool_resource.go b/azurerm/internal/services/batch/batch_pool_resource.go index 0793d19100bdd..8abbc901f1177 100644 --- a/azurerm/internal/services/batch/batch_pool_resource.go +++ b/azurerm/internal/services/batch/batch_pool_resource.go @@ -47,7 +47,7 @@ func resourceArmBatchPool() *schema.Resource { Type: schema.TypeString, Required: true, ForceNew: true, - ValidateFunc: azure.ValidateAzureRMBatchPoolName, + ValidateFunc: ValidateAzureRMBatchPoolName, }, // TODO: make this case sensitive once this API bug has been fixed: @@ -137,6 +137,15 @@ func resourceArmBatchPool() *schema.Resource { Optional: true, ValidateFunc: validation.StringIsNotEmpty, }, + "container_image_names": { + Type: schema.TypeSet, + Optional: true, + ForceNew: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + ValidateFunc: validation.StringIsNotEmpty, + }, + }, "container_registries": { Type: schema.TypeList, Optional: true, @@ -524,7 +533,7 @@ func resourceArmBatchPoolCreate(d *schema.ResourceData, meta interface{}) error nodeAgentSkuID := d.Get("node_agent_sku_id").(string) storageImageReferenceSet := d.Get("storage_image_reference").([]interface{}) - imageReference, err := azure.ExpandBatchPoolImageReference(storageImageReferenceSet) + imageReference, err := ExpandBatchPoolImageReference(storageImageReferenceSet) if err != nil { return fmt.Errorf("Error creating Batch pool %q (Resource Group %q): %+v", poolName, resourceGroup, err) } @@ -542,7 +551,7 @@ func resourceArmBatchPoolCreate(d *schema.ResourceData, meta interface{}) error if startTaskValue, startTaskOk := d.GetOk("start_task"); startTaskOk { startTaskList := startTaskValue.([]interface{}) - startTask, startTaskErr := azure.ExpandBatchPoolStartTask(startTaskList) + startTask, startTaskErr := ExpandBatchPoolStartTask(startTaskList) if startTaskErr != nil { return fmt.Errorf("Error creating Batch pool %q (Resource Group %q): %+v", poolName, resourceGroup, startTaskErr) @@ -557,8 +566,7 @@ func resourceArmBatchPoolCreate(d *schema.ResourceData, meta interface{}) error parameters.PoolProperties.StartTask = startTask } - containerConfigurationSet := d.Get("container_configuration").([]interface{}) - containerConfiguration, err := azure.ExpandBatchPoolContainerConfiguration(containerConfigurationSet) + containerConfiguration, err := ExpandBatchPoolContainerConfiguration(d.Get("container_configuration").([]interface{})) if err != nil { return fmt.Errorf("Error creating Batch pool %q (Resource Group %q): %+v", poolName, resourceGroup, err) } @@ -572,7 +580,7 @@ func resourceArmBatchPoolCreate(d *schema.ResourceData, meta interface{}) error } certificates := d.Get("certificate").([]interface{}) - certificateReferences, err := azure.ExpandBatchPoolCertificateReferences(certificates) + certificateReferences, err := ExpandBatchPoolCertificateReferences(certificates) if err != nil { return fmt.Errorf("Error expanding `certificate`: %+v", err) } @@ -583,10 +591,10 @@ func resourceArmBatchPoolCreate(d *schema.ResourceData, meta interface{}) error } metaDataRaw := d.Get("metadata").(map[string]interface{}) - parameters.PoolProperties.Metadata = azure.ExpandBatchMetaData(metaDataRaw) + parameters.PoolProperties.Metadata = ExpandBatchMetaData(metaDataRaw) networkConfiguration := d.Get("network_configuration").([]interface{}) - parameters.PoolProperties.NetworkConfiguration, err = azure.ExpandBatchPoolNetworkConfiguration(networkConfiguration) + parameters.PoolProperties.NetworkConfiguration, err = ExpandBatchPoolNetworkConfiguration(networkConfiguration) if err != nil { return fmt.Errorf("Error expanding `network_configuration`: %+v", err) } @@ -667,7 +675,7 @@ func resourceArmBatchPoolUpdate(d *schema.ResourceData, meta interface{}) error if startTaskValue, startTaskOk := d.GetOk("start_task"); startTaskOk { startTaskList := startTaskValue.([]interface{}) - startTask, startTaskErr := azure.ExpandBatchPoolStartTask(startTaskList) + startTask, startTaskErr := ExpandBatchPoolStartTask(startTaskList) if startTaskErr != nil { return fmt.Errorf("Error updating Batch pool %q (Resource Group %q): %+v", id.Name, id.ResourceGroup, startTaskErr) @@ -682,7 +690,7 @@ func resourceArmBatchPoolUpdate(d *schema.ResourceData, meta interface{}) error parameters.PoolProperties.StartTask = startTask } certificates := d.Get("certificate").([]interface{}) - certificateReferences, err := azure.ExpandBatchPoolCertificateReferences(certificates) + certificateReferences, err := ExpandBatchPoolCertificateReferences(certificates) if err != nil { return fmt.Errorf("Error expanding `certificate`: %+v", err) } @@ -696,11 +704,11 @@ func resourceArmBatchPoolUpdate(d *schema.ResourceData, meta interface{}) error log.Printf("[DEBUG] Updating the MetaData for Batch pool %q (Account name %q / Resource Group %q)..", id.Name, id.AccountName, id.ResourceGroup) metaDataRaw := d.Get("metadata").(map[string]interface{}) - parameters.PoolProperties.Metadata = azure.ExpandBatchMetaData(metaDataRaw) + parameters.PoolProperties.Metadata = ExpandBatchMetaData(metaDataRaw) } networkConfiguration := d.Get("network_configuration").([]interface{}) - parameters.PoolProperties.NetworkConfiguration, err = azure.ExpandBatchPoolNetworkConfiguration(networkConfiguration) + parameters.PoolProperties.NetworkConfiguration, err = ExpandBatchPoolNetworkConfiguration(networkConfiguration) if err != nil { return fmt.Errorf("Error expanding `network_configuration`: %+v", err) } @@ -743,13 +751,14 @@ func resourceArmBatchPoolRead(d *schema.ResourceData, meta interface{}) error { d.Set("resource_group_name", id.ResourceGroup) if props := resp.PoolProperties; props != nil { + d.Set("display_name", props.DisplayName) d.Set("vm_size", props.VMSize) if scaleSettings := props.ScaleSettings; scaleSettings != nil { - if err := d.Set("auto_scale", azure.FlattenBatchPoolAutoScaleSettings(scaleSettings.AutoScale)); err != nil { + if err := d.Set("auto_scale", flattenBatchPoolAutoScaleSettings(scaleSettings.AutoScale)); err != nil { return fmt.Errorf("Error flattening `auto_scale`: %+v", err) } - if err := d.Set("fixed_scale", azure.FlattenBatchPoolFixedScaleSettings(scaleSettings.FixedScale)); err != nil { + if err := d.Set("fixed_scale", flattenBatchPoolFixedScaleSettings(scaleSettings.FixedScale)); err != nil { return fmt.Errorf("Error flattening `fixed_scale `: %+v", err) } } @@ -761,25 +770,25 @@ func resourceArmBatchPoolRead(d *schema.ResourceData, meta interface{}) error { props.DeploymentConfiguration.VirtualMachineConfiguration.ImageReference != nil { imageReference := props.DeploymentConfiguration.VirtualMachineConfiguration.ImageReference - d.Set("storage_image_reference", azure.FlattenBatchPoolImageReference(imageReference)) + d.Set("storage_image_reference", flattenBatchPoolImageReference(imageReference)) d.Set("node_agent_sku_id", props.DeploymentConfiguration.VirtualMachineConfiguration.NodeAgentSkuID) } if dcfg := props.DeploymentConfiguration; dcfg != nil { if vmcfg := dcfg.VirtualMachineConfiguration; vmcfg != nil { - d.Set("container_configuration", azure.FlattenBatchPoolContainerConfiguration(d, vmcfg.ContainerConfiguration)) + d.Set("container_configuration", flattenBatchPoolContainerConfiguration(d, vmcfg.ContainerConfiguration)) } } - if err := d.Set("certificate", azure.FlattenBatchPoolCertificateReferences(props.Certificates)); err != nil { + if err := d.Set("certificate", flattenBatchPoolCertificateReferences(props.Certificates)); err != nil { return fmt.Errorf("Error flattening `certificate`: %+v", err) } - d.Set("start_task", azure.FlattenBatchPoolStartTask(props.StartTask)) - d.Set("metadata", azure.FlattenBatchMetaData(props.Metadata)) + d.Set("start_task", flattenBatchPoolStartTask(props.StartTask)) + d.Set("metadata", FlattenBatchMetaData(props.Metadata)) if props.NetworkConfiguration != nil { - if err := d.Set("network_configuration", azure.FlattenBatchPoolNetworkConfiguration(props.NetworkConfiguration)); err != nil { + if err := d.Set("network_configuration", FlattenBatchPoolNetworkConfiguration(props.NetworkConfiguration)); err != nil { return fmt.Errorf("error setting `network_configuration`: %v", err) } } diff --git a/azurerm/internal/services/batch/tests/batch_pool_resource_test.go b/azurerm/internal/services/batch/batch_pool_resource_test.go similarity index 88% rename from azurerm/internal/services/batch/tests/batch_pool_resource_test.go rename to azurerm/internal/services/batch/batch_pool_resource_test.go index 387a5f6830f14..bc30ecf58091b 100644 --- a/azurerm/internal/services/batch/tests/batch_pool_resource_test.go +++ b/azurerm/internal/services/batch/batch_pool_resource_test.go @@ -1,4 +1,4 @@ -package tests +package batch_test import ( "fmt" @@ -15,18 +15,18 @@ import ( "github.com/terraform-providers/terraform-provider-azurerm/azurerm/utils" ) -func TestAccAzureRMBatchPool_basic(t *testing.T) { +func TestAccBatchPool_basic(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPool_basic(data), + Config: testAccBatchPool_basic(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchPoolExists(data.ResourceName), + testCheckBatchPoolExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "vm_size", "STANDARD_A1"), resource.TestCheckResourceAttr(data.ResourceName, "node_agent_sku_id", "batch.node.ubuntu 16.04"), resource.TestCheckResourceAttr(data.ResourceName, "account_name", fmt.Sprintf("testaccbatch%s", data.RandomString)), @@ -39,22 +39,23 @@ func TestAccAzureRMBatchPool_basic(t *testing.T) { resource.TestCheckResourceAttr(data.ResourceName, "start_task.#", "0"), ), }, + data.ImportStep("stop_pending_resize_operation"), }, }) } -func TestAccAzureRMBatchPool_requiresImport(t *testing.T) { +func TestAccBatchPool_requiresImport(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPool_basic(data), + Config: testAccBatchPool_basic(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchPoolExists(data.ResourceName), + testCheckBatchPoolExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "vm_size", "STANDARD_A1"), resource.TestCheckResourceAttr(data.ResourceName, "node_agent_sku_id", "batch.node.ubuntu 16.04"), resource.TestCheckResourceAttr(data.ResourceName, "account_name", fmt.Sprintf("testaccbatch%s", data.RandomString)), @@ -68,25 +69,25 @@ func TestAccAzureRMBatchPool_requiresImport(t *testing.T) { ), }, { - Config: testaccAzureRMBatchPool_requiresImport(data), - ExpectError: acceptance.RequiresImportError("azurerm_batch_account"), + Config: testAccBatchPool_requiresImport(data), + ExpectError: acceptance.RequiresImportError("azurerm_batch_pool"), }, }, }) } -func TestAccAzureRMBatchPool_fixedScale_complete(t *testing.T) { +func TestAccBatchPool_fixedScale_complete(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPool_fixedScale_complete(data), + Config: testAccBatchPool_fixedScale_complete(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchPoolExists(data.ResourceName), + testCheckBatchPoolExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "vm_size", "STANDARD_A1"), resource.TestCheckResourceAttr(data.ResourceName, "max_tasks_per_node", "2"), resource.TestCheckResourceAttr(data.ResourceName, "node_agent_sku_id", "batch.node.ubuntu 16.04"), @@ -103,22 +104,23 @@ func TestAccAzureRMBatchPool_fixedScale_complete(t *testing.T) { resource.TestCheckResourceAttr(data.ResourceName, "start_task.#", "0"), ), }, + data.ImportStep("stop_pending_resize_operation"), }, }) } -func TestAccAzureRMBatchPool_autoScale_complete(t *testing.T) { +func TestAccBatchPool_autoScale_complete(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPool_autoScale_complete(data), + Config: testAccBatchPool_autoScale_complete(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchPoolExists(data.ResourceName), + testCheckBatchPoolExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "vm_size", "STANDARD_A1"), resource.TestCheckResourceAttr(data.ResourceName, "node_agent_sku_id", "batch.node.ubuntu 16.04"), resource.TestCheckResourceAttr(data.ResourceName, "account_name", fmt.Sprintf("testaccbatch%s", data.RandomString)), @@ -132,22 +134,23 @@ func TestAccAzureRMBatchPool_autoScale_complete(t *testing.T) { resource.TestCheckResourceAttr(data.ResourceName, "start_task.#", "0"), ), }, + data.ImportStep("stop_pending_resize_operation"), }, }) } -func TestAccAzureRMBatchPool_completeUpdated(t *testing.T) { +func TestAccBatchPool_completeUpdated(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPool_fixedScale_complete(data), + Config: testAccBatchPool_fixedScale_complete(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchPoolExists(data.ResourceName), + testCheckBatchPoolExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "vm_size", "STANDARD_A1"), resource.TestCheckResourceAttr(data.ResourceName, "node_agent_sku_id", "batch.node.ubuntu 16.04"), resource.TestCheckResourceAttr(data.ResourceName, "account_name", fmt.Sprintf("testaccbatch%s", data.RandomString)), @@ -163,10 +166,11 @@ func TestAccAzureRMBatchPool_completeUpdated(t *testing.T) { resource.TestCheckResourceAttr(data.ResourceName, "start_task.#", "0"), ), }, + data.ImportStep("stop_pending_resize_operation"), { - Config: testaccAzureRMBatchPool_autoScale_complete(data), + Config: testAccBatchPool_autoScale_complete(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchPoolExists(data.ResourceName), + testCheckBatchPoolExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "vm_size", "STANDARD_A1"), resource.TestCheckResourceAttr(data.ResourceName, "node_agent_sku_id", "batch.node.ubuntu 16.04"), resource.TestCheckResourceAttr(data.ResourceName, "account_name", fmt.Sprintf("testaccbatch%s", data.RandomString)), @@ -180,22 +184,23 @@ func TestAccAzureRMBatchPool_completeUpdated(t *testing.T) { resource.TestCheckResourceAttr(data.ResourceName, "start_task.#", "0"), ), }, + data.ImportStep("stop_pending_resize_operation"), }, }) } -func TestAccAzureRMBatchPoolStartTask_basic(t *testing.T) { +func TestAccBatchPoolStartTask_basic(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPoolStartTask_basic(data), + Config: testAccBatchPoolStartTask_basic(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchPoolExists(data.ResourceName), + testCheckBatchPoolExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "vm_size", "STANDARD_A1"), resource.TestCheckResourceAttr(data.ResourceName, "node_agent_sku_id", "batch.node.ubuntu 16.04"), resource.TestCheckResourceAttr(data.ResourceName, "account_name", fmt.Sprintf("testaccbatch%s", data.RandomString)), @@ -219,11 +224,12 @@ func TestAccAzureRMBatchPoolStartTask_basic(t *testing.T) { resource.TestCheckResourceAttr(data.ResourceName, "start_task.0.user_identity.0.auto_user.0.elevation_level", "NonAdmin"), ), }, + data.ImportStep("stop_pending_resize_operation"), }, }) } -func TestAccAzureRMBatchPool_certificates(t *testing.T) { +func TestAccBatchPool_certificates(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") subscriptionID := os.Getenv("ARM_SUBSCRIPTION_ID") @@ -233,12 +239,12 @@ func TestAccAzureRMBatchPool_certificates(t *testing.T) { resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPoolCertificates(data), + Config: testAccBatchPoolCertificates(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchPoolExists(data.ResourceName), + testCheckBatchPoolExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "vm_size", "STANDARD_A1"), resource.TestCheckResourceAttr(data.ResourceName, "node_agent_sku_id", "batch.node.ubuntu 16.04"), resource.TestCheckResourceAttr(data.ResourceName, "account_name", fmt.Sprintf("testaccbatch%s", data.RandomString)), @@ -256,109 +262,115 @@ func TestAccAzureRMBatchPool_certificates(t *testing.T) { resource.TestCheckResourceAttr(data.ResourceName, "certificate.1.visibility.4077195354", "RemoteUser"), ), }, + data.ImportStep("stop_pending_resize_operation"), }, }) } -func TestAccAzureRMBatchPool_validateResourceFileWithoutSource(t *testing.T) { +func TestAccBatchPool_validateResourceFileWithoutSource(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPoolValidateResourceFileWithoutSource(data), + Config: testAccBatchPoolValidateResourceFileWithoutSource(data), ExpectError: regexp.MustCompile("Exactly one of auto_storage_container_name, storage_container_url and http_url must be specified"), }, }, }) } -func TestAccAzureRMBatchPool_container(t *testing.T) { +func TestAccBatchPool_container(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPoolContainerConfiguration(data), + Config: testAccBatchPoolContainerConfiguration(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchPoolExists(data.ResourceName), + testCheckBatchPoolExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "container_configuration.0.type", "DockerCompatible"), + resource.TestCheckResourceAttr(data.ResourceName, "container_configuration.0.container_image_names.#", "1"), resource.TestCheckResourceAttr(data.ResourceName, "container_configuration.0.container_registries.#", "1"), resource.TestCheckResourceAttr(data.ResourceName, "container_configuration.0.container_registries.0.registry_server", "myContainerRegistry.azurecr.io"), resource.TestCheckResourceAttr(data.ResourceName, "container_configuration.0.container_registries.0.user_name", "myUserName"), resource.TestCheckResourceAttr(data.ResourceName, "container_configuration.0.container_registries.0.password", "myPassword"), ), }, + data.ImportStep( + "stop_pending_resize_operation", + "container_configuration.0.container_registries.0.password", + ), }, }) } -func TestAccAzureRMBatchPool_validateResourceFileWithMultipleSources(t *testing.T) { +func TestAccBatchPool_validateResourceFileWithMultipleSources(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPoolValidateResourceFileWithMultipleSources(data), + Config: testAccBatchPoolValidateResourceFileWithMultipleSources(data), ExpectError: regexp.MustCompile("Exactly one of auto_storage_container_name, storage_container_url and http_url must be specified"), }, }, }) } -func TestAccAzureRMBatchPool_validateResourceFileBlobPrefixWithoutAutoStorageContainerUrl(t *testing.T) { +func TestAccBatchPool_validateResourceFileBlobPrefixWithoutAutoStorageContainerUrl(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPoolValidateResourceFileBlobPrefixWithoutAutoStorageContainerName(data), + Config: testAccBatchPoolValidateResourceFileBlobPrefixWithoutAutoStorageContainerName(data), ExpectError: regexp.MustCompile("auto_storage_container_name or storage_container_url must be specified when using blob_prefix"), }, }, }) } -func TestAccAzureRMBatchPool_validateResourceFileHttpURLWithoutFilePath(t *testing.T) { +func TestAccBatchPool_validateResourceFileHttpURLWithoutFilePath(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPoolValidateResourceFileHttpURLWithoutFilePath(data), + Config: testAccBatchPoolValidateResourceFileHttpURLWithoutFilePath(data), ExpectError: regexp.MustCompile("file_path must be specified when using http_url"), }, }, }) } -func TestAccAzureRMBatchPool_customImage(t *testing.T) { +func TestAccBatchPool_customImage(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPoolCustomImageConfiguration(data), + Config: testAccBatchPoolCustomImageConfiguration(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchPoolExists(data.ResourceName), + testCheckBatchPoolExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "vm_size", "STANDARD_A1"), resource.TestCheckResourceAttr(data.ResourceName, "max_tasks_per_node", "2"), resource.TestCheckResourceAttr(data.ResourceName, "node_agent_sku_id", "batch.node.ubuntu 16.04"), @@ -371,22 +383,23 @@ func TestAccAzureRMBatchPool_customImage(t *testing.T) { resource.TestCheckResourceAttr(data.ResourceName, "start_task.#", "0"), ), }, + data.ImportStep("stop_pending_resize_operation"), }, }) } -func TestAccAzureRMBatchPool_frontEndPortRanges(t *testing.T) { +func TestAccBatchPool_frontEndPortRanges(t *testing.T) { data := acceptance.BuildTestData(t, "azurerm_batch_pool", "test") resource.ParallelTest(t, resource.TestCase{ PreCheck: func() { acceptance.PreCheck(t) }, Providers: acceptance.SupportedProviders, - CheckDestroy: testCheckAzureRMBatchPoolDestroy, + CheckDestroy: testCheckBatchPoolDestroy, Steps: []resource.TestStep{ { - Config: testaccAzureRMBatchPool_networkConfiguration(data), + Config: testAccBatchPool_networkConfiguration(data), Check: resource.ComposeTestCheckFunc( - testCheckAzureRMBatchPoolExists(data.ResourceName), + testCheckBatchPoolExists(data.ResourceName), resource.TestCheckResourceAttr(data.ResourceName, "vm_size", "STANDARD_A1"), resource.TestCheckResourceAttr(data.ResourceName, "node_agent_sku_id", "batch.node.ubuntu 16.04"), resource.TestCheckResourceAttr(data.ResourceName, "account_name", fmt.Sprintf("testaccbatch%s", data.RandomString)), @@ -408,7 +421,7 @@ func TestAccAzureRMBatchPool_frontEndPortRanges(t *testing.T) { }) } -func testCheckAzureRMBatchPoolExists(name string) resource.TestCheckFunc { +func testCheckBatchPoolExists(name string) resource.TestCheckFunc { return func(s *terraform.State) error { ctx := acceptance.AzureProvider.Meta().(*clients.Client).StopContext conn := acceptance.AzureProvider.Meta().(*clients.Client).Batch.PoolClient @@ -437,7 +450,7 @@ func testCheckAzureRMBatchPoolExists(name string) resource.TestCheckFunc { } } -func testCheckAzureRMBatchPoolDestroy(s *terraform.State) error { +func testCheckBatchPoolDestroy(s *terraform.State) error { ctx := acceptance.AzureProvider.Meta().(*clients.Client).StopContext conn := acceptance.AzureProvider.Meta().(*clients.Client).Batch.PoolClient @@ -463,7 +476,7 @@ func testCheckAzureRMBatchPoolDestroy(s *terraform.State) error { return nil } -func testaccAzureRMBatchPool_fixedScale_complete(data acceptance.TestData) string { +func testAccBatchPool_fixedScale_complete(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -521,7 +534,7 @@ resource "azurerm_batch_pool" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString, data.RandomString) } -func testaccAzureRMBatchPool_autoScale_complete(data acceptance.TestData) string { +func testAccBatchPool_autoScale_complete(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -584,7 +597,7 @@ EOF `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString, data.RandomString) } -func testaccAzureRMBatchPool_basic(data acceptance.TestData) string { +func testAccBatchPool_basic(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -622,7 +635,7 @@ resource "azurerm_batch_pool" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString) } -func testaccAzureRMBatchPool_requiresImport(data acceptance.TestData) string { +func testAccBatchPool_requiresImport(data acceptance.TestData) string { return fmt.Sprintf(` %s @@ -634,7 +647,7 @@ resource "azurerm_batch_pool" "import" { vm_size = azurerm_batch_pool.test.vm_size fixed_scale { - target_dedicated_nodes = 1 + target_dedicated_nodes = azurerm_batch_pool.test.fixed_scale[0].target_dedicated_nodes } storage_image_reference { @@ -644,10 +657,10 @@ resource "azurerm_batch_pool" "import" { version = "latest" } } -`, testaccAzureRMBatchPool_basic(data)) +`, testAccBatchPool_basic(data)) } -func testaccAzureRMBatchPoolStartTask_basic(data acceptance.TestData) string { +func testAccBatchPoolStartTask_basic(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -708,7 +721,7 @@ resource "azurerm_batch_pool" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString) } -func testaccAzureRMBatchPoolValidateResourceFileWithoutSource(data acceptance.TestData) string { +func testAccBatchPoolValidateResourceFileWithoutSource(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -770,7 +783,7 @@ resource "azurerm_batch_pool" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString) } -func testaccAzureRMBatchPoolValidateResourceFileWithMultipleSources(data acceptance.TestData) string { +func testAccBatchPoolValidateResourceFileWithMultipleSources(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -832,7 +845,7 @@ resource "azurerm_batch_pool" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString) } -func testaccAzureRMBatchPoolValidateResourceFileBlobPrefixWithoutAutoStorageContainerName(data acceptance.TestData) string { +func testAccBatchPoolValidateResourceFileBlobPrefixWithoutAutoStorageContainerName(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -894,7 +907,7 @@ resource "azurerm_batch_pool" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString) } -func testaccAzureRMBatchPoolValidateResourceFileHttpURLWithoutFilePath(data acceptance.TestData) string { +func testAccBatchPoolValidateResourceFileHttpURLWithoutFilePath(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -955,7 +968,7 @@ resource "azurerm_batch_pool" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString) } -func testaccAzureRMBatchPoolCertificates(data acceptance.TestData) string { +func testAccBatchPoolCertificates(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -1024,7 +1037,7 @@ resource "azurerm_batch_pool" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString) } -func testaccAzureRMBatchPoolContainerConfiguration(data acceptance.TestData) string { +func testAccBatchPoolContainerConfiguration(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -1067,7 +1080,8 @@ resource "azurerm_batch_pool" "test" { } container_configuration { - type = "DockerCompatible" + type = "DockerCompatible" + container_image_names = ["centos7"] container_registries { registry_server = "myContainerRegistry.azurecr.io" user_name = "myUserName" @@ -1078,7 +1092,7 @@ resource "azurerm_batch_pool" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomString, data.RandomString, data.RandomString) } -func testaccAzureRMBatchPoolCustomImageConfiguration(data acceptance.TestData) string { +func testAccBatchPoolCustomImageConfiguration(data acceptance.TestData) string { return fmt.Sprintf(` provider "azurerm" { features {} @@ -1230,15 +1244,15 @@ resource "azurerm_batch_pool" "test" { `, data.RandomInteger, data.Locations.Primary, data.RandomInteger, data.RandomInteger, data.RandomInteger, data.RandomInteger, data.RandomString, data.RandomInteger, data.RandomInteger, data.RandomInteger, data.RandomString, data.RandomString) } -func testaccAzureRMBatchPool_networkConfiguration(data acceptance.TestData) string { +func testAccBatchPool_networkConfiguration(data acceptance.TestData) string { return fmt.Sprintf(` resource "azurerm_resource_group" "test" { - name = "testaccRG-%d-batchpool" - location = "%s" + name = "testaccRG-%[1]d-batchpool" + location = "%[2]s" } resource "azurerm_virtual_network" "test" { - name = "acctestvirtnet%d" + name = "acctestvirtnet%[1]d" address_space = ["10.0.0.0/16"] location = azurerm_resource_group.test.location resource_group_name = azurerm_resource_group.test.name @@ -1252,22 +1266,22 @@ resource "azurerm_subnet" "test" { } resource "azurerm_public_ip" "test" { - name = "acctestpublicip-%d" + name = "acctestpublicip-%[1]d" location = azurerm_resource_group.test.location resource_group_name = azurerm_resource_group.test.name allocation_method = "Static" sku = "Standard" - domain_name_label = "acctest-publicip" + domain_name_label = "acctest-publicip-%[1]d" } resource "azurerm_batch_account" "test" { - name = "testaccbatch%s" + name = "testaccbatch%[3]s" resource_group_name = "${azurerm_resource_group.test.name}" location = "${azurerm_resource_group.test.location}" } resource "azurerm_batch_pool" "test" { - name = "testaccpool%s" + name = "testaccpool%[3]s" resource_group_name = "${azurerm_resource_group.test.name}" account_name = "${azurerm_batch_account.test.name}" node_agent_sku_id = "batch.node.ubuntu 16.04" @@ -1302,5 +1316,5 @@ resource "azurerm_batch_pool" "test" { } } } -`, data.RandomInteger, data.Locations.Primary, data.RandomInteger, data.RandomInteger, data.RandomString, data.RandomString) +`, data.RandomInteger, data.Locations.Primary, data.RandomString) } diff --git a/azurerm/internal/services/batch/tests/testdata/batch_certificate.cer b/azurerm/internal/services/batch/testdata/batch_certificate.cer similarity index 100% rename from azurerm/internal/services/batch/tests/testdata/batch_certificate.cer rename to azurerm/internal/services/batch/testdata/batch_certificate.cer diff --git a/azurerm/internal/services/batch/tests/testdata/batch_certificate.pfx b/azurerm/internal/services/batch/testdata/batch_certificate.pfx similarity index 100% rename from azurerm/internal/services/batch/tests/testdata/batch_certificate.pfx rename to azurerm/internal/services/batch/testdata/batch_certificate.pfx diff --git a/website/docs/r/batch_pool.html.markdown b/website/docs/r/batch_pool.html.markdown index 3a3258162e926..27e15665fe551 100644 --- a/website/docs/r/batch_pool.html.markdown +++ b/website/docs/r/batch_pool.html.markdown @@ -239,6 +239,8 @@ A `container_configuration` block supports the following: * `type` - (Optional) The type of container configuration. Possible value is `DockerCompatible`. +* `container_image_names` - (Optional) A list of container image names to use, as would be specified by `docker pull`. + * `container_registries` - (Optional) Additional container registries from which container images can be pulled by the pool's VMs. ---