cfnlego 0.0.8 → 0.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +15 -13
- data/lib/cfnlego/resources/EC2/Instance.yaml +90 -0
- data/lib/cfnlego/resources/EC2/SecurityGroup.yaml +31 -0
- data/lib/cfnlego/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 66a6f641bd72a9a25ee4ca635c00edd254a0cdd6
|
4
|
+
data.tar.gz: 721512826b9d65f1e2a8bc35f9eee169682e38f3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dbef6433175ec8af196ca16fd45db6196f8f9bc34b276c6b2571b2a2385b7329d5d1f9c7c768b030514e43d547594a1c660effb290ac20bfcaa768268347476f
|
7
|
+
data.tar.gz: f78fbe1d153c1e29eb166ac850bc9407877bfcb1681d8481f1f3bdf96eb3f74648903ea08e5423e90580858c913d332cb55fab272bb5ab75f518fc88adcdd265
|
data/README.md
CHANGED
@@ -32,19 +32,21 @@ Example:
|
|
32
32
|
|
33
33
|
### Current Supported Resources
|
34
34
|
|
35
|
-
-
|
36
|
-
-
|
37
|
-
-
|
38
|
-
-
|
39
|
-
-
|
40
|
-
-
|
41
|
-
-
|
42
|
-
-
|
43
|
-
-
|
44
|
-
-
|
45
|
-
-
|
46
|
-
-
|
47
|
-
-
|
35
|
+
- AWS::AutoScaling::AutoScalingGroup
|
36
|
+
- AWS::AutoScaling::LaunchConfiguration
|
37
|
+
- AWS::AutoScaling::LifecycleHook
|
38
|
+
- AWS::CloudFront::Distribution
|
39
|
+
- AWS::CloudWatch::Alarm
|
40
|
+
- AWS::EC2::Instance
|
41
|
+
- AWS::EC2::SecurityGroup
|
42
|
+
- AWS::ElasticLoadBalancing::LoadBalancer
|
43
|
+
- AWS::IAM::InstanceProfile
|
44
|
+
- AWS::IAM::ManagedPolicy
|
45
|
+
- AWS::IAM::Role
|
46
|
+
- AWS::Lambda::Function
|
47
|
+
- AWS::Route53::RecordSet
|
48
|
+
- AWS::SNS::Topic
|
49
|
+
- AWS::SNS::TopicPolicy
|
48
50
|
|
49
51
|
### License
|
50
52
|
|
@@ -0,0 +1,90 @@
|
|
1
|
+
AWS::EC2::Instance:
|
2
|
+
Properties:
|
3
|
+
AvailabilityZone: "\"ap-southeast-2\""
|
4
|
+
BlockDeviceMappings: |
|
5
|
+
[
|
6
|
+
{
|
7
|
+
"DeviceName" => "/dev/sda1",
|
8
|
+
"Ebs" => {
|
9
|
+
"DeleteOnTermination" => false,
|
10
|
+
"Encrypted" => false,
|
11
|
+
"Iops" => "1000",
|
12
|
+
"SnapshotId" => "snap-xxxxx",
|
13
|
+
"VolumeSize" => "100",
|
14
|
+
"VolumeType" => "standard | io1 | gp2"
|
15
|
+
}
|
16
|
+
},
|
17
|
+
{
|
18
|
+
"DeviceName" => "/dev/sde",
|
19
|
+
"NoDevice" => {}
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"DeviceName" => "/dev/sdc",
|
23
|
+
"VirtualName" => "ephemeral0"
|
24
|
+
}
|
25
|
+
]
|
26
|
+
DisableApiTermination: "\"false\""
|
27
|
+
EbsOptimized: "\"false\""
|
28
|
+
IamInstanceProfile: "\"instance profile id\""
|
29
|
+
ImageId: "\"ami-xxxx\""
|
30
|
+
InstanceInitiatedShutdownBehavior: "\"stop | terminate\""
|
31
|
+
InstanceType: "\"t2.small\""
|
32
|
+
KernelId: "\"your kernel Id\""
|
33
|
+
KeyName: "\"your ssh key name\""
|
34
|
+
Monitoring: "\"true\""
|
35
|
+
NetworkInterfaces: |
|
36
|
+
[
|
37
|
+
{
|
38
|
+
"AssociatePublicIpAddress" => false,
|
39
|
+
"DeleteOnTermination" => true,
|
40
|
+
"Description" => "service nic" ,
|
41
|
+
"DeviceIndex" => "1",
|
42
|
+
"GroupSet" => [ "sg-xxxx", "sg-xxxx" ],
|
43
|
+
"NetworkInterfaceId" => "An existing network interface ID.",
|
44
|
+
"PrivateIpAddress" => "192.168.0.111",
|
45
|
+
"PrivateIpAddresses" => [
|
46
|
+
{
|
47
|
+
"PrivateIpAddress" => "192.168.0.112",
|
48
|
+
"Primary" => true
|
49
|
+
},
|
50
|
+
{
|
51
|
+
"PrivateIpAddress" => "192.168.1.112",
|
52
|
+
"Primary" => false
|
53
|
+
}
|
54
|
+
],
|
55
|
+
"SecondaryPrivateIpAddressCount" => "The number of secondary private IP addresses that Amazon EC2 auto assigns to the network interface. ",
|
56
|
+
"SubnetId" => "sb-xxxxxx"
|
57
|
+
}
|
58
|
+
]
|
59
|
+
PlacementGroupName: "\"pg-xxxxx\""
|
60
|
+
PrivateIpAddress: "\"192.168.0.111\""
|
61
|
+
RamdiskId: "\"ram-xxx\""
|
62
|
+
SecurityGroupIds: |
|
63
|
+
[ "sg-xxx", "sg-xxx" ] # A list that contains the security group IDs for VPC security groups
|
64
|
+
SecurityGroups: |
|
65
|
+
["sg-xxx", "sg-xxx"] # The list can contain both the name of existing Amazon EC2 security groups or references to AWS::EC2::SecurityGroup resources created in the template.
|
66
|
+
SourceDestCheck: "\"true\""
|
67
|
+
SubnetId: "\"sb-xxxx\""
|
68
|
+
Tags: |
|
69
|
+
[
|
70
|
+
"Key" => "Name",
|
71
|
+
"Value" => "Test EC2"
|
72
|
+
]
|
73
|
+
Tenancy: "\"default | dedicated\""
|
74
|
+
UserData: |
|
75
|
+
FnJoin("/n",
|
76
|
+
[
|
77
|
+
"/bin/bash",
|
78
|
+
"exec 1<&-",
|
79
|
+
"exec 2<&-",
|
80
|
+
"exec 1<>/var/log/user-data.txt",
|
81
|
+
"exec 2>&1"
|
82
|
+
])
|
83
|
+
Volumes: |
|
84
|
+
[
|
85
|
+
{
|
86
|
+
"Device" => "/dev/sda",
|
87
|
+
"VolumeId" => "vol-xxxx"
|
88
|
+
}
|
89
|
+
]
|
90
|
+
AdditionalInfo: "\"reserved property for AWS\""
|
@@ -0,0 +1,31 @@
|
|
1
|
+
AWS::EC2::SecurityGroup:
|
2
|
+
Properties:
|
3
|
+
GroupDescription: "\"allow something and not allow something\""
|
4
|
+
SecurityGroupEgress: |
|
5
|
+
[
|
6
|
+
{
|
7
|
+
"CidrIp" => "0.0.0.0/0",
|
8
|
+
"FromPort" => "80",
|
9
|
+
"IpProtocol" => "tcp, udp, icmp, -1",
|
10
|
+
"SourceSecurityGroupId" => "sg-xxx, For VPC security groups only.",
|
11
|
+
"SourceSecurityGroupName" => "use in EC2-Classic, default VPC",
|
12
|
+
"SourceSecurityGroupOwnerId" => "[EC2-Classic, default VPC] The AWS account number for the source security group.",
|
13
|
+
"ToPort" => "80"
|
14
|
+
}
|
15
|
+
]
|
16
|
+
SecurityGroupIngress: |
|
17
|
+
[
|
18
|
+
{
|
19
|
+
"CidrIp" => "192.168.0.0/24",
|
20
|
+
"FromPort" => "80",
|
21
|
+
"IpProtocol" => "tcp, udp, icmp, -1",
|
22
|
+
"DestinationSecurityGroupId" => "Specifies the GroupId of the destination Amazon VPC security group.",
|
23
|
+
"ToPort" => "80"
|
24
|
+
}
|
25
|
+
]
|
26
|
+
Tags: |
|
27
|
+
[
|
28
|
+
"Key" => "Name",
|
29
|
+
"Value" => "allow HTTP Eg and In"
|
30
|
+
]
|
31
|
+
VpcId: "\"vpc-xxxxx\""
|
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.0.
|
4
|
+
version: 0.0.9
|
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-09-
|
11
|
+
date: 2015-09-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ruby-beautify
|
@@ -94,6 +94,8 @@ files:
|
|
94
94
|
- lib/cfnlego/resources/AutoScaling/LifecycleHook.yaml
|
95
95
|
- lib/cfnlego/resources/CloudFront/Distribution.yaml
|
96
96
|
- lib/cfnlego/resources/CloudWatch/Alarm.yaml
|
97
|
+
- lib/cfnlego/resources/EC2/Instance.yaml
|
98
|
+
- lib/cfnlego/resources/EC2/SecurityGroup.yaml
|
97
99
|
- lib/cfnlego/resources/ElasticLoadBalancing/LoadBalancer.yaml
|
98
100
|
- lib/cfnlego/resources/IAM/InstanceProfile.yaml
|
99
101
|
- lib/cfnlego/resources/IAM/ManagedPolicy.yaml
|