public static SecurityGroup createSecurityGroup(CloudStackClient cloudStackClient, String securityGroupName) { SecurityGroupClient securityGroupClient = cloudStackClient.getSecurityGroupClient(); return securityGroupClient.createSecurityGroup(securityGroupName); }
public static void deleteByName(CloudStackClient cloudStackClient, String securityGroupName) { try { SecurityGroup securityGroup = getByName(cloudStackClient, securityGroupName); LOG.info("Deleting SecurityGroup {}", securityGroup.getName()); cloudStackClient.getSecurityGroupClient().deleteSecurityGroup(securityGroup.getId()); } catch (NoSuchElementException e) { LOG.warn("Exception retrieving SecurityGroup (most likely it does not yet exist){}: {}", securityGroupName, e); } }
public static Set<SecurityGroup> getAll(CloudStackClient cloudStackClient) { return cloudStackClient.getSecurityGroupClient().listSecurityGroups(); }
@Test public void testCreateDestroySecurityGroup() { try { zone = Iterables.find(client.getZoneClient().listZones(), new Predicate<Zone>() { @Override public boolean apply(Zone arg0) { return arg0.isSecurityGroupsEnabled(); } }); securityGroupsSupported = true; for (SecurityGroup securityGroup : client.getSecurityGroupClient().listSecurityGroups( ListSecurityGroupsOptions.Builder.named(prefix))) { for (IngressRule rule : securityGroup.getIngressRules()) assertTrue(jobComplete.apply(client.getSecurityGroupClient().revokeIngressRule(rule.getId())), rule.toString()); client.getSecurityGroupClient().deleteSecurityGroup(securityGroup.getId()); } group = client.getSecurityGroupClient().createSecurityGroup(prefix); assertEquals(group.getName(), prefix); checkGroup(group); try { client.getSecurityGroupClient().createSecurityGroup(prefix); fail("Expected IllegalStateException"); } catch (IllegalStateException e) { } } catch (NoSuchElementException e) { e.printStackTrace(); } }
String cidr = getCurrentCIDR(); ImmutableSet<String> cidrs = ImmutableSet.of(cidr); assertTrue(jobComplete.apply(client.getSecurityGroupClient().authorizeIngressICMPToCIDRs(group.getId(), 0, 8, cidrs)), group.toString()); assertTrue(jobComplete.apply(client.getSecurityGroupClient().authorizeIngressPortsToCIDRs(group.getId(), "TCP", 22, 22, cidrs)), group.toString()); group = Iterables.find(client.getSecurityGroupClient().listSecurityGroups(), new Predicate<SecurityGroup>() {
@AfterGroups(groups = "live") @Override protected void tearDownContext() { if (vm != null) { assertTrue(jobComplete.apply(client.getVirtualMachineClient().destroyVirtualMachine(vm.getId()))); } if (group != null) { for (IngressRule rule : group.getIngressRules()) assertTrue(jobComplete.apply(client.getSecurityGroupClient().revokeIngressRule(rule.getId())), rule.toString()); client.getSecurityGroupClient().deleteSecurityGroup(group.getId()); assertEquals(client.getSecurityGroupClient().getSecurityGroup(group.getId()), null); } super.tearDownContext(); }
public static void applyNetworkRules(CloudStackClient cloudStackClient, SecurityGroup securityGroup, Network network) { SecurityGroupClient securityGroupClient = cloudStackClient.getSecurityGroupClient(); for (Rule rule : network.getIngress()) { if (rule.getProtocol() == Protocol.ICMP) { securityGroupClient.authorizeIngressICMPToCIDRs(securityGroup.getId(), DEFAULT_ICMP_CODE, DEFAULT_ICMP_TYPE, ImmutableList.of(rule.getCidr())); } else { securityGroupClient.authorizeIngressPortsToCIDRs(securityGroup.getId(), rule.getProtocol().name(), rule.getPorts().lowerEndpoint(), rule.getPorts().upperEndpoint(), Lists.newArrayList(rule.getCidr())); } } } }
public static void deleteNetworkRules(CloudStackClient cloudStackClient, SecurityGroup securityGroup) { for (IngressRule rule : securityGroup.getIngressRules()) { cloudStackClient.getSecurityGroupClient().revokeIngressRule(rule.getId()); } }
protected void checkGroup(SecurityGroup group) { // http://bugs.cloud.com/show_bug.cgi?id=8968 if (group.getIngressRules().size() <= 1) assertEquals(group, client.getSecurityGroupClient().getSecurityGroup(group.getId())); assert group.getId() != null : group; assert group.getName() != null : group; assert group.getAccount() != null : group; assert group.getDomain() != null : group; assert group.getDomainId() != null : group; assert group.getIngressRules() != null : group; }
/** * Get a SecurityGroup by name. * * @throws NoSuchElementException if securityGroup does not exist. */ public static SecurityGroup getByName(CloudStackClient cloudStackClient, String securityGroup) { return Iterables.getOnlyElement(cloudStackClient .getSecurityGroupClient() .listSecurityGroups(named(securityGroup))); }
public void testListSecurityGroup() throws Exception { skipIfSecurityGroupsNotSupported(); for (SecurityGroup securityGroup : client.getSecurityGroupClient().listSecurityGroups()) checkGroup(securityGroup); }
public static VirtualMachine createVirtualMachine(CloudStackClient client, String defaultTemplate, Predicate<String> jobComplete, Predicate<VirtualMachine> virtualMachineRunning) { Set<Network> networks = client.getNetworkClient().listNetworks(isDefault(true)); if (networks.size() > 0) { Network network = get(filter(networks, new Predicate<Network>() { @Override public boolean apply(Network network) { return network != null && network.getState().equals("Implemented"); } }), 0); return createVirtualMachineInNetwork(network, defaultTemplateOrPreferredInZone(defaultTemplate, client, network.getZoneId()), client, jobComplete, virtualMachineRunning); } else { String zoneId = find(client.getZoneClient().listZones(), new Predicate<Zone>() { @Override public boolean apply(Zone arg0) { return arg0.isSecurityGroupsEnabled(); } }).getId(); return createVirtualMachineWithSecurityGroupInZone(zoneId, defaultTemplateOrPreferredInZone(defaultTemplate, client, zoneId), get(client.getSecurityGroupClient().listSecurityGroups(), 0).getId(), client, jobComplete, virtualMachineRunning); } }