Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New resource: azurerm_orchestrated_virtual_machine_scale_set #6626

Merged
merged 29 commits into from
May 21, 2020
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
b48bd4b
Refine VM ID parse functions
ArcturusZhang Apr 8, 2020
4f30719
Some follow ups on VM ID refactor
ArcturusZhang Apr 8, 2020
5658d03
VMSS and extension refactor
ArcturusZhang Apr 8, 2020
6facd42
VM extension refactor
ArcturusZhang Apr 8, 2020
94236b9
Managed disk ID
ArcturusZhang Apr 8, 2020
865f825
Fix CI
ArcturusZhang Apr 8, 2020
988a70c
Fix another missed one
ArcturusZhang Apr 8, 2020
48a2e32
go imports
ArcturusZhang Apr 9, 2020
d54f13f
Goimports again...
ArcturusZhang Apr 9, 2020
b873afe
Add new resource of VMSS in VMO mode
ArcturusZhang Apr 8, 2020
5a4cf2c
Modify VM to support create VM in VMSS VMO mode
ArcturusZhang Apr 8, 2020
79ddbbe
Fix some problems
ArcturusZhang Apr 9, 2020
b69881f
Initial commit of acc test
ArcturusZhang Apr 10, 2020
9d33259
Merge remote-tracking branch 'origin/master' into Orchestration-mode
ArcturusZhang Apr 10, 2020
0cb68ac
Finalize tests and doc
ArcturusZhang Apr 10, 2020
85d2761
Merge remote-tracking branch 'origin/master' into Orchestration-mode
ArcturusZhang Apr 10, 2020
86ea743
Merge remote-tracking branch 'origin/master' into Orchestration-mode
ArcturusZhang Apr 15, 2020
cec54f6
Finalize orchestration mode
ArcturusZhang Apr 22, 2020
8397ec4
Merge remote-tracking branch 'origin/master' into Orchestration-mode
ArcturusZhang Apr 22, 2020
aa5bb58
terrafmt
ArcturusZhang Apr 22, 2020
bd796fc
Resolve comments
ArcturusZhang Apr 26, 2020
cdcfa20
gofmt
ArcturusZhang Apr 26, 2020
b5bd514
terrafmt
ArcturusZhang Apr 26, 2020
4c43f60
Merge remote-tracking branch 'origin/master' into Orchestration-mode
ArcturusZhang May 8, 2020
23f8129
Rename virtual_machine_scale_set_orchestrator_vm to orchestrated_virt…
ArcturusZhang May 8, 2020
a7abdc5
Resolve comments
ArcturusZhang May 15, 2020
8351c72
Fix the bad link
ArcturusZhang May 15, 2020
8e7a2bd
Merge remote-tracking branch 'origin/master' into Orchestration-mode
ArcturusZhang May 18, 2020
563322f
Fix bad test cases
ArcturusZhang May 21, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Finalize orchestration mode
  • Loading branch information
