# File lib/aws/ec2/vpc_collection.rb, line 56 def [] vpc_id VPC.new(vpc_id, :config => config) end
Creates a VPC with the CIDR block you specify. The smallest VPC you can create uses a /28 netmask (16 IP addresses), and the largest uses a /16 netmask (65,536 IP addresses).
vpc = ec2.vpcs.create('10.0.0.0/16')
@param [String] cidr_block The CIDR block you want the VPC to
cover (e.g., 10.0.0.0/16).
@param [Hash] options
@option options [Boolean] :instance_tenancy (:default)
The allowed tenancy of instances launched into the VPC. A value of +:default+ means instances can be launched with any tenancy; a value of +:dedicated+ means all instances launched into the VPC will be launched with dedicated tenancy regardless of the tenancy assigned to the instance at launch.
@return [VPC]
# File lib/aws/ec2/vpc_collection.rb, line 41 def create cidr_block, options = {} tenancy = options.key?(:instance_tenancy) ? options[:instance_tenancy].to_s : 'default' client_opts = {} client_opts[:cidr_block] = cidr_block client_opts[:instance_tenancy] = tenancy resp = client.create_vpc(client_opts) VPC.new_from(:create_vpc, resp.vpc, resp.vpc.vpc_id, :config => config) end
# File lib/aws/ec2/vpc_collection.rb, line 61 def _each_item options = {}, &block response = filtered_request(:describe_vpcs, options, &block) response.vpc_set.each do |v| yield(VPC.new_from(:describe_vpcs, v, v.vpc_id, :config => config)) end end