lib/fog/aws/requests/compute/create_subnet.rb in fog-1.19.0 vs lib/fog/aws/requests/compute/create_subnet.rb in fog-1.20.0

- old
+ new

@@ -44,22 +44,32 @@ def create_subnet(vpcId, cidrBlock, options = {}) av_zone = options['AvailabilityZone'].nil? ? 'us-east-1c' : options['AvailabilityZone'] Excon::Response.new.tap do |response| if cidrBlock && vpcId response.status = 200 - self.data[:subnets].push({ - 'subnetId' => Fog::AWS::Mock.request_id, + data = { + 'subnetId' => Fog::AWS::Mock.subnet_id, 'state' => 'pending', 'vpcId' => vpcId, 'cidrBlock' => cidrBlock, 'availableIpAddressCount' => "255", 'availabilityZone' => av_zone, 'tagSet' => {} - }) + } + # Add this subnet to the default network ACL + accid = Fog::AWS::Mock.network_acl_association_id + default_nacl = self.data[:network_acls].values.detect { |nacl| nacl['vpcId'] == vpcId && nacl['default'] } + default_nacl['associationSet'] << { + 'networkAclAssociationId' => accid, + 'networkAclId' => default_nacl['networkAclId'], + 'subnetId' => data['subnetId'], + } + + self.data[:subnets].push(data) response.body = { 'requestId' => Fog::AWS::Mock.request_id, - 'subnetSet' => self.data[:subnets] + 'subnet' => data, } else response.status = 400 response.body = { 'Code' => 'InvalidParameterValue'