{ "typeName": "JFrog::Vpc::MultiAz::MODULE", "description": "Schema for Module Fragment of type JFrog::Vpc::MultiAz::MODULE", "properties": { "Parameters": { "type": "object", "properties": { "AvailabilityZone1": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "Availability Zone 1 to use for the subnets in the VPC. Two Availability Zones are used for this deployment." }, "AvailabilityZone2": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "Availability Zone 2 to use for the subnets in the VPC. Two Availability Zones are used for this deployment." }, "CreateNATGateways": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "Set to false when creating only private subnets. If True, both CreatePublicSubnets and CreatePrivateSubnets must also be true." }, "CreatePublicSubnets": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "Set to false to create only private subnets. If false, CreatePrivateSubnets must be True and the CIDR parameters for ALL public subnets will be ignored" }, "CreatePrivateSubnets": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "Set to false to create only public subnets. If false, the CIDR parameters for ALL private subnets will be ignored." }, "PrivateSubnet1ACIDR": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "CIDR block for private subnet 1A located in Availability Zone 1" }, "PrivateSubnet2ACIDR": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "CIDR block for private subnet 2A located in Availability Zone 2" }, "PrivateSubnetATag1": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "tag to add to private subnets A, in format Key=Value (Optional)" }, "PrivateSubnetATag2": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "tag to add to private subnets A, in format Key=Value (Optional)" }, "PublicSubnet1CIDR": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "CIDR block for the public DMZ subnet 1 located in Availability Zone 1" }, "PublicSubnet2CIDR": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "CIDR block for the public DMZ subnet 2 located in Availability Zone 2" }, "PublicSubnetTag1": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "tag to add to public subnets, in format Key=Value (Optional)" }, "PublicSubnetTag2": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "tag to add to public subnets, in format Key=Value (Optional)" }, "VPCCIDR": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "CIDR block for the VPC" }, "VPCTenancy": { "type": "object", "properties": { "Type": { "type": "string" }, "Description": { "type": "string" } }, "required": [ "Type", "Description" ], "description": "The allowed tenancy of instances launched into the VPC" } } }, "Resources": { "properties": { "DHCPOptions": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::DHCPOptions" }, "Properties": { "type": "object" } } }, "VPC": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::VPC" }, "Properties": { "type": "object" } } }, "VPCDHCPOptionsAssociation": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::VPCDHCPOptionsAssociation" }, "Properties": { "type": "object" } } }, "InternetGateway": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::InternetGateway" }, "Properties": { "type": "object" } } }, "VPCGatewayAttachment": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::VPCGatewayAttachment" }, "Properties": { "type": "object" } } }, "PrivateSubnet1A": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::Subnet" }, "Properties": { "type": "object" } } }, "PrivateSubnet2A": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::Subnet" }, "Properties": { "type": "object" } } }, "PublicSubnet1": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::Subnet" }, "Properties": { "type": "object" } } }, "PublicSubnet2": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::Subnet" }, "Properties": { "type": "object" } } }, "PrivateSubnet1ARouteTable": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::RouteTable" }, "Properties": { "type": "object" } } }, "PrivateSubnet1ARoute": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::Route" }, "Properties": { "type": "object" } } }, "PrivateSubnet1ARouteTableAssociation": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::SubnetRouteTableAssociation" }, "Properties": { "type": "object" } } }, "PrivateSubnet2ARouteTable": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::RouteTable" }, "Properties": { "type": "object" } } }, "PrivateSubnet2ARoute": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::Route" }, "Properties": { "type": "object" } } }, "PrivateSubnet2ARouteTableAssociation": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::SubnetRouteTableAssociation" }, "Properties": { "type": "object" } } }, "PublicSubnetRouteTable": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::RouteTable" }, "Properties": { "type": "object" } } }, "PublicSubnetRoute": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::Route" }, "Properties": { "type": "object" } } }, "PublicSubnet1RouteTableAssociation": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::SubnetRouteTableAssociation" }, "Properties": { "type": "object" } } }, "PublicSubnet2RouteTableAssociation": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::SubnetRouteTableAssociation" }, "Properties": { "type": "object" } } }, "NAT1EIP": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::EIP" }, "Properties": { "type": "object" } } }, "NAT2EIP": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::EIP" }, "Properties": { "type": "object" } } }, "NATGateway1": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::NatGateway" }, "Properties": { "type": "object" } } }, "NATGateway2": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::NatGateway" }, "Properties": { "type": "object" } } }, "S3VPCEndpoint": { "type": "object", "properties": { "Type": { "type": "string", "const": "AWS::EC2::VPCEndpoint" }, "Properties": { "type": "object" } } } }, "type": "object", "additionalProperties": false } }, "additionalProperties": true }