@Test public void createAvailabilitySet() { AvailabilitySetProperties props = AvailabilitySetProperties.builder().platformUpdateDomainCount(2) .platformFaultDomainCount(3).build(); AvailabilitySet as = api().createOrUpdate(asName, SKU.create(MANAGED), LOCATION, null, props); assertNotNull(as); assertEquals(as.name(), asName); assertNotNull(as.sku()); assertEquals(as.sku().type(), MANAGED); }
private static boolean isOrphanedJcloudsAvailabilitySet(AvailabilitySet availabilitySet) { // We check for the presence of the 'jclouds' tag to make sure we only // delete availability sets that were automatically created by jclouds return availabilitySet != null && availabilitySet.tags() != null && availabilitySet.tags().containsKey("jclouds") && (availabilitySet.properties().virtualMachines() == null || availabilitySet.properties() .virtualMachines().isEmpty()); }
private List<String> createVirtualMachinesInGroupAndGetNicRefs(final String group, final int count) throws RunNodesException { // To add multiple nodes in a LB they must belong to the same availability // set AvailabilitySetProperties props = AvailabilitySetProperties.builder().platformUpdateDomainCount(count) .platformFaultDomainCount(count).build(); AvailabilitySet as = AvailabilitySet.managed().name(group).properties(props).build(); Set<? extends NodeMetadata> nodes = view.getComputeService().createNodesInGroup(group, count, availabilitySet(as).resourceGroup(this.group)); List<String> nicNames = new ArrayList<String>(); for (NodeMetadata node : nodes) { ResourceGroupAndName resourceGroupAndName = ResourceGroupAndName.fromSlashEncoded(node.getId()); VirtualMachine vm = api.getVirtualMachineApi(resourceGroupAndName.resourceGroup()).get( resourceGroupAndName.name()); String nicName = extractName(vm.properties().networkProfile().networkInterfaces().get(0).id()); nicNames.add(nicName); } return nicNames; }
public void createAvailabilitySet() throws InterruptedException { server.enqueue(jsonResponse("/availabilitysetcreate.json").setResponseCode(200)); AvailabilitySetApi asApi = api.getAvailabilitySetApi(resourcegroup); AvailabilitySetProperties props = AvailabilitySetProperties.builder().platformUpdateDomainCount(2) .platformFaultDomainCount(3).build(); AvailabilitySet as = asApi.createOrUpdate(asName, SKU.create(MANAGED), "westeurope", null, props); String path = String.format( "/subscriptions/%s/resourcegroups/%s/providers/Microsoft.Compute/availabilitySets/%s?%s", subscriptionid, resourcegroup, asName, apiVersion); String json = "{\"location\":\"westeurope\",\"properties\":{\"platformUpdateDomainCount\":2,\"platformFaultDomainCount\":3},\"sku\":{\"name\":\"Aligned\"}}"; assertSent(server, "PUT", path, json); assertEquals(as.name(), asName); assertEquals(as.properties().platformUpdateDomainCount(), 2); assertEquals(as.properties().platformFaultDomainCount(), 3); }
@SerializedNames({ "platformUpdateDomainCount", "platformFaultDomainCount", "virtualMachines", "statuses" }) public static AvailabilitySetProperties create(final int platformUpdateDomainCount, final int platformFaultDomainCount, List<IdReference> virtualMachines, List<Status> statuses) { return builder().platformUpdateDomainCount(platformUpdateDomainCount) .platformFaultDomainCount(platformFaultDomainCount).virtualMachines(virtualMachines).statuses(statuses) .build(); }
private static boolean isOrphanedJcloudsAvailabilitySet(AvailabilitySet availabilitySet) { // We check for the presence of the 'jclouds' tag to make sure we only // delete availability sets that were automatically created by jclouds return availabilitySet != null && availabilitySet.tags() != null && availabilitySet.tags().containsKey("jclouds") && (availabilitySet.properties().virtualMachines() == null || availabilitySet.properties() .virtualMachines().isEmpty()); }
@SerializedNames({ "platformUpdateDomainCount", "platformFaultDomainCount", "virtualMachines", "statuses" }) public static AvailabilitySetProperties create(final int platformUpdateDomainCount, final int platformFaultDomainCount, List<IdReference> virtualMachines, List<Status> statuses) { return builder().platformUpdateDomainCount(platformUpdateDomainCount) .platformFaultDomainCount(platformFaultDomainCount).virtualMachines(virtualMachines).statuses(statuses) .build(); }