ArcturusZhang committed Apr 22, 2020
commit cec54f6d49f6da9e52e03ff74b334aec72c8fdd0
71 changes: 36 additions & 35 deletions azurerm/internal/services/compute/registration.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,47 +21,48 @@ func (r Registration) WebsiteCategories() []string {
// SupportedDataSources returns the supported Data Sources supported by this Service
func (r Registration) SupportedDataSources() map[string]*schema.Resource {
return map[string]*schema.Resource{
"azurerm_availability_set": dataSourceArmAvailabilitySet(),
"azurerm_dedicated_host": dataSourceArmDedicatedHost(),
"azurerm_dedicated_host_group": dataSourceArmDedicatedHostGroup(),
"azurerm_disk_encryption_set": dataSourceArmDiskEncryptionSet(),
"azurerm_managed_disk": dataSourceArmManagedDisk(),
"azurerm_image": dataSourceArmImage(),
"azurerm_platform_image": dataSourceArmPlatformImage(),
"azurerm_proximity_placement_group": dataSourceArmProximityPlacementGroup(),
"azurerm_shared_image_gallery": dataSourceArmSharedImageGallery(),
"azurerm_shared_image_version": dataSourceArmSharedImageVersion(),
"azurerm_shared_image": dataSourceArmSharedImage(),
"azurerm_snapshot": dataSourceArmSnapshot(),
"azurerm_virtual_machine": dataSourceArmVirtualMachine(),
"azurerm_availability_set": dataSourceArmAvailabilitySet(),
"azurerm_dedicated_host": dataSourceArmDedicatedHost(),
"azurerm_dedicated_host_group": dataSourceArmDedicatedHostGroup(),
"azurerm_disk_encryption_set": dataSourceArmDiskEncryptionSet(),
"azurerm_managed_disk": dataSourceArmManagedDisk(),
"azurerm_image": dataSourceArmImage(),
"azurerm_platform_image": dataSourceArmPlatformImage(),
"azurerm_proximity_placement_group": dataSourceArmProximityPlacementGroup(),
"azurerm_shared_image_gallery": dataSourceArmSharedImageGallery(),
"azurerm_shared_image_version": dataSourceArmSharedImageVersion(),
"azurerm_shared_image": dataSourceArmSharedImage(),
"azurerm_snapshot": dataSourceArmSnapshot(),
"azurerm_virtual_machine": dataSourceArmVirtualMachine(),
"azurerm_virtual_machine_scale_set_orchestrator_vm": dataSourceArmVirtualMachineScaleSetOrchestratorVM(),
}
}

// SupportedResources returns the supported Resources supported by this Service
func (r Registration) SupportedResources() map[string]*schema.Resource {
resources := map[string]*schema.Resource{
"azurerm_availability_set": resourceArmAvailabilitySet(),
"azurerm_dedicated_host": resourceArmDedicatedHost(),
"azurerm_dedicated_host_group": resourceArmDedicatedHostGroup(),
"azurerm_disk_encryption_set": resourceArmDiskEncryptionSet(),
"azurerm_image": resourceArmImage(),
"azurerm_managed_disk": resourceArmManagedDisk(),
"azurerm_marketplace_agreement": resourceArmMarketplaceAgreement(),
"azurerm_proximity_placement_group": resourceArmProximityPlacementGroup(),
"azurerm_shared_image_gallery": resourceArmSharedImageGallery(),
"azurerm_shared_image_version": resourceArmSharedImageVersion(),
"azurerm_shared_image": resourceArmSharedImage(),
"azurerm_snapshot": resourceArmSnapshot(),
"azurerm_virtual_machine_data_disk_attachment": resourceArmVirtualMachineDataDiskAttachment(),
"azurerm_virtual_machine_extension": resourceArmVirtualMachineExtension(),
"azurerm_virtual_machine_scale_set": resourceArmVirtualMachineScaleSet(),
"azurerm_virtual_machine_scale_set_vm_mode": resourceArmVirtualMachineScaleSetVMMode(),
"azurerm_virtual_machine": resourceArmVirtualMachine(),
"azurerm_linux_virtual_machine": resourceLinuxVirtualMachine(),
"azurerm_linux_virtual_machine_scale_set": resourceArmLinuxVirtualMachineScaleSet(),
"azurerm_virtual_machine_scale_set_extension": resourceArmVirtualMachineScaleSetExtension(),
"azurerm_windows_virtual_machine": resourceWindowsVirtualMachine(),
"azurerm_windows_virtual_machine_scale_set": resourceArmWindowsVirtualMachineScaleSet(),
"azurerm_availability_set": resourceArmAvailabilitySet(),
"azurerm_dedicated_host": resourceArmDedicatedHost(),
"azurerm_dedicated_host_group": resourceArmDedicatedHostGroup(),
"azurerm_disk_encryption_set": resourceArmDiskEncryptionSet(),
"azurerm_image": resourceArmImage(),
"azurerm_managed_disk": resourceArmManagedDisk(),
"azurerm_marketplace_agreement": resourceArmMarketplaceAgreement(),
"azurerm_proximity_placement_group": resourceArmProximityPlacementGroup(),
"azurerm_shared_image_gallery": resourceArmSharedImageGallery(),
"azurerm_shared_image_version": resourceArmSharedImageVersion(),
"azurerm_shared_image": resourceArmSharedImage(),
"azurerm_snapshot": resourceArmSnapshot(),
"azurerm_virtual_machine_data_disk_attachment": resourceArmVirtualMachineDataDiskAttachment(),
"azurerm_virtual_machine_extension": resourceArmVirtualMachineExtension(),
"azurerm_virtual_machine_scale_set": resourceArmVirtualMachineScaleSet(),
"azurerm_virtual_machine_scale_set_orchestrator_vm": resourceArmVirtualMachineScaleSetOrchestratorVM(),
"azurerm_virtual_machine": resourceArmVirtualMachine(),
"azurerm_linux_virtual_machine": resourceLinuxVirtualMachine(),
"azurerm_linux_virtual_machine_scale_set": resourceArmLinuxVirtualMachineScaleSet(),
"azurerm_virtual_machine_scale_set_extension": resourceArmVirtualMachineScaleSetExtension(),
"azurerm_windows_virtual_machine": resourceWindowsVirtualMachine(),
"azurerm_windows_virtual_machine_scale_set": resourceArmWindowsVirtualMachineScaleSet(),
}

return resources
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
package tests

import (
"fmt"
"testing"

"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/acceptance"
)

func TestAccDataSourceAzureRMWindowsVirtualMachineScaleSetOrchestratorVM_basic(t *testing.T) {
data := acceptance.BuildTestData(t, "data.azurerm_virtual_machine_scale_set_orchestrator_vm", "test")

resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { acceptance.PreCheck(t) },
Providers: acceptance.SupportedProviders,
CheckDestroy: testCheckAzureRMWindowsVirtualMachineScaleSetOrchestratorVMDestroy,
Steps: []resource.TestStep{
{
Config: testAccDataSourceAzureRMWindowsVirtualMachineScaleSetOrchestratorVM_basic(data),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr(data.ResourceName, "tags.%", "1"),
resource.TestCheckResourceAttr(data.ResourceName, "tags.ENV", "Test"),
),
},
},
})
}

func testAccDataSourceAzureRMWindowsVirtualMachineScaleSetOrchestratorVM_basic(data acceptance.TestData) string {
template := testAccAzureRMWindowsVirtualMachineScaleSetOrchestratorVM_basicLinux(data)
return fmt.Sprintf(`
%s

data "azurerm_virtual_machine_scale_set_orchestrator_vm" "test" {
name = azurerm_virtual_machine_scale_set_orchestrator_vm.test.name
resource_group_name = azurerm_virtual_machine_scale_set_orchestrator_vm.test.resource_group_name
}
`, template)
}
Loading