Merge pull request #1401 from jclouds/unhook-labs

Unhook labs from the default build
This commit is contained in:
Adrian Cole 2013-03-08 20:06:06 -08:00
commit d4a3c66e3c
3 changed files with 0 additions and 45 deletions

View File

@ -40,7 +40,6 @@
<module>compute</module>
<module>loadbalancer</module>
<module>apis</module>
<module>labs</module>
<module>providers</module>
<module>blobstore</module>
<module>skeletons</module>

View File

@ -68,12 +68,6 @@
<type>test-jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jclouds.labs</groupId>
<artifactId>aws-iam</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jclouds.provider</groupId>
<artifactId>aws-cloudwatch</artifactId>

View File

@ -20,7 +20,6 @@ package org.jclouds.aws.ec2.compute;
import static com.google.common.collect.Iterables.getOnlyElement;
import static com.google.common.collect.Sets.newTreeSet;
import static java.util.logging.Logger.getAnonymousLogger;
import static org.jclouds.compute.domain.OsFamily.AMZN_LINUX;
import static org.jclouds.compute.options.RunScriptOptions.Builder.runAsRoot;
import static org.jclouds.ec2.util.IpPermissions.permit;
@ -37,7 +36,6 @@ import org.jclouds.aws.ec2.AWSEC2Client;
import org.jclouds.aws.ec2.domain.AWSRunningInstance;
import org.jclouds.aws.ec2.domain.MonitoringState;
import org.jclouds.aws.ec2.services.AWSSecurityGroupClient;
import org.jclouds.aws.iam.AWSIAMProviderMetadata;
import org.jclouds.cloudwatch.CloudWatchApi;
import org.jclouds.cloudwatch.CloudWatchAsyncApi;
import org.jclouds.cloudwatch.domain.Dimension;
@ -58,9 +56,6 @@ import org.jclouds.ec2.domain.KeyPair;
import org.jclouds.ec2.domain.SecurityGroup;
import org.jclouds.ec2.services.InstanceClient;
import org.jclouds.ec2.services.KeyPairClient;
import org.jclouds.iam.IAMApi;
import org.jclouds.iam.IAMAsyncApi;
import org.jclouds.iam.domain.InstanceProfile;
import org.jclouds.rest.RestContext;
import org.jclouds.scriptbuilder.domain.Statements;
import org.testng.annotations.Test;
@ -87,13 +82,6 @@ public class AWSEC2ComputeServiceLiveTest extends EC2ComputeServiceLiveTest {
public void testExtendedOptionsAndLogin() throws Exception {
String region = "us-west-2";
RestContext<IAMApi, IAMAsyncApi> iamContext = ContextBuilder.newBuilder(new AWSIAMProviderMetadata())
.credentials(identity, credential)
.modules(setupModules()).build();
String profileName = "ec2Test";
// Note this needs to wait an undefined amount of time before it is visible to ec2, seems to be about 15seconds
InstanceProfile profile = createIAMInstanceProfile(iamContext.getApi(), profileName);
AWSSecurityGroupClient securityGroupClient = AWSEC2Client.class.cast(
view.unwrap(AWSEC2ApiMetadata.CONTEXT_TOKEN).getApi()).getSecurityGroupServices();
@ -118,7 +106,6 @@ public class AWSEC2ComputeServiceLiveTest extends EC2ComputeServiceLiveTest {
template.getOptions().tags(tags);
template.getOptions().as(AWSEC2TemplateOptions.class).enableMonitoring();
template.getOptions().as(AWSEC2TemplateOptions.class).spotPrice(0.3f);
template.getOptions().as(AWSEC2TemplateOptions.class).iamInstanceProfileName(profileName);
String startedId = null;
try {
@ -159,7 +146,6 @@ public class AWSEC2ComputeServiceLiveTest extends EC2ComputeServiceLiveTest {
assertEquals(instance.getKeyName(), group);
assert instance.getSpotInstanceRequestId() != null;
assertEquals(instance.getMonitoringState(), MonitoringState.ENABLED);
assertEquals(instance.getIAMInstanceProfile().get().getArn(), profile.getArn());
// generate some load
ListenableFuture<ExecResponse> future = client.submitScriptOnNode(first.getId(), Statements
@ -213,31 +199,7 @@ public class AWSEC2ComputeServiceLiveTest extends EC2ComputeServiceLiveTest {
assertEquals(keyPairClient.describeKeyPairsInRegion(region, group).size(), 1);
assertEquals(securityGroupClient.describeSecurityGroupsInRegion(region, group).size(), 1);
}
deleteIAMInstanceProfile(iamContext.getApi(), profileName);
iamContext.close();
cleanupExtendedStuffInRegion(region, securityGroupClient, keyPairClient, group);
}
}
static String assumeRolePolicy = "{\"Version\":\"2008-10-17\",\"Statement\":[{\"Sid\":\"\",\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"ec2.amazonaws.com\"},\"Action\":\"sts:AssumeRole\"}]}";
static String route53Policy = "{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":\"route53:*\",\"Resource\":\"*\"}]}";
static InstanceProfile createIAMInstanceProfile(IAMApi api, String name) {
String roleName = name + "route53";
api.getRoleApi().createWithPolicy(roleName, assumeRolePolicy);
api.getPolicyApiForRole(roleName).create("route53-readonly", route53Policy);
api.getInstanceProfileApi().create(name);
api.getInstanceProfileApi().addRole(name, roleName);
InstanceProfile updated = api.getInstanceProfileApi().get(name);
getAnonymousLogger().info("created instanceProfile: " + updated);
return updated;
}
static void deleteIAMInstanceProfile(IAMApi api, String name) {
String roleName = name + "route53";
api.getInstanceProfileApi().removeRole(name, roleName);
api.getPolicyApiForRole(roleName).delete("route53-readonly");
api.getRoleApi().delete(roleName);
api.getInstanceProfileApi().delete(name);
}
}