lp://staging/~benoit-canet/goamz/add-CONTRIBUTING
- Get this branch:
- bzr branch lp://staging/~benoit-canet/goamz/add-CONTRIBUTING
Branch merges
- goamz maintainers: Pending requested
-
Diff: 119 lines (+59/-0)5 files modifiedaws/aws.go (+44/-0)
exp/sdb/sdb.go (+3/-0)
exp/sns/sns.go (+3/-0)
iam/iam.go (+3/-0)
s3/s3.go (+6/-0)
Branch information
Recent revisions
- 51. By Benoît Canet <email address hidden>
-
aws: Add regions for the Outscale EC2 compatible cloud provider.
Outscale only implement EC2 so only the EC2 endpoints are defined for
Outscale's regions.This commit takes care of making the code panic in the various
constructors if the endpoints they use are not defined. - 50. By Dimiter Naydenov
-
ec2: Added (Un)AssignPriva
teIPAddresses APIs Added two new API calls:
- AssignPrivateIPAddresses
- UnassignPrivateIPAddresses They allow adding or removing secondary private
IP addresses to a network interface of an instance.This is the final part of the VPC-related goamz
changes needed to support initial container
networking in juju-core.Added a live-only test for the two new APIs and
a couple of example response tests.Removed ec2.*Status constants, as suggested in
a prereq review, which I omitted previously.R=rog, niemeyer
CC=
https://codereview. appspot. com/54210047 - 49. By Dimiter Naydenov
-
ec2: Added NIC support for RunInstances
This extends RunInstances options to include
a list of NetworkInterfaceSpec options. They
allow specifying NICs to attach to instances
at launch time (either existing or new NICs).It also adds SubnetId, VPCId, SourceDestCheck,
and NetworkInterfaces fields to the Instance
type, so Instances() and RunInstances() can
return the extended VPC-related information
for an instance.If any NetworkInterfac
eSpec options are provided,
or SubnetID is given, RunInstances() will use the
latest AWS API version (2013-10-15), otherwise it
uses the default version (2011-12-15).Modified terminateInstan
ces() test helper to wait
and retry when running against live EC2 servers,
to make sure the instances are really gone and
not left hanging after the test (leaking related
resources with them). In order for this to work
with the local testing server, a slight change
was made - when an instance is terminated, the
next time you fetch it with Instances(), it will
report "terminated" (thus simulating the real
state transition).Added vpc-id and subnet-id filters to ec2test's
Instance and securityGroup types, and also changed
TestGroupFiltering and TestInstanceFiltering to
include tests for them.Test double changed to support VPC security groups
and verify subnet ID in runInstances, as EC2 does.
Added NewInstancesVPC() method with vpcId and subnetId,
so VPC-enabled instances can be created in the test
server.Added a TestRunInstancesVPC live test for the new
functionality (only live, because it's not worth
it to change the test double to create NICs in
runInstances()).R=rog, niemeyer, nate.finch
CC=
https://codereview. appspot. com/60620043 - 48. By Dimiter Naydenov
-
ec2: Add VPC NetworkInterfac
e-related APIs Added the following new API calls:
- CreateNetworkInterface
- DeleteNetworkInterface
- NetworkInterfaces
- AttachNetworkInterface
- DetachNetworkInterface
(and related types/responses)Modified existing calls/types:
- SecurityGroupInfo now includes VPCId field
- Add CreateSecurityGroupVPC call that does
the same as CreateSecurityGroup, but sets
the VPCId, to create a VPC groupThis enables us to handle VPC NICs with
goamz and partially handle private IP
addresses for them. Next, we'll add more
VPC-related stuff to Instances.Tested live on EC2, extended ec2test package
as needed.Added a couple of test helpers: createSubnet,
and deleteSubnets, used to make sure we wait
for the events to happen when running against
live EC2 servers, and we don't leave stuff
around after the tests. With these the live
tests pass and clean up properly.R=rog, niemeyer
CC=
https://codereview. appspot. com/54570048 - 47. By Dimiter Naydenov
-
ec2: Add support for VPC subnets
Added the following new API calls:
- CreateSubnet
- DeleteSubnet
- Subnets
(and related types/responses)This is the second step on the path to
support VPC networking in goamz, next
APIs for network interfaces will be
added.Tested live on EC2, and extended the
ec2test package as needed.Added a deleteVPCs test helpers which
waits until a VPC is no longer in use
and can be deleted, retrying as needed
when running against live EC2 servers.
This is needed to ensure live tests do
no leave stuff behind (I've run all live
tests several times in a row to make sure
it works).R=rog, gz, niemeyer
CC=
https://codereview. appspot. com/54690048 - 46. By Dimiter Naydenov
-
ec2: Add support for AWS VPCs
Added the following new API calls:
- CreateVPC
- DeleteVPC
- VPCs
(and the associated types/responses).Most new code is in vpc.go and vpc_test.go.
These are needed in order to support VPC-related
operations on EC2, which will come in later follow-ups.
Implementation complexity in ec2test package for the
new calls is minimal.Some changes were needed in order to support these
and the upcoming API calls. For the new ones, AWS API
version 2013-10-15 (latest) is used, while for the
existing calls use the previous API version, as before
(2011-12-15).Added tests, updated test doubles and tested live on
EC2.After running the EC2 live tests numerous times, I
realized some tests are leaking security groups, so
I added a deleteGroups() tests helper that retries
to ensure all groups are deleted. Also improved the
VPC tests to include retrying as well, so the live
tests are more stable and clean up after themselves. - 45. By Dimiter Naydenov
-
ec2: Fixed #1275406 - LocalServerSuite failure
LocalServerSuit
e.TestInstanceI nfo fails due to
the DNSName field being empty, where as the
test expect it populated.
Changed the test to refresh the instance data
after it's started, because DNSName is empty
until the instance state is "started" (according
to AWS docs). In the test suite this is simulated
by getting the instance data again, which includes
the populated DNSName.R=rog, gz, niemeyer
CC=
https://codereview. appspot. com/59620043 - 44. By Roger Peppe
-
ec2/ec2test: set empty DNSName initially
Initially set empty DNSName, causing the
client to re-request the DNSName. This
exercises the address refreshing logic
in juju's ec2 provider. - 43. By Gustavo Niemeyer
-
ec2: support RunInstances with BlockDeviceMappings
R=dfc, nate.finch
CC=
https://codereview. appspot. com/9860044 - 42. By Martin Packman
-
ec2: support instance prefix on group filters
The EC2 API documentation allows for alternative spellings of
the group-name and group-id filters on instances. It seems only
the prefixed forms are actually supported when using default VPC
despite claims to the contrary, so add support for them to the
test server infrastructure.R=rog
CC=
https://codereview. appspot. com/14304043
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)
- Stacked on:
- lp://staging/goamz