Repository: jclouds-labs Updated Branches: refs/heads/2.0.x c4a91d2d9 -> 2e41dc90a
Azurecompute ARM - proper tests for disks - Fix DataDisk.CachingTypes.fromValue to recognize values properly - Fix tests which had blob disks and managed disks at the same time - At this point managed disks are used by default and should be tested. Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/2e41dc90 Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/2e41dc90 Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/2e41dc90 Branch: refs/heads/2.0.x Commit: 2e41dc90a5bf7365801e54dc79a7760b64a30261 Parents: c4a91d2 Author: Valentin Aitken <[email protected]> Authored: Fri May 26 17:56:41 2017 +0300 Committer: Ignasi Barrera <[email protected]> Committed: Mon May 29 10:30:57 2017 +0200 ---------------------------------------------------------------------- .../azurecompute/arm/domain/DataDisk.java | 15 ++- .../arm/features/VirtualMachineApiMockTest.java | 75 +++++++++--- .../resources/createvirtualmachineresponse.json | 9 +- azurecompute-arm/src/test/resources/image.json | 4 +- .../src/test/resources/virtualmachine.json | 12 +- .../src/test/resources/virtualmachines.json | 113 +++++++++++++++++-- 6 files changed, 188 insertions(+), 40 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/2e41dc90/azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/domain/DataDisk.java ---------------------------------------------------------------------- diff --git a/azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/domain/DataDisk.java b/azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/domain/DataDisk.java index 40189c3..2d61509 100644 --- a/azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/domain/DataDisk.java +++ b/azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/domain/DataDisk.java @@ -49,7 +49,12 @@ public abstract class DataDisk implements Provisionable { UNRECOGNIZED; public static CachingTypes fromValue(final String text) { - return (CachingTypes) GetEnumValue.fromValueOrDefault(text, UNRECOGNIZED); + for (CachingTypes type : CachingTypes.values()) { + if (type.toString().equals(text)) { + return type; + } + } + return UNRECOGNIZED; } @Override @@ -108,13 +113,15 @@ public abstract class DataDisk implements Provisionable { public static DataDisk create(final String name, final String diskSizeGB, final Integer lun, final VHD vhd, final VHD image, final String createOption, final String caching, final ManagedDiskParameters managedDiskParamenters, final String provisioningState) { - return builder() - .name(name) + final Builder builder = builder(); + if (caching != null) { + builder.caching(CachingTypes.fromValue(caching)); + } + return builder.name(name) .diskSizeGB(diskSizeGB) .lun(lun) .vhd(vhd) .image(image) - .caching(CachingTypes.fromValue(caching)) .createOption(DiskCreateOptionTypes.fromValue(createOption)) .managedDiskParameters(managedDiskParamenters) .provisioningState(provisioningState) http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/2e41dc90/azurecompute-arm/src/test/java/org/jclouds/azurecompute/arm/features/VirtualMachineApiMockTest.java ---------------------------------------------------------------------- diff --git a/azurecompute-arm/src/test/java/org/jclouds/azurecompute/arm/features/VirtualMachineApiMockTest.java b/azurecompute-arm/src/test/java/org/jclouds/azurecompute/arm/features/VirtualMachineApiMockTest.java index 83e5ef2..258ae1a 100644 --- a/azurecompute-arm/src/test/java/org/jclouds/azurecompute/arm/features/VirtualMachineApiMockTest.java +++ b/azurecompute-arm/src/test/java/org/jclouds/azurecompute/arm/features/VirtualMachineApiMockTest.java @@ -42,9 +42,9 @@ import org.jclouds.azurecompute.arm.domain.OSProfile; import org.jclouds.azurecompute.arm.domain.OSProfile.LinuxConfiguration; import org.jclouds.azurecompute.arm.domain.OSProfile.WindowsConfiguration.AdditionalUnattendContent; import org.jclouds.azurecompute.arm.domain.OSProfile.WindowsConfiguration.WinRM.Protocol; -import org.jclouds.azurecompute.arm.domain.Secrets.SourceVault; import org.jclouds.azurecompute.arm.domain.Plan; import org.jclouds.azurecompute.arm.domain.Secrets; +import org.jclouds.azurecompute.arm.domain.Secrets.SourceVault; import org.jclouds.azurecompute.arm.domain.Status; import org.jclouds.azurecompute.arm.domain.StorageProfile; import org.jclouds.azurecompute.arm.domain.VHD; @@ -123,7 +123,7 @@ public class VirtualMachineApiMockTest extends BaseAzureComputeApiMockTest { Plan plan = Plan.create("thinkboxsoftware", "deadline-slave-7-2", "deadline7-2"); final VirtualMachineApi vmAPI = api.getVirtualMachineApi("groupname"); VirtualMachine vm = vmAPI - .createOrUpdate("windowsmachine", "westus", getProperties(), ImmutableMap.of("foo", "bar"), plan); + .createOrUpdate("windowsmachine", "westus", getVMWithManagedDisksProperties(), ImmutableMap.of("foo", "bar"), plan); assertEquals(vm, getVM(plan)); assertSent( server, @@ -137,9 +137,9 @@ public class VirtualMachineApiMockTest extends BaseAzureComputeApiMockTest { + "\"storageProfile\":{\"imageReference\":{\"id\":\"/subscriptions/SUBSCRIPTIONID/providers/Microsoft.Compute/locations/westus/publishers/MicrosoftWindowsServerEssentials/artifactype/vmimage/offers/OFFER/skus/OFFER/versions/latest\"," + "\"publisher\":\"publisher\",\"offer\":\"OFFER\",\"sku\":\"sku\",\"version\":\"ver\"}," + "\"osDisk\":{\"osType\":\"Windows\",\"name\":\"windowsmachine\"," - + "\"vhd\":{\"uri\":\"https://groupname2760.blob.core.windows.net/vhds/windowsmachine201624102936.vhd\"},\"caching\":\"ReadWrite\",\"createOption\":\"FromImage\"," + + "\"caching\":\"ReadWrite\",\"createOption\":\"FromImage\"," + "\"managedDisk\":{\"id\":\"/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk\",\"storageAccountType\":\"Standard_LRS\"}}," - + "\"dataDisks\":[{\"name\":\"mydatadisk1\",\"diskSizeGB\":\"1\",\"lun\":0,\"vhd\":{\"uri\":\"http://mystorage1.blob.core.windows.net/vhds/mydatadisk1.vhd\"},\"createOption\":\"Empty\",\"caching\":\"Unrecognized\"}]}," + + "\"dataDisks\":[{\"name\":\"mydatadisk1\",\"diskSizeGB\":\"1\",\"lun\":0,\"createOption\":\"Empty\",\"caching\":\"ReadWrite\",\"managedDisk\":{\"id\":\"/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk\",\"storageAccountType\":\"Standard_LRS\"}}]}," + "\"osProfile\":{\"computerName\":\"windowsmachine\",\"adminUsername\":\"azureuser\",\"adminPassword\":\"password\",\"customData\":\"\",\"windowsConfiguration\":{\"provisionVMAgent\":false," + "\"winRM\":{\"listeners\":[{\"protocol\":\"https\",\"certificateUrl\":\"url-to-certificate\"}]},\"additionalUnattendContent\":[{\"pass\":\"oobesystem\",\"component\":\"Microsoft-Windows-Shell-Setup\",\"settingName\":\"FirstLogonCommands\",\"content\":\"<XML unattend content>\"}]," + "\"enableAutomaticUpdates\":true}," @@ -158,7 +158,7 @@ public class VirtualMachineApiMockTest extends BaseAzureComputeApiMockTest { server.enqueue(jsonResponse("/createvirtualmachineresponse.json")); final VirtualMachineApi vmAPI = api.getVirtualMachineApi("groupname"); - VirtualMachine vm = vmAPI.createOrUpdate("windowsmachine", "westus", getProperties(), ImmutableMap.of("foo", "bar"), null); + VirtualMachine vm = vmAPI.createOrUpdate("windowsmachine", "westus", getVMWithManagedDisksProperties(), ImmutableMap.of("foo", "bar"), null); assertEquals(vm, getVM()); assertSent( server, @@ -172,9 +172,9 @@ public class VirtualMachineApiMockTest extends BaseAzureComputeApiMockTest { + "\"storageProfile\":{\"imageReference\":{\"id\":\"/subscriptions/SUBSCRIPTIONID/providers/Microsoft.Compute/locations/westus/publishers/MicrosoftWindowsServerEssentials/artifactype/vmimage/offers/OFFER/skus/OFFER/versions/latest\"," + "\"publisher\":\"publisher\",\"offer\":\"OFFER\",\"sku\":\"sku\",\"version\":\"ver\"}," + "\"osDisk\":{\"osType\":\"Windows\",\"name\":\"windowsmachine\"," - + "\"vhd\":{\"uri\":\"https://groupname2760.blob.core.windows.net/vhds/windowsmachine201624102936.vhd\"},\"caching\":\"ReadWrite\",\"createOption\":\"FromImage\"," + + "\"caching\":\"ReadWrite\",\"createOption\":\"FromImage\"," + "\"managedDisk\":{\"id\":\"/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk\",\"storageAccountType\":\"Standard_LRS\"}}," - + "\"dataDisks\":[{\"name\":\"mydatadisk1\",\"diskSizeGB\":\"1\",\"lun\":0,\"vhd\":{\"uri\":\"http://mystorage1.blob.core.windows.net/vhds/mydatadisk1.vhd\"},\"createOption\":\"Empty\",\"caching\":\"Unrecognized\"}]}," + + "\"dataDisks\":[{\"name\":\"mydatadisk1\",\"diskSizeGB\":\"1\",\"lun\":0,\"createOption\":\"Empty\",\"caching\":\"ReadWrite\",\"managedDisk\":{\"id\":\"/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk\",\"storageAccountType\":\"Standard_LRS\"}}]}," + "\"osProfile\":{\"computerName\":\"windowsmachine\",\"adminUsername\":\"azureuser\",\"adminPassword\":\"password\",\"customData\":\"\",\"windowsConfiguration\":{\"provisionVMAgent\":false," + "\"winRM\":{\"listeners\":[{\"protocol\":\"https\",\"certificateUrl\":\"url-to-certificate\"}]},\"additionalUnattendContent\":[{\"pass\":\"oobesystem\",\"component\":\"Microsoft-Windows-Shell-Setup\",\"settingName\":\"FirstLogonCommands\",\"content\":\"<XML unattend content>\"}]," + "\"enableAutomaticUpdates\":true}," @@ -275,7 +275,7 @@ public class VirtualMachineApiMockTest extends BaseAzureComputeApiMockTest { "{\"vhdPrefix\":\"prefix\",\"destinationContainerName\":\"container\",\"overwriteVhds\":\"true\"}"); } - private VirtualMachineProperties getProperties() { + private VirtualMachineProperties getVMWithBlobDisksProperties() { String licenseType = "Windows_Server"; IdReference availabilitySet = IdReference.create("/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAVSet"); HardwareProfile hwProf = HardwareProfile.create("Standard_D1"); @@ -284,7 +284,7 @@ public class VirtualMachineApiMockTest extends BaseAzureComputeApiMockTest { .build(); VHD vhd = VHD.create("https://groupname2760.blob.core.windows.net/vhds/windowsmachine201624102936.vhd"); List<DataDisk> dataDisks = ImmutableList.of( - DataDisk.create("mydatadisk1", "1", 0, VHD.create("http://mystorage1.blob.core.windows.net/vhds/mydatadisk1.vhd"), + DataDisk.create("mydatadisk1", "1", 0, VHD.create("http://mystorage1.blob.core.windows.net/vhds/mydatadisk1.vhd"), null, "Empty", null, null, null)); ManagedDiskParameters managedDiskParameters = ManagedDiskParameters.create("/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk", "Standard_LRS"); @@ -298,6 +298,44 @@ public class VirtualMachineApiMockTest extends BaseAzureComputeApiMockTest { AdditionalUnattendContent.create("oobesystem", "Microsoft-Windows-Shell-Setup", "FirstLogonCommands", "<XML unattend content>")); OSProfile.WindowsConfiguration windowsConfig = OSProfile.WindowsConfiguration.create(false, winrm, additionalUnattendContent, true); List<Secrets> secrets = ImmutableList.of( + Secrets.create(SourceVault.create("/subscriptions/SUBSCRIPTIONID/resourceGroups/myresourcegroup1/providers/Microsoft.KeyVault/vaults/myvault1"), + ImmutableList.of(VaultCertificate.create("https://myvault1.vault.azure.net/secrets/SECRETNAME/SECRETVERSION", "CERTIFICATESTORENAME")))); + OSProfile osProfile = OSProfile.create("windowsmachine", "azureuser", "password", "", linuxConfig, windowsConfig, secrets); + NetworkInterface networkInterface = NetworkInterface.create("/subscriptions/SUBSCRIPTIONID" + + "/resourceGroups/groupname/providers/Microsoft.Network/networkInterfaces/" + "windowsmachine167", null); + List<NetworkInterface> networkInterfaces = new ArrayList<NetworkInterface>(); + networkInterfaces.add(networkInterface); + NetworkProfile networkProfile = NetworkProfile.create(networkInterfaces); + DiagnosticsProfile.BootDiagnostics bootDiagnostics = DiagnosticsProfile.BootDiagnostics.create(true, + "https://groupname2760.blob.core.windows.net/"); + DiagnosticsProfile diagnosticsProfile = DiagnosticsProfile.create(bootDiagnostics); + VirtualMachineProperties properties = VirtualMachineProperties.create("27ee085b-d707-xxxx-yyyy-2370e2eb1cc1", + licenseType, availabilitySet, hwProf, storageProfile, osProfile, networkProfile, diagnosticsProfile, + VirtualMachineProperties.ProvisioningState.CREATING); + return properties; + } + + private VirtualMachineProperties getVMWithManagedDisksProperties() { + String licenseType = "Windows_Server"; + IdReference availabilitySet = IdReference.create("/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAVSet"); + HardwareProfile hwProf = HardwareProfile.create("Standard_D1"); + ImageReference imgRef = ImageReference.builder().publisher("publisher").offer("OFFER").sku("sku").version("ver") + .customImageId("/subscriptions/SUBSCRIPTIONID/providers/Microsoft.Compute/locations/westus/publishers/MicrosoftWindowsServerEssentials/artifactype/vmimage/offers/OFFER/skus/OFFER/versions/latest") + .build(); + ManagedDiskParameters managedDiskParameters = ManagedDiskParameters.create("/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk", + "Standard_LRS"); + List<DataDisk> dataDisks = ImmutableList.of( + DataDisk.builder().name("mydatadisk1").diskSizeGB("1").lun(0).managedDiskParameters(managedDiskParameters).createOption(DataDisk.DiskCreateOptionTypes.EMPTY).caching(DataDisk.CachingTypes.READ_WRITE).build()); + OSDisk osDisk = OSDisk.builder().osType("Windows").name("windowsmachine").caching("ReadWrite").createOption("FromImage").managedDiskParameters(managedDiskParameters).build(); + StorageProfile storageProfile = StorageProfile.create(imgRef, osDisk, dataDisks); + LinuxConfiguration linuxConfig = null; + OSProfile.WindowsConfiguration.WinRM winrm = OSProfile.WindowsConfiguration.WinRM.create( + ImmutableList.of( + OSProfile.WindowsConfiguration.WinRM.ProtocolListener.create(Protocol.HTTPS, "url-to-certificate"))); + List<AdditionalUnattendContent> additionalUnattendContent = ImmutableList.of( + AdditionalUnattendContent.create("oobesystem", "Microsoft-Windows-Shell-Setup", "FirstLogonCommands", "<XML unattend content>")); + OSProfile.WindowsConfiguration windowsConfig = OSProfile.WindowsConfiguration.create(false, winrm, additionalUnattendContent, true); + List<Secrets> secrets = ImmutableList.of( Secrets.create(SourceVault.create("/subscriptions/SUBSCRIPTIONID/resourceGroups/myresourcegroup1/providers/Microsoft.KeyVault/vaults/myvault1"), ImmutableList.of(VaultCertificate.create("https://myvault1.vault.azure.net/secrets/SECRETNAME/SECRETVERSION", "CERTIFICATESTORENAME")))); OSProfile osProfile = OSProfile.create("windowsmachine", "azureuser", "password", "", linuxConfig, windowsConfig, secrets); @@ -316,7 +354,7 @@ public class VirtualMachineApiMockTest extends BaseAzureComputeApiMockTest { } private VirtualMachine getVM() { - VirtualMachineProperties properties = getProperties(); + VirtualMachineProperties properties = getVMWithManagedDisksProperties(); VirtualMachine machine = VirtualMachine.create("/subscriptions/SUBSCRIPTIONID/" + "" + "resourceGroups/groupname/providers/Microsoft.Compute/virtualMachines/windowsmachine", "windowsmachine", "Microsoft.Compute/virtualMachines", "westus", ImmutableMap.of("foo", "bar"), properties, @@ -325,7 +363,7 @@ public class VirtualMachineApiMockTest extends BaseAzureComputeApiMockTest { } private VirtualMachine getVM(Plan plan) { - VirtualMachineProperties properties = getProperties(); + VirtualMachineProperties properties = getVMWithManagedDisksProperties(); VirtualMachine machine = VirtualMachine.create("/subscriptions/SUBSCRIPTIONID/" + "" + "resourceGroups/groupname/providers/Microsoft.Compute/virtualMachines/windowsmachine", "windowsmachine", "Microsoft.Compute/virtualMachines", "westus", ImmutableMap.of("foo", "bar"), properties, plan); @@ -355,12 +393,17 @@ public class VirtualMachineApiMockTest extends BaseAzureComputeApiMockTest { } private List<VirtualMachine> getVMList() { - VirtualMachineProperties properties = getProperties(); - VirtualMachine machine = VirtualMachine.create("/subscriptions/SUBSCRIPTIONID/" + "" - + "resourceGroups/groupname/providers/Microsoft.Compute/virtualMachines/windowsmachine", "windowsmachine", - "Microsoft.Compute/virtualMachines", "westus", null, properties, null); List<VirtualMachine> list = new ArrayList<VirtualMachine>(); - list.add(machine); + VirtualMachineProperties propertiesWithManagedDisks = getVMWithManagedDisksProperties(); + VirtualMachine machineWithManagedDisks = VirtualMachine.create("/subscriptions/SUBSCRIPTIONID/" + "" + + "resourceGroups/groupname/providers/Microsoft.Compute/virtualMachines/windowsmachine", "windowsmachine", + "Microsoft.Compute/virtualMachines", "westus", null, propertiesWithManagedDisks, null); + list.add(machineWithManagedDisks); + VirtualMachineProperties propertiesWithBlobDisks = getVMWithBlobDisksProperties(); + VirtualMachine machineWithBlobDisks = VirtualMachine.create("/subscriptions/SUBSCRIPTIONID/" + "" + + "resourceGroups/groupname/providers/Microsoft.Compute/virtualMachines/windowsmachine", "windowsmachine", + "Microsoft.Compute/virtualMachines", "westus", null, propertiesWithBlobDisks, null); + list.add(machineWithBlobDisks); return list; } } http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/2e41dc90/azurecompute-arm/src/test/resources/createvirtualmachineresponse.json ---------------------------------------------------------------------- diff --git a/azurecompute-arm/src/test/resources/createvirtualmachineresponse.json b/azurecompute-arm/src/test/resources/createvirtualmachineresponse.json index bc8ca2d..4279f83 100644 --- a/azurecompute-arm/src/test/resources/createvirtualmachineresponse.json +++ b/azurecompute-arm/src/test/resources/createvirtualmachineresponse.json @@ -24,9 +24,6 @@ "id": "/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk", "storageAccountType": "Standard_LRS" }, - "vhd": { - "uri": "https://groupname2760.blob.core.windows.net/vhds/windowsmachine201624102936.vhd" - }, "caching": "ReadWrite" }, "dataDisks":[ @@ -34,9 +31,11 @@ "name":"mydatadisk1", "diskSizeGB":"1", "lun": 0, - "vhd": { - "uri" : "http://mystorage1.blob.core.windows.net/vhds/mydatadisk1.vhd" + "managedDisk": { + "id": "/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk", + "storageAccountType": "Standard_LRS" }, + "caching": "ReadWrite", "createOption":"Empty" } ] http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/2e41dc90/azurecompute-arm/src/test/resources/image.json ---------------------------------------------------------------------- diff --git a/azurecompute-arm/src/test/resources/image.json b/azurecompute-arm/src/test/resources/image.json index 3dbdf11..0c7b54c 100644 --- a/azurecompute-arm/src/test/resources/image.json +++ b/azurecompute-arm/src/test/resources/image.json @@ -18,7 +18,7 @@ "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" }, "osState": "generalized", - "hostCaching": "readwrite", + "hostCaching": "ReadWrite", "storageAccountType": "Standard_LRS", "diskSizeGB": 20 }, @@ -32,7 +32,7 @@ "managedDisk": { "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" }, - "hostCaching": "readwrite", + "hostCaching": "ReadWrite", "storageAccountType": "Standard_LRS", "diskSizeInGB": 20 } http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/2e41dc90/azurecompute-arm/src/test/resources/virtualmachine.json ---------------------------------------------------------------------- diff --git a/azurecompute-arm/src/test/resources/virtualmachine.json b/azurecompute-arm/src/test/resources/virtualmachine.json index 70e7f4a..51ad1fb 100644 --- a/azurecompute-arm/src/test/resources/virtualmachine.json +++ b/azurecompute-arm/src/test/resources/virtualmachine.json @@ -24,9 +24,6 @@ "id": "/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk", "storageAccountType": "Standard_LRS" }, - "vhd": { - "uri": "https://groupname2760.blob.core.windows.net/vhds/windowsmachine201624102936.vhd" - }, "caching": "ReadWrite" }, "dataDisks":[ @@ -34,10 +31,13 @@ "name":"mydatadisk1", "diskSizeGB":"1", "lun": 0, - "vhd": { - "uri" : "http://mystorage1.blob.core.windows.net/vhds/mydatadisk1.vhd" + "createOption":"Empty", + "managedDisk": { + "id": "/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk", + "storageAccountType": "Standard_LRS" }, - "createOption":"Empty" + "createOption":"Empty", + "caching": "ReadWrite" } ] }, http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/2e41dc90/azurecompute-arm/src/test/resources/virtualmachines.json ---------------------------------------------------------------------- diff --git a/azurecompute-arm/src/test/resources/virtualmachines.json b/azurecompute-arm/src/test/resources/virtualmachines.json index 758a109..27ee602 100644 --- a/azurecompute-arm/src/test/resources/virtualmachines.json +++ b/azurecompute-arm/src/test/resources/virtualmachines.json @@ -26,9 +26,6 @@ "id": "/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk", "storageAccountType": "Standard_LRS" }, - "vhd": { - "uri": "https://groupname2760.blob.core.windows.net/vhds/windowsmachine201624102936.vhd" - }, "caching": "ReadWrite" }, "dataDisks":[ @@ -36,10 +33,12 @@ "name":"mydatadisk1", "diskSizeGB":"1", "lun": 0, - "vhd": { - "uri" : "http://mystorage1.blob.core.windows.net/vhds/mydatadisk1.vhd" - }, - "createOption":"Empty" + "createOption":"Empty", + "caching":"ReadWrite", + "managedDisk": { + "id": "/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk", + "storageAccountType": "Standard_LRS" + } } ] }, @@ -99,6 +98,106 @@ "name": "windowsmachine", "type": "Microsoft.Compute/virtualMachines", "location": "westus" + }, + { + "properties": { + "vmId": "27ee085b-d707-xxxx-yyyy-2370e2eb1cc1", + "licenseType": "Windows_Server", + "availabilitySet":{ + "id":"/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAVSet" + }, + "hardwareProfile": { + "vmSize": "Standard_D1" + }, + "storageProfile": { + "imageReference": { + "publisher": "publisher", + "offer": "OFFER", + "sku": "sku", + "version": "ver", + "id": "/subscriptions/SUBSCRIPTIONID/providers/Microsoft.Compute/locations/westus/publishers/MicrosoftWindowsServerEssentials/artifactype/vmimage/offers/OFFER/skus/OFFER/versions/latest" + }, + "osDisk": { + "osType": "Windows", + "name": "windowsmachine", + "createOption": "FromImage", + "managedDisk": { + "id": "/subscriptions/SUBSCRIPTIONID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/osDisk", + "storageAccountType": "Standard_LRS" + }, + "vhd": { + "uri": "https://groupname2760.blob.core.windows.net/vhds/windowsmachine201624102936.vhd" + }, + "caching": "ReadWrite" + }, + "dataDisks":[ + { + "name":"mydatadisk1", + "diskSizeGB":"1", + "lun": 0, + "vhd": { + "uri" : "http://mystorage1.blob.core.windows.net/vhds/mydatadisk1.vhd" + }, + "createOption":"Empty" + } + ] + }, + "osProfile": { + "computerName": "windowsmachine", + "adminUsername": "azureuser", + "adminPassword":"password", + "customData":"", + "windowsConfiguration": { + "provisionVMAgent": false, + "enableAutomaticUpdates": true, + "winRM": { + "listeners":[{ + "protocol": "https", + "certificateUrl": "url-to-certificate" + }] + }, + "additionalUnattendContent":[ + { + "pass":"oobesystem", + "component":"Microsoft-Windows-Shell-Setup", + "settingName":"FirstLogonCommands", + "content":"<XML unattend content>" + } + ] + }, + "secrets":[ + { + "sourceVault": { + "id": "/subscriptions/SUBSCRIPTIONID/resourceGroups/myresourcegroup1/providers/Microsoft.KeyVault/vaults/myvault1" + }, + "vaultCertificates": [ + { + "certificateUrl": "https://myvault1.vault.azure.net/secrets/SECRETNAME/SECRETVERSION", + "certificateStore": "CERTIFICATESTORENAME" + } + ] + } + ] + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/SUBSCRIPTIONID/resourceGroups/groupname/providers/Microsoft.Network/networkInterfaces/windowsmachine167" + } + ] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true, + "storageUri": "https://groupname2760.blob.core.windows.net/" + } + }, + "provisioningState": "Creating" + }, + "id": "/subscriptions/SUBSCRIPTIONID/resourceGroups/groupname/providers/Microsoft.Compute/virtualMachines/windowsmachine", + "name": "windowsmachine", + "type": "Microsoft.Compute/virtualMachines", + "location": "westus" } ] }
