Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

<!-- Embedded TOSCA types versions -->
<yorc.types.version>1.1.0</yorc.types.version>
<yorc.aws.types.version>1.1.0</yorc.aws.types.version>
<yorc.aws.types.version>1.2.0</yorc.aws.types.version>
<yorc.google.types.version>1.0.0</yorc.google.types.version>
<yorc.hp.types.version>1.1.0</yorc.hp.types.version>
<yorc.k8s.types.version>3.1.0</yorc.k8s.types.version>
Expand Down
168 changes: 167 additions & 1 deletion src/main/resources/aws/resources/resources.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand Down Expand Up @@ -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
Expand Down