Updated Branches: refs/heads/master 97c3a203f -> f7dd08a2a
JCLOUDS-242. Fix security group creation on aws-ec2 Contributed by Richard Downer. Project: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/commit/f7dd08a2 Tree: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/tree/f7dd08a2 Diff: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/diff/f7dd08a2 Branch: refs/heads/master Commit: f7dd08a2a5b78b0ed9cb2f46efd5b0939b254847 Parents: 97c3a20 Author: Andrew Bayer <[email protected]> Authored: Wed Aug 14 11:01:23 2013 -0700 Committer: Andrew Bayer <[email protected]> Committed: Wed Aug 14 11:07:59 2013 -0700 ---------------------------------------------------------------------- .../ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeeded.java | 3 ++- .../compute/internal/BaseAWSEC2ComputeServiceExpectTest.java | 2 +- .../compute/loaders/AWSEC2CreateSecurityGroupIfNeededTest.java | 5 +++-- 3 files changed, 6 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f7dd08a2/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeeded.java ---------------------------------------------------------------------- diff --git a/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeeded.java b/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeeded.java index c794fdb..160853d 100644 --- a/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeeded.java +++ b/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeeded.java @@ -117,8 +117,9 @@ public class AWSEC2CreateSecurityGroupIfNeeded extends CacheLoader<RegionAndName Set<IpPermission> perms = permissions.build(); if (perms.size() > 0) { + String id = Iterables.get(securityApi.describeSecurityGroupsInRegion(region, name), 0).getId(); logger.debug(">> authorizing securityGroup region(%s) name(%s) IpPermissions(%s)", region, name, perms); - securityApi.authorizeSecurityGroupIngressInRegion(region, name, perms); + securityApi.authorizeSecurityGroupIngressInRegion(region, id, perms); logger.debug("<< authorized securityGroup(%s)", name); } http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f7dd08a2/providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/internal/BaseAWSEC2ComputeServiceExpectTest.java ---------------------------------------------------------------------- diff --git a/providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/internal/BaseAWSEC2ComputeServiceExpectTest.java b/providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/internal/BaseAWSEC2ComputeServiceExpectTest.java index e643f9e..5423a50 100644 --- a/providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/internal/BaseAWSEC2ComputeServiceExpectTest.java +++ b/providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/internal/BaseAWSEC2ComputeServiceExpectTest.java @@ -65,7 +65,7 @@ public abstract class BaseAWSEC2ComputeServiceExpectTest extends BaseEC2ComputeS .endpoint("https://ec2." + region + ".amazonaws.com/") .addHeader("Host", "ec2." + region + ".amazonaws.com") .addFormParam("Action", "AuthorizeSecurityGroupIngress") - .addFormParam("GroupId", "jclouds#test") + .addFormParam("GroupId", "sg-3c6ef654") .addFormParam("IpPermissions.0.FromPort", "22") .addFormParam("IpPermissions.0.ToPort", "22") .addFormParam("IpPermissions.0.IpRanges.0.CidrIp", "0.0.0.0/0") http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f7dd08a2/providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeededTest.java ---------------------------------------------------------------------- diff --git a/providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeededTest.java b/providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeededTest.java index f61bf2e..c625e4a 100644 --- a/providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeededTest.java +++ b/providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeededTest.java @@ -19,7 +19,6 @@ package org.jclouds.aws.ec2.compute.loaders; import static org.easymock.EasyMock.createMock; import static org.easymock.EasyMock.createNiceMock; import static org.easymock.EasyMock.expect; -import static org.easymock.EasyMock.expectLastCall; import static org.easymock.EasyMock.replay; import static org.easymock.EasyMock.verify; import static org.testng.Assert.assertEquals; @@ -81,7 +80,9 @@ public class AWSEC2CreateSecurityGroupIfNeededTest { client.createSecurityGroupInRegion("region", "group", "group"); expect(group.getOwnerId()).andReturn("ownerId"); - client.authorizeSecurityGroupIngressInRegion("region", "group", permissions.build()); + expect(group.getId()).andReturn("sg-123456"); + expect(client.describeSecurityGroupsInRegion("region", "group")).andReturn(Set.class.cast(groups)); + client.authorizeSecurityGroupIngressInRegion("region", "sg-123456", permissions.build()); expect(client.describeSecurityGroupsInRegion("region", "group")).andReturn(Set.class.cast(groups));
