cfnlego 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +4 -0
- data/lib/cfnlego/resources/EC2/SpotFleet.yaml +52 -0
- data/lib/cfnlego/resources/ECS/Cluster.yaml +3 -0
- data/lib/cfnlego/resources/ECS/Service.yaml +9 -0
- data/lib/cfnlego/resources/ECS/TaskDefinition.yaml +47 -0
- data/lib/cfnlego/version.rb +1 -1
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 865950f21a1c0c7c0134fd4f92b676c874534dbd
|
4
|
+
data.tar.gz: 58895618ffc334b449ae7d745a6d71aa561fa45a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1d8158f9f91b57ef7b8159c42ec1da58ae1ae29da28a11ab45a6e874f932e0c2975a6b86364d9449fbda2a7d57307bcc5117baff8625f3683d79d9eef0aad68e
|
7
|
+
data.tar.gz: e899b93a75c3982cc975b9c068b7823f4267a2fa350342035b3b77427c3db004b96dfe8601beabadd7670a1ef595c8acc1869656837ae3e56f210bd2ec9eb074
|
data/README.md
CHANGED
@@ -39,6 +39,7 @@ Example:
|
|
39
39
|
- AWS::CloudWatch::Alarm
|
40
40
|
- AWS::EC2::Instance
|
41
41
|
- AWS::EC2::SecurityGroup
|
42
|
+
- AWS::EC2::SpotFleet
|
42
43
|
- AWS::ElasticLoadBalancing::LoadBalancer
|
43
44
|
- AWS::IAM::InstanceProfile
|
44
45
|
- AWS::IAM::ManagedPolicy
|
@@ -49,6 +50,9 @@ Example:
|
|
49
50
|
- AWS::Route53::HealthCheck
|
50
51
|
- AWS::SNS::Topic
|
51
52
|
- AWS::SNS::TopicPolicy
|
53
|
+
- AWS::ECS::Cluster
|
54
|
+
- AWS::ECS::Service
|
55
|
+
- AWS::ECS::TaskDefinition
|
52
56
|
|
53
57
|
### License
|
54
58
|
|
@@ -0,0 +1,52 @@
|
|
1
|
+
AWS::EC2::SpotFleet:
|
2
|
+
Properties:
|
3
|
+
SpotFleetRequestConfigData: |
|
4
|
+
{
|
5
|
+
"IamFleetRole" => "The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that grants the Spot fleet the ability to bid on",
|
6
|
+
"LaunchSpecifications" => [
|
7
|
+
{
|
8
|
+
"BlockDeviceMappings" => [
|
9
|
+
{
|
10
|
+
"DeviceName" => "such as /dev/dsh or xvdh",
|
11
|
+
"Ebs" => "You can specify either the VirtualName or Ebs, but not both.",
|
12
|
+
"NoDevice" => "Boolean", # Suppresses the specified device that is included in the block device mapping of the Amazon Machine Image
|
13
|
+
"VirtualName" => "The name must be in the form ephemeralX where X is a number equal to or greater than zero (0), for example, ephemeral0."
|
14
|
+
}
|
15
|
+
],
|
16
|
+
"EbsOptimized" => "Boolean",
|
17
|
+
"IamInstanceProfile" => "IamInstanceProfile",
|
18
|
+
"ImageId" => "String",
|
19
|
+
"InstanceType" => "String",
|
20
|
+
"KernelId" => "String",
|
21
|
+
"KeyName" => "String",
|
22
|
+
"Monitoring" => "Boolean",
|
23
|
+
"NetworkInterfaces" => [
|
24
|
+
{
|
25
|
+
"AssociatePublicIpAddress" => "Boolean",
|
26
|
+
"DeleteOnTermination" => "Boolean",
|
27
|
+
"Description" => "String",
|
28
|
+
"DeviceIndex" => "Integer",
|
29
|
+
"Groups" => ["A list of security group IDs to associate with this network interface."],
|
30
|
+
"NetworkInterfaceId" => "String",
|
31
|
+
"PrivateIpAddresses" => ["One or more private IP addresses to assign to the network interface. "],
|
32
|
+
"SecondaryPrivateIpAddressCount" => "Integer", #The number of secondary private IP addresses that Amazon Elastic Compute Cloud (Amazon EC2) automatically assigns
|
33
|
+
"SubnetId" => "String"
|
34
|
+
}
|
35
|
+
],
|
36
|
+
"Placement" => {
|
37
|
+
"AvailabilityZone" => "String",
|
38
|
+
"GroupName" => "The name of the placement group (for cluster instances)."
|
39
|
+
},
|
40
|
+
"RamdiskId" => "String",
|
41
|
+
"SecurityGroups" => ["One or more security group IDs to associate with the instances."],
|
42
|
+
"SubnetId" => "String",
|
43
|
+
"UserData" => "Base64-encoded MIME user data that instances use when starting up.", # FnBase64(data)
|
44
|
+
"WeightedCapacity" => "Number"
|
45
|
+
}
|
46
|
+
],
|
47
|
+
"SpotPrice" => "String",
|
48
|
+
"TargetCapacity" => "Integer", #The number of units to request. You can choose to set the target capacity as instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O.
|
49
|
+
"TerminateInstancesWithExpiration" => "Boolean", # Indicates whether running Spot instances are terminated when the Spot fleet request expires.
|
50
|
+
"ValidFrom" => "String", # The start date and time of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). By default, Amazon EC2 starts fulfilling the request immediately.
|
51
|
+
"ValidUntil" => "String" # The end date and time of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). After the end date and time, Amazon EC2 doesn't request new Spot instances or enable them to fulfill the request.
|
52
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
AWS::ECS::Service:
|
2
|
+
Properties:
|
3
|
+
Cluster: "String"
|
4
|
+
DesiredCounti: "Integer"
|
5
|
+
LoadBalancers: |
|
6
|
+
[ "elb" ] # Ref("elb")
|
7
|
+
Role: "\"The name or ARN of an AWS Identity and Access Management (IAM) role that allows your Amazon ECS container agent to make calls to your load balancer\""
|
8
|
+
TaskDefinition: "\"task-def # Ref(task) The family, family and revision (family:revision), or ARN of the task definition that you want to run on the cluster.\""
|
9
|
+
|
@@ -0,0 +1,47 @@
|
|
1
|
+
AWS::ECS::TaskDefinition:
|
2
|
+
Properties:
|
3
|
+
Volumes: |
|
4
|
+
[
|
5
|
+
{
|
6
|
+
"Name" => "String", # The name of the volume.
|
7
|
+
"Host" => {"SourcePath" => "String"} # Determines whether your data volume persists on the host container instance and at the location where it is stored.
|
8
|
+
}
|
9
|
+
]
|
10
|
+
ContainerDefinitions: |
|
11
|
+
[
|
12
|
+
{
|
13
|
+
"Command" => ["The CMD value to pass to the container."],
|
14
|
+
"Cpu" => "Integer", #The minimum number of CPU units to reserve for the container.
|
15
|
+
"EntryPoint" => ["The ENTRYPOINT value to pass to the container."],
|
16
|
+
"Environment" => [
|
17
|
+
{
|
18
|
+
"Name" => "String",
|
19
|
+
"Value" => "String"
|
20
|
+
}
|
21
|
+
],
|
22
|
+
"Essential" => "Boolean", # Indicates whether the task stops if this container fails. If you specify true and the container fails, all other containers in the task stop. If you specify false and the container fails, none of the other containers in the task are affected. This value is true by default.
|
23
|
+
"Image" => "String", # The image to use for a container, which is passed directly to the Docker daemon. You can use images in the Docker Hub registry or specify other repositories (repository-url/image:tag).
|
24
|
+
"Links" => ["container-name"], # The name of another container to connect to. With links, containers can communicate with each other without using port mappings.
|
25
|
+
"Memory" => "Integer", # The number of MiB of memory to reserve for the container. If your container attempts to exceed the allocated memory, the container is killed.
|
26
|
+
"MountPoints" => [
|
27
|
+
{
|
28
|
+
"ContainerPath" => "String",
|
29
|
+
"SourceVolume" => "String",
|
30
|
+
"ReadOnly" => "Boolean"
|
31
|
+
}
|
32
|
+
],
|
33
|
+
"Name" => "String", # A name for the container.
|
34
|
+
"PortMappings" => [
|
35
|
+
{
|
36
|
+
"ContainerPort" => "Integer",
|
37
|
+
"HostPort" => "Integer"
|
38
|
+
}
|
39
|
+
],
|
40
|
+
"VolumesFrom" => [
|
41
|
+
{
|
42
|
+
"SourceContainer" => "String",
|
43
|
+
"ReadOnly" => "Boolean"
|
44
|
+
}
|
45
|
+
]
|
46
|
+
}
|
47
|
+
]
|
data/lib/cfnlego/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cfnlego
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kevin Yung
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-12-
|
11
|
+
date: 2015-12-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ruby-beautify
|
@@ -96,6 +96,10 @@ files:
|
|
96
96
|
- lib/cfnlego/resources/CloudWatch/Alarm.yaml
|
97
97
|
- lib/cfnlego/resources/EC2/Instance.yaml
|
98
98
|
- lib/cfnlego/resources/EC2/SecurityGroup.yaml
|
99
|
+
- lib/cfnlego/resources/EC2/SpotFleet.yaml
|
100
|
+
- lib/cfnlego/resources/ECS/Cluster.yaml
|
101
|
+
- lib/cfnlego/resources/ECS/Service.yaml
|
102
|
+
- lib/cfnlego/resources/ECS/TaskDefinition.yaml
|
99
103
|
- lib/cfnlego/resources/ElasticLoadBalancing/LoadBalancer.yaml
|
100
104
|
- lib/cfnlego/resources/IAM/InstanceProfile.yaml
|
101
105
|
- lib/cfnlego/resources/IAM/ManagedPolicy.yaml
|