-
Notifications
You must be signed in to change notification settings - Fork 1
/
ec2-service.yml
104 lines (103 loc) · 2.95 KB
/
ec2-service.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
tosca_definitions_version: tosca_simple_yaml_1_3
node_types:
radon.nodes.VM.EC2:
derived_from: tosca.nodes.Compute
metadata:
targetNamespace: "radon.nodes.VM"
abstract: "false"
final: "false"
attributes:
id:
type: string
properties:
image:
type: string
required: true
default: "ami-00890f614e48ce866"
status: supported
ssh_key_name:
type: string
required: true
status: supported
vpc_subnet_id:
type: string
required: true
status: supported
instance_type:
type: string
required: true
default: "t2.micro"
status: supported
ssh_key_file:
type: string
required: true
status: supported
ssh_user:
type: string
required: true
status: supported
requirements:
- host:
capability: tosca.capabilities.Container
node: radon.nodes.aws.AwsPlatform
relationship: tosca.relationships.HostedOn
occurrences: [ 1, 1 ]
interfaces:
Standard:
type: tosca.interfaces.node.lifecycle.Standard
operations:
create:
description: create
inputs:
image:
type: string
required: true
default: { get_property: [ SELF, image ] }
ssh_key_name:
type: string
required: true
default: { get_property: [ SELF, ssh_key_name ] }
vpc_subnet_id:
type: string
required: true
default: { get_property: [ SELF, vpc_subnet_id ] }
region:
type: string
required: true
default: { get_property: [ HOST, region ] }
instance_type:
type: string
required: true
default: { get_property: [ SELF, instance_type ] }
ssh_key_file:
type: string
required: true
default: { get_property: [ SELF, ssh_key_file ] }
ssh_user:
type: string
required: true
default: { get_property: [ SELF, ssh_user ] }
implementation:
primary: create
timeout: 0
delete:
description: delete
inputs:
id:
type: string
required: true
default: { get_attribute: [ SELF, id ] }
region:
type: string
required: true
default: { get_property: [ HOST, region ] }
implementation:
primary: delete
timeout: 0
artifacts:
create:
type: radon.artifacts.Ansible
file: create/create.yml
delete:
type: radon.artifacts.Ansible
file: delete/delete.yml