diff --git a/pom.xml b/pom.xml
index ec207c5..122ca49 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
1.1.0
- 1.1.0
+ 1.2.0
1.0.0
1.1.0
3.1.0
diff --git a/src/main/resources/aws/resources/resources.yaml b/src/main/resources/aws/resources/resources.yaml
index 6414df3..e0139e6 100644
--- a/src/main/resources/aws/resources/resources.yaml
+++ b/src/main/resources/aws/resources/resources.yaml
@@ -12,6 +12,70 @@ imports:
- tosca-normative-types:${tosca.normative.types.version}
- yorc-types:${yorc.types.version}
+data_types:
+ yorc.datatypes.aws.SubnetType:
+ derived_from: tosca.datatypes.Root
+ # See : https://www.terraform.io/docs/providers/aws/r/subnet.html
+ properties:
+ availability_zone:
+ type: string
+ required: false
+ description: The AZ for the subnet
+ availability_zone_id:
+ type: string
+ required: false
+ description: The AZ ID for the subnet
+ cidr_block:
+ type: string
+ required: true
+ ipv6_cidr_block :
+ type: string
+ required: false
+ description: The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.
+ map_public_ip_on_launch:
+ type: boolean
+ required: false
+ description: Specify true to indicate that instances launched into the subnet should be assigned a public IP address.
+ assign_ipv6_address_on_creation:
+ type: boolean
+ required: false
+ description: >
+ Specify true to indicate that network interfaces created in the specified subnet should be assigned an IPv6 address
+ tags:
+ type: map
+ description: A mapping of tags to assign to the resource.
+ required: false
+ entry_schema:
+ type: string
+
+ yorc.datatypes.aws.SecurityRuleType:
+ derived_from: tosca.datatypes.Root
+ # See : https://www.terraform.io/docs/providers/aws/r/subnet.html
+ properties:
+ from_port:
+ type: string
+ required: true
+ to_port:
+ type: string
+ required: true
+ protocol:
+ type: string
+ required: true
+
+ yorc.datatypes.aws.SecurityGroupType:
+ derived_from: tosca.datatypes.Root
+ # See : https://www.terraform.io/docs/providers/aws/r/subnet.html
+ properties:
+ name:
+ type: string
+ required: true
+ ingress:
+ type: yorc.datatypes.aws.SecurityRuleType
+ required: true
+ egress:
+ type: yorc.datatypes.aws.SecurityRuleType
+ required: true
+
node_types:
yorc.nodes.aws.Compute:
derived_from: yorc.nodes.Compute
@@ -31,7 +95,12 @@ node_types:
type: string
description: >
Coma separated list of security groups to add to the Compute
- required: true
+ required: false
+ subnet_id:
+ type: string
+ description: >
+ The VPC Subnet ID to launch in.
+ required: false
availability_zone:
type: string
required: false
@@ -104,6 +173,103 @@ node_types:
required: false
default: false
+ yorc.nodes.aws.Subnet:
+ derived_from: tosca.nodes.Network
+ # See : https://www.terraform.io/docs/providers/aws/r/subnet.html
+ properties:
+ availability_zone:
+ type: string
+ required: false
+ description: The AZ for the subnet
+ availability_zone_id:
+ type: string
+ required: false
+ description: The AZ ID for the subnet
+ cidr_block:
+ type: string
+ required: true
+ ipv6_cidr_block :
+ type: string
+ required: false
+ description: The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.
+ map_public_ip_on_launch:
+ type: boolean
+ required: false
+ description: Specify true to indicate that instances launched into the subnet should be assigned a public IP address.
+ assign_ipv6_address_on_creation:
+ type: boolean
+ required: false
+ description: >
+ Specify true to indicate that network interfaces created in the specified subnet should be assigned an IPv6 address
+ vpc_id:
+ type: string
+ required: true
+ tags:
+ type: map
+ description: A mapping of tags to assign to the resource.
+ required: false
+ entry_schema:
+ type: string
+
+ yorc.nodes.aws.VPC:
+ derived_from: tosca.nodes.Network
+ # See https://www.terraform.io/docs/providers/aws/r/vpc.html
+ properties:
+ cidr_block:
+ type: string
+ required: true
+ instance_tenancy:
+ type: string
+ description: >
+ You can run instances in your VPC on single-tenant, dedicated hardware.
+ Select Dedicated to ensure that instances launched in this VPC are dedicated tenancy instances, regardless of the tenancy attribute specified at launch.
+ Select Default to ensure that instances launched in this VPC use the tenancy attribute specified at launch
+ default: default
+ constraints :
+ - valid_values: [default, dedicated]
+ enable_dns_support:
+ type: boolean
+ description: A boolean flag to enable/disable DNS support in the VPC. Defaults true.
+ default: true
+ required: false
+ enable_dns_hostnames:
+ type: boolean
+ default: false
+ description : A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
+ required: false
+ enable_classiclink:
+ type: boolean
+ default: false
+ description: A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic.
+ required: false
+ enable_classiclink_dns_support:
+ type: boolean
+ required: false
+ description: A boolean flag to enable/disable ClassicLink DNS Support for the VPC. Only valid in regions and accounts that support EC2 Classic
+ assign_generated_ipv6_cidr_block:
+ type: boolean
+ required: false
+ description: Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block.
+ tags:
+ type: map
+ description: A mapping of tags to assign to the resource.
+ required: false
+ entry_schema:
+ type: string
+ subnets:
+ type: list
+ description: Subnetworks in this VPC
+ required: false
+ entry_schema:
+ type: yorc.datatypes.aws.SubnetType
+ security_groups:
+ type: list
+ description: SecurityGroups in this VPC
+ required: false
+ entry_schema:
+ type: yorc.datatypes.aws.SecurityGroupType
+
+
##############################################
# Abstract resources used for auto-config