customresource-route53 0.7.1

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.
@@ -0,0 +1,158 @@
1
+ require 'customresource/base/mixins/cli'
2
+ require 'ipaddress'
3
+
4
+ module CustomResource
5
+ module Route53
6
+ module MixIns
7
+ module Cli
8
+ include CustomResource::Base::MixIns::Cli
9
+
10
+ def init_attributes
11
+ @valid_keys = {
12
+ :PrivateHostedZones => {
13
+ # required
14
+ :name => nil,
15
+ :hostedzone => nil,
16
+ :comment => nil,
17
+ :type => nil,
18
+ :ttl => nil,
19
+ # required
20
+ :cidrblock => nil,
21
+ # required
22
+ :vpcid => nil,
23
+ },
24
+ :ReverseDNSEntries => {
25
+ :name => nil,
26
+ :ipaddress => nil,
27
+ # required
28
+ :comment => nil,
29
+ :hostedzone => nil,
30
+ :hostedzoneid => nil,
31
+ :hostedzonename => nil,
32
+ :type => nil,
33
+ :ttl => nil,
34
+ :value => nil,
35
+ :resourcerecords => {
36
+ :value => nil,
37
+ },
38
+ }, }
39
+ end
40
+
41
+ def connect()
42
+ begin
43
+ credentials = ::Aws::InstanceProfileCredentials.new( :ip_address => @options[:ip_address] || '169.254.169.254')
44
+ credentials.refresh!
45
+ raise 'Cannot obtain InstanceProfileCredentials' unless credentials.access_key_id
46
+ @logger.info credentials.inspect
47
+ # noinspection RubyArgCount
48
+ @awssdk = ::Aws::Route53::Client.new(credentials: credentials, region: @region, :retry_limit => 10)
49
+ rescue Exception => e
50
+ if e.class.to_s.match %r'^Errno'
51
+ abort! "#{e.message}: (InstanceProfileCredentials)?"
52
+ else
53
+ case e.class.to_s
54
+ when /URI::InvalidURIError/
55
+ abort! "#{e.message}: HINT: Is the AWS SDK credentials configured correctly?"
56
+ else
57
+ abort! "#{e.message}"
58
+ end
59
+ end
60
+ end
61
+ end
62
+
63
+ def infer_params(section, params, strict = false)
64
+ case section
65
+ when /PrivateHostedZones/
66
+ unless params['type']
67
+ params['type'] = 'reverse'
68
+ end
69
+ unless params['hostedzone']
70
+ cidr = IPAddress(params['cidrblock'])
71
+ unless cidr.prefix.to_i % 8 == 0
72
+ bits =
73
+ prefix = (cidr.prefix.to_i - (cidr.prefix.to_i % 8))
74
+ i = 0
75
+ ip = []
76
+ while prefix > 0
77
+ ip << cidr[i]
78
+ prefix -= 8
79
+ i += 1
80
+ end
81
+
82
+ (bits/8..3).each { |i|
83
+ ip[i] = 0
84
+ }
85
+ params['cidrblock'] = ip.join('.') + '/' + bits.to_s
86
+ # params['cidrblock'].gsub!(%r'#{cidr.prefix}$', (cidr.prefix.to_i - (cidr.prefix.to_i % 8)).to_s)
87
+ cidr = IPAddress(params['cidrblock'])
88
+ end
89
+ params['hostedzone'] = "#{cidr.arpa}."
90
+ prefix = cidr.prefix.to_i
91
+ # Strip of leading octets from the ARPA
92
+ while prefix > 0 #and params['hostedzone'].match(%r/^0\./)
93
+ params['hostedzone'].gsub!(%r/^\d+\./, '')
94
+ prefix -= 8
95
+ end
96
+ end
97
+ when /ReverseDNSEntries/
98
+ unless params[:hostedzoneid]
99
+ unless params[:hostedzone]
100
+ if params[:hostedzonename]
101
+ params[:hostedzone] = params[:hostedzonename]
102
+ end
103
+ end
104
+ end
105
+ unless params[:name]
106
+ if params[:ipaddress]
107
+ ip = IPAddress(params[:ipaddress])
108
+ params[:name] = "#{ip.arpa}."
109
+ end
110
+ end
111
+ unless params[:resourcerecords] or (params[:value].nil? or params[:value].match(%r/\.$/))
112
+ params[:value] = "#{params[:value]}."
113
+ end
114
+ if params[:resourcerecords]
115
+ params[:resourcerecords].each{ |rr| rr[:value] = "#{rr[:value]}." unless rr[:value].match(%r/\.$/) }
116
+ end
117
+ else
118
+ end
119
+
120
+ params
121
+ end
122
+
123
+ def get_item_data(item, section, params)
124
+ # noinspection RubyStringKeysInHashInspection
125
+ hash = case section
126
+ when /PrivateHostedZones/
127
+ {
128
+ 'HostedZoneId' => item[:id],
129
+ 'HostedZone' => params[:hostedzone],
130
+ 'Name' => params[:name],
131
+ 'VpcId' => params[:vpcid],
132
+ 'Type' => params[:type],
133
+ 'TTL' => params[:ttl],
134
+ 'CIDRBlock' => params[:cidrblock],
135
+ 'Comment' => params[:comment],
136
+ }
137
+ when /ReverseDNSEntries/
138
+ {
139
+ 'Name' => item[:name],
140
+ 'Value' => item[:value],
141
+ 'IpAddress' => item[:ipaddress],
142
+ 'TTL' => item[:ttl],
143
+ 'Type' => params[:type],
144
+ 'Comment' => params[:comment],
145
+ 'HostedZoneId' => item[:hostedzoneid],
146
+ }
147
+ else
148
+ abort! "Unsupported resource type: #{section}"
149
+ end
150
+ data = {}
151
+ hash.each{ |k,v| data[k] = v unless v.nil? }
152
+ data
153
+ end
154
+
155
+ end
156
+ end
157
+ end
158
+ end
@@ -0,0 +1,6 @@
1
+ module CustomResource
2
+ module Route53
3
+ # customresource-route53 version
4
+ VERSION = '0.7.1'
5
+ end
6
+ end
@@ -0,0 +1,21 @@
1
+ 2015-04-09 12:08:14,188 [DEBUG] route53-privatehostedzone: Executing task for event {'StackId': 'arn:aws:cloudformation:us-east-1:228460459037:stack/stgc-002-10-176-dns-resources/985986e0-ded2-11e4-9aa1-50d5018a1236', 'ResponseURL': 'https://cloudformation-custom-resource-response-useast1.s3.amazonaws.com/arn%3Aaws%3Acloudformation%3Aus-east-1%3A228460459037%3Astack/stgc-002-10-176-dns-resources/985986e0-ded2-11e4-9aa1-50d5018a1236%7CPrivateHostedZone%7C73d1c5db-0697-4db9-97c7-075d3e8d1a6f?AWSAccessKeyId=AKIAJNXHFR7P7YGKLDPQ&Expires=1428602893&Signature=bS6VRe7LGeHEIsQkQ0TgJXnW0EY%3D', 'ResourceProperties': {'Comment': 'Reverse DNS for environment VPCs', 'VpcId': 'vpc-e1d58b84', 'Name': 'amplify-prd-228460459037-privatehostedzone', 'CidrBlock': '10.176.32.0/19', 'ServiceToken': 'arn:aws:sns:us-east-1:228460459037:customresource-228460459037-stgc', 'TTL': '300', 'Type': 'reverse'}, 'RequestType': 'Create', 'ServiceToken': 'arn:aws:sns:us-east-1:228460459037:customresource-228460459037-stgc', 'ResourceType': 'Custom::Route53_PrivateHostedZone', 'RequestId': '73d1c5db-0697-4db9-97c7-075d3e8d1a6f', 'LogicalResourceId': 'PrivateHostedZone'}
2
+ 2015-04-09 12:05:35,618 [DEBUG] Command route53-privatehostedzone output: {
3
+ "Status": "SUCCESS",
4
+ "PhysicalResourceId": "PrivateHostedZone-stgc-002-10-176-dns-resources-228460459037",
5
+ "StackId": "arn:aws:cloudformation:us-east-1:228460459037:stack/stgc-002-10-176-dns-resources/8853bcf0-de1b-11e4-8579-500150b34c18",
6
+ "RequestId": "fe8645bc-5dd9-42cd-a43b-e593e3b2b946",
7
+ "LogicalResourceId": "PrivateHostedZone",
8
+ "Data": {
9
+ "HostedZoneId": "/hostedzone/Z3TR1OD89TXUYM",
10
+ "HostedZone": "32.176.10.in-addr.arpa.",
11
+ "Name": "amplify-prd-228460459037-privatehostedzone",
12
+ "VpcId": "vpc-e1d58b84",
13
+ "Type": "reverse",
14
+ "TTL": "300",
15
+ "CIDRBlock": "10.176.32.0/19",
16
+ "Comment": "Reverse DNS for environment VPCs"
17
+ }
18
+ }
19
+ 2015-04-09 12:05:35,618 [DEBUG] Command route53-privatehostedzone stderr:
20
+ 2015-04-09 12:05:35,618 [DEBUG] Sending result: {'Status': u'SUCCESS', 'StackId': u'arn:aws:cloudformation:us-east-1:228460459037:stack/stgc-002-10-176-dns-resources/8853bcf0-de1b-11e4-8579-500150b34c18', 'PhysicalResourceId': u'PrivateHostedZone-stgc-002-10-176-dns-resources-228460459037', 'RequestId': u'fe8645bc-5dd9-42cd-a43b-e593e3b2b946', u'Data': {u'Comment': u'Reverse DNS for environment VPCs', u'VpcId': u'vpc-e1d58b84', u'Name': u'amplify-prd-228460459037-privatehostedzone', u'CIDRBlock': u'10.176.32.0/19', u'TTL': u'300', u'HostedZoneId': u'/hostedzone/Z3TR1OD89TXUYM', u'HostedZone': u'32.176.10.in-addr.arpa.', u'Type': u'reverse'}, 'LogicalResourceId': u'PrivateHostedZone'}
21
+ 2015-04-09 12:05:35,803 [INFO] CloudFormation successfully sent response SUCCESS
@@ -0,0 +1,23 @@
1
+ 2015-04-09 12:05:33,861 [DEBUG] route53-privatehostedzone: Executing task for event {'StackId': 'arn:aws:cloudformation:us-east-1:228460459037:stack/stgc-002-10-176-dns-resources/8853bcf0-de1b-11e4-8579-500150b34c18', 'ResponseURL': 'https://cloudformation-custom-resource-response-useast1.s3.amazonaws.com/arn%3Aaws%3Acloudformation%3Aus-east-1%3A228460459037%3Astack/stgc-002-10-176-dns-resources/8853bcf0-de1b-11e4-8579-500150b34c18%7CPrivateHostedZone%7Cfe8645bc-5dd9-42cd-a43b-e593e3b2b946?AWSAccessKeyId=AKIAJNXHFR7P7YGKLDPQ&Expires=1428602733&Signature=5pbL1ky8bymb%2FYs9k%2FdXQjeUuLI%3D', 'ResourceProperties': {'Comment': 'Reverse DNS for environment VPCs', 'VpcId': 'vpc-e1d58b84', 'Name': 'amplify-prd-228460459037-privatehostedzone', 'CidrBlock': '10.176.32.0/19', 'ServiceToken': 'arn:aws:sns:us-east-1:228460459037:customresource-228460459037-stgc', 'TTL': '300', 'Type': 'reverse'}, 'RequestType': 'Delete', 'ServiceToken': 'arn:aws:sns:us-east-1:228460459037:customresource-228460459037-stgc', 'ResourceType': 'Custom::Route53_PrivateHostedZone', 'PhysicalResourceId': 'PrivateHostedZone-stgc-002-10-176-dns-resources-228460459037', 'RequestId': 'fe8645bc-5dd9-42cd-a43b-e593e3b2b946', 'LogicalResourceId': 'PrivateHostedZone'}
2
+ 2015-04-09 12:05:33,876 [DEBUG] Checking queue https://sqs.us-east-1.amazonaws.com/228460459037/customresource-228460459037-stgc
3
+ 2015-04-09 12:05:35,618 [INFO] Command route53-privatehostedzone-Delete succeeded
4
+ 2015-04-09 12:05:35,618 [DEBUG] Command route53-privatehostedzone output: {
5
+ "Status": "SUCCESS",
6
+ "PhysicalResourceId": "PrivateHostedZone-stgc-002-10-176-dns-resources-228460459037",
7
+ "StackId": "arn:aws:cloudformation:us-east-1:228460459037:stack/stgc-002-10-176-dns-resources/8853bcf0-de1b-11e4-8579-500150b34c18",
8
+ "RequestId": "fe8645bc-5dd9-42cd-a43b-e593e3b2b946",
9
+ "LogicalResourceId": "PrivateHostedZone",
10
+ "Data": {
11
+ "HostedZoneId": "/hostedzone/Z3TR1OD89TXUYM",
12
+ "HostedZone": "32.176.10.in-addr.arpa.",
13
+ "Name": "amplify-prd-228460459037-privatehostedzone",
14
+ "VpcId": "vpc-e1d58b84",
15
+ "Type": "reverse",
16
+ "TTL": "300",
17
+ "CIDRBlock": "10.176.32.0/19",
18
+ "Comment": "Reverse DNS for environment VPCs"
19
+ }
20
+ }
21
+ 2015-04-09 12:05:35,618 [DEBUG] Command route53-privatehostedzone stderr:
22
+ 2015-04-09 12:05:35,618 [DEBUG] Sending result: {'Status': u'SUCCESS', 'StackId': u'arn:aws:cloudformation:us-east-1:228460459037:stack/stgc-002-10-176-dns-resources/8853bcf0-de1b-11e4-8579-500150b34c18', 'PhysicalResourceId': u'PrivateHostedZone-stgc-002-10-176-dns-resources-228460459037', 'RequestId': u'fe8645bc-5dd9-42cd-a43b-e593e3b2b946', u'Data': {u'Comment': u'Reverse DNS for environment VPCs', u'VpcId': u'vpc-e1d58b84', u'Name': u'amplify-prd-228460459037-privatehostedzone', u'CIDRBlock': u'10.176.32.0/19', u'TTL': u'300', u'HostedZoneId': u'/hostedzone/Z3TR1OD89TXUYM', u'HostedZone': u'32.176.10.in-addr.arpa.', u'Type': u'reverse'}, 'LogicalResourceId': u'PrivateHostedZone'}
23
+ 2015-04-09 12:05:35,803 [INFO] CloudFormation successfully sent response SUCCESS
@@ -0,0 +1,22 @@
1
+ 2014-12-15 12:56:50,088 [DEBUG] Trying to locate find resource for ('https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev', 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Custom::Route53_PrivateHostedZone')
2
+ 2014-12-15 12:56:50,196 [DEBUG] route53-privatehostedzone: Executing task for event {'StackId': 'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/8040e520-84d3-11e4-8bf6-50e24162947c', 'ResponseURL': 'https://cloudformation-custom-resource-response-useast1.s3.amazonaws.com/arn%3Aaws%3Acloudformation%3Aus-east-1%3A353746975747%3Astack/chefdev-000-route53/8040e520-84d3-11e4-8bf6-50e24162947c%7CPrivateHostedZone%7Ca61c50ac-e854-4f4f-aad3-55f4bb776538?AWSAccessKeyId=AKIAJNXHFR7P7YGKLDPQ&Expires=1418708065&Signature=WnhbXYBjMWJfXH98oJ4%2BK%2BpyBy8%3D', 'ResourceProperties': {'Comment': 'Reverse DNS for environment VPC', 'VpcId': 'vpc-3e980e56', 'Name': 'chefdev--353746975747-privatehostedzone', 'CidrBlock': '10.162.0.0/16', 'ServiceToken': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'TTL': '60', 'Type': 'reverse'}, 'RequestType': 'Update', 'OldResourceProperties': {'Comment': 'Reverse DNS for environment VPC', 'VpcId': 'vpc-3e980e56', 'Name': 'chefdev--353746975747-privatehostedzone', 'CidrBlock': '10.162.0.0/16', 'ServiceToken': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Type': 'reverse'}, 'ResourceType': 'Custom::Route53_PrivateHostedZone', 'PhysicalResourceId': 'PrivateHostedZone-chefdev-000-route53-353746975747', 'RequestId': 'a61c50ac-e854-4f4f-aad3-55f4bb776538', 'TopicArn': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'LogicalResourceId': 'PrivateHostedZone'}
3
+ 2014-12-15 12:58:53,340 [INFO] Command route53-privatehostedzone-Create succeeded
4
+ 2014-12-15 12:58:53,341 [DEBUG] Command route53-privatehostedzone output: {
5
+ "Status": "SUCCESS",
6
+ "PhysicalResourceId": "PrivateHostedZone-chefdev-000-route53-353746975747",
7
+ "StackId": "arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/b9cc6580-8483-11e4-91e4-5001dc3ed8d2",
8
+ "RequestId": "383eda45-6ec1-4169-91b3-1245ac15672b",
9
+ "LogicalResourceId": "PrivateHostedZone",
10
+ "Data": {
11
+ "HostedZoneId": "/hostedzone/ZMZGTA0TL5P89",
12
+ "HostedZone": "162.10.in-addr.arpa.",
13
+ "Name": "chefdev--353746975747-privatehostedzone",
14
+ "VpcId": "vpc-3e980e56",
15
+ "Type": "reverse",
16
+ "CIDRBlock": "10.162.0.0/16",
17
+ "Comment": "Reverse DNS for environment VPC"
18
+ }
19
+ }
20
+ 2014-12-15 12:58:53,341 [DEBUG] Command route53-privatehostedzone stderr:
21
+ 2014-12-15 12:58:53,341 [DEBUG] Sending result: {'Status': u'SUCCESS', 'StackId': u'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/b9cc6580-8483-11e4-91e4-5001dc3ed8d2', 'PhysicalResourceId': u'PrivateHostedZone-chefdev-000-route53-353746975747', 'RequestId': u'383eda45-6ec1-4169-91b3-1245ac15672b', u'Data': {u'Comment': u'Reverse DNS for environment VPC', u'VpcId': u'vpc-3e980e56', u'Name': u'chefdev--353746975747-privatehostedzone', u'Type': u'reverse', u'HostedZoneId': u'/hostedzone/ZMZGTA0TL5P89', u'HostedZone': u'162.10.in-addr.arpa.', u'CIDRBlock': u'10.162.0.0/16'}, 'LogicalResourceId': u'PrivateHostedZone'}
22
+ 2014-12-15 12:58:53,417 [INFO] CloudFormation successfully sent response SUCCESS
@@ -0,0 +1,8 @@
1
+ 2014-12-15 12:59:03,625 [DEBUG] Trying to locate find resource for ('https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev', 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Custom::Route53_ReverseDNSEntry')
2
+ 2014-12-15 12:59:03,720 [DEBUG] route53-reversednsentry: Executing task for event {'StackId': 'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/b9cc6580-8483-11e4-91e4-5001dc3ed8d2', 'ResponseURL': 'https://cloudformation-custom-resource-response-useast1.s3.amazonaws.com/arn%3Aaws%3Acloudformation%3Aus-east-1%3A353746975747%3Astack/chefdev-000-route53/b9cc6580-8483-11e4-91e4-5001dc3ed8d2%7CHUEPrivateRDNSRecord%7Cb9f7c939-43b6-44f9-a501-441973fde4ab?AWSAccessKeyId=AKIAJNXHFR7P7YGKLDPQ&Expires=1418673542&Signature=ZJwNnOBSwSBb%2BwE8b8sg4SEqTmU%3D', 'ResourceProperties': {'Comment': 'Reverse DNS record for HUEInstance', 'Value': 'hue.chefdev.poc.learning.amplify.com', 'ServiceToken': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'IpAddress': '10.162.4.136', 'TTL': '120', 'HostedZoneId': '/hostedzone/ZXMD0MPQP1SL2', 'Type': 'PTR'}, 'RequestType': 'Create', 'ResourceType': 'Custom::Route53_ReverseDNSEntry', 'RequestId': 'b9f7c939-43b6-44f9-a501-441973fde4ab', 'TopicArn': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'LogicalResourceId': 'HUEPrivateRDNSRecord'}
3
+ 2014-12-15 12:59:03,720 [DEBUG] Checking queue https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev
4
+ 2014-12-15 12:59:04,142 [INFO] Command route53-reversednsentry-Create succeeded
5
+ 2014-12-15 12:59:04,143 [DEBUG] Command route53-reversednsentry output:
6
+ 2014-12-15 12:59:04,143 [DEBUG] Command route53-reversednsentry stderr:
7
+ 2014-12-15 12:59:04,724 [DEBUG] Sending result: {'Status': 'SUCCESS', 'StackId': 'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/b9cc6580-8483-11e4-91e4-5001dc3ed8d2', 'PhysicalResourceId': 'fb65cca7-dde1-4240-a836-27bb55fa123d', 'RequestId': 'b9f7c939-43b6-44f9-a501-441973fde4ab', 'LogicalResourceId': 'HUEPrivateRDNSRecord'}
8
+ 2014-12-15 12:59:04,806 [INFO] CloudFormation successfully sent response SUCCESS
@@ -0,0 +1,9 @@
1
+ 2014-12-15 12:59:02,974 [DEBUG] Trying to locate find resource for ('https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev', 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Custom::Route53_ReverseDNSEntry')
2
+ 2014-12-15 12:59:03,100 [DEBUG] Checking queue https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev
3
+ 2014-12-15 12:59:03,104 [DEBUG] route53-reversednsentry: Executing task for event {'StackId': 'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/b9cc6580-8483-11e4-91e4-5001dc3ed8d2', 'ResponseURL': 'https://cloudformation-custom-resource-response-useast1.s3.amazonaws.com/arn%3Aaws%3Acloudformation%3Aus-east-1%3A353746975747%3Astack/chefdev-000-route53/b9cc6580-8483-11e4-91e4-5001dc3ed8d2%7CHUEReverseDNSEntry%7C61ecbeb0-8c68-444b-840c-14855eafa89f?AWSAccessKeyId=AKIAJNXHFR7P7YGKLDPQ&Expires=1418673542&Signature=UDzfwCPReClCtwwc3rgekNTB%2FEs%3D', 'ResourceProperties': {'Comment': 'Reverse DNS record for HUEInstance', 'Value': 'hue.chefdev.poc.learning.amplify.com', 'HostedZoneName': '162.10.in-addr.arpa.', 'ServiceToken': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'IpAddress': '10.162.5.117', 'TTL': '50', 'Type': 'PTR'}, 'RequestType': 'Create', 'ResourceType': 'Custom::Route53_ReverseDNSEntry', 'RequestId': '61ecbeb0-8c68-444b-840c-14855eafa89f', 'TopicArn': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'LogicalResourceId': 'HUEReverseDNSEntry'}
4
+ 2014-12-15 12:59:03,625 [DEBUG] Trying to locate find resource for ('https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev', 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Custom::Route53_ReverseDNSEntry')
5
+ 2014-12-15 12:59:04,142 [INFO] Command route53-reversednsentry-Create succeeded
6
+ 2014-12-15 12:59:04,143 [DEBUG] Command route53-reversednsentry output:
7
+ 2014-12-15 12:59:04,143 [DEBUG] Command route53-reversednsentry stderr:
8
+ 2014-12-15 12:59:04,144 [DEBUG] Sending result: {'Status': 'SUCCESS', 'StackId': 'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/b9cc6580-8483-11e4-91e4-5001dc3ed8d2', 'PhysicalResourceId': 'd1a8c40b-1809-4715-9e01-b2b1c4a75de2', 'RequestId': '61ecbeb0-8c68-444b-840c-14855eafa89f', 'LogicalResourceId': 'HUEReverseDNSEntry'}
9
+ 2014-12-15 12:59:04,221 [INFO] CloudFormation successfully sent response SUCCESS
@@ -0,0 +1,16 @@
1
+ 2014-12-15 14:09:50,623 [DEBUG] Trying to locate find resource for ('https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev', 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Custom::Route53_ReverseDNSEntry')
2
+ 2014-12-15 14:09:50,733 [DEBUG] route53-reversednsentry: Executing task for event {'StackId': 'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/c7c0d9b0-848c-11e4-a620-50d5017c76e0', 'ResponseURL': 'https://cloudformation-custom-resource-response-useast1.s3.amazonaws.com/arn%3Aaws%3Acloudformation%3Aus-east-1%3A353746975747%3Astack/chefdev-000-route53/c7c0d9b0-848c-11e4-a620-50d5017c76e0%7CHUEPrivateRDNSRecord%7Cc04d78e8-a3cb-41ca-ade3-2c784eab2610?AWSAccessKeyId=AKIAJNXHFR7P7YGKLDPQ&Expires=1418677790&Signature=tXXtoQmYQ%2FT3XR2o1D1DcVW63TQ%3D', 'ResourceProperties': {'Comment': 'Reverse DNS record for HUEInstance', 'IpAddress': '10.162.4.136', 'ServiceToken': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Value': 'hue.chefdev.poc.learning.amplify.com', 'TTL': '120', 'HostedZoneId': '/hostedzone/ZXMD0MPQP1SL2', 'Type': 'PTR'}, 'RequestType': 'Delete', 'ResourceType': 'Custom::Route53_ReverseDNSEntry', 'PhysicalResourceId': 'bafa626e-3399-4c91-a69b-e33c1a0d3730', 'RequestId': 'c04d78e8-a3cb-41ca-ade3-2c784eab2610', 'TopicArn': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'LogicalResourceId': 'HUEPrivateRDNSRecord'}
3
+ 2014-12-15 14:09:50,734 [DEBUG] Checking queue https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev
4
+ 2014-12-15 14:09:51,932 [INFO] Command route53-reversednsentry-Delete succeeded
5
+ 2014-12-15 14:09:51,933 [DEBUG] Command route53-reversednsentry output: {
6
+ "Status": "SUCCESS",
7
+ "PhysicalResourceId": "bafa626e-3399-4c91-a69b-e33c1a0d3730",
8
+ "StackId": "arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/c7c0d9b0-848c-11e4-a620-50d5017c76e0",
9
+ "RequestId": "c04d78e8-a3cb-41ca-ade3-2c784eab2610",
10
+ "LogicalResourceId": "HUEPrivateRDNSRecord",
11
+ "Data": {
12
+ }
13
+ }
14
+ 2014-12-15 14:09:51,933 [DEBUG] Command route53-reversednsentry stderr:
15
+ 2014-12-15 14:09:51,933 [DEBUG] Sending result: {'Status': u'SUCCESS', 'StackId': u'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/c7c0d9b0-848c-11e4-a620-50d5017c76e0', 'PhysicalResourceId': u'bafa626e-3399-4c91-a69b-e33c1a0d3730', 'RequestId': u'c04d78e8-a3cb-41ca-ade3-2c784eab2610', u'Data': {}, 'LogicalResourceId': u'HUEPrivateRDNSRecord'}
16
+ 2014-12-15 14:09:52,020 [INFO] CloudFormation successfully sent response SUCCESS
@@ -0,0 +1,17 @@
1
+ 2014-12-15 14:09:50,870 [DEBUG] Trying to locate find resource for ('https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev', 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Custom::Route53_ReverseDNSEntry')
2
+ 2014-12-15 14:09:50,987 [DEBUG] route53-reversednsentry: Executing task for event {'StackId': 'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/3b17af10-849c-11e4-80d7-5001a7da7436', 'ResponseURL': 'https://cloudformation-custom-resource-response-useast1.s3.amazonaws.com/arn%3Aaws%3Acloudformation%3Aus-east-1%3A353746975747%3Astack/chefdev-000-route53/3b17af10-849c-11e4-80d7-5001a7da7436%7CHUEReverseDNSEntry%7Cd3580fcb-ba42-45d4-91c5-23ac026e61f1?AWSAccessKeyId=AKIAJNXHFR7P7YGKLDPQ&Expires=1418687079&Signature=%2BXkx0sFq683pgqr0Z%2BRfi%2Bl72MI%3D', 'ResourceProperties': {'Comment': 'Reverse DNS record for HUEInstance', 'HostedZoneName': '162.10.in-addr.arpa.', 'IpAddress': '10.162.7.233', 'ServiceToken': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Value': 'hue.chefdev.poc.learning.amplify.com', 'TTL': '120', 'Type': 'PTR'}, 'RequestType': 'Delete', 'ResourceType': 'Custom::Route53_ReverseDNSEntry', 'PhysicalResourceId': 'HUEReverseDNSEntry-chefdev-000-route53-353746975747', 'RequestId': 'd3580fcb-ba42-45d4-91c5-23ac026e61f1', 'TopicArn': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'LogicalResourceId': 'HUEReverseDNSEntry'}
3
+ 2014-12-15 14:09:50,987 [DEBUG] route53-reversednsentry: Executing task for event {'StackId': 'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/c7c0d9b0-848c-11e4-a620-50d5017c76e0', 'ResponseURL': 'https://cloudformation-custom-resource-response-useast1.s3.amazonaws.com/arn%3Aaws%3Acloudformation%3Aus-east-1%3A353746975747%3Astack/chefdev-000-route53/c7c0d9b0-848c-11e4-a620-50d5017c76e0%7CHUEReverseDNSEntry%7C81a9b09f-8261-462b-aad1-08c917fd6f56?AWSAccessKeyId=AKIAJNXHFR7P7YGKLDPQ&Expires=1418677790&Signature=sXokTTkRB0VrI9DQDzgqTKQ48ag%3D', 'ResourceProperties': {'Comment': 'Reverse DNS record for HUEInstance', 'HostedZoneName': '162.10.in-addr.arpa.', 'IpAddress': '10.162.4.136', 'ServiceToken': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Value': 'hue.chefdev.poc.learning.amplify.com', 'TTL': '120', 'Type': 'PTR'}, 'RequestType': 'Delete', 'ResourceType': 'Custom::Route53_ReverseDNSEntry', 'PhysicalResourceId': 'c65c3d7f-144e-48e3-a589-b8db47081a93', 'RequestId': '81a9b09f-8261-462b-aad1-08c917fd6f56', 'TopicArn': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'LogicalResourceId': 'HUEReverseDNSEntry'}
4
+ 2014-12-15 14:09:50,999 [DEBUG] Checking queue https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev
5
+ 2014-12-15 14:09:52,174 [INFO] Command route53-reversednsentry-Delete succeeded
6
+ 2014-12-15 14:09:52,175 [DEBUG] Command route53-reversednsentry output: {
7
+ "Status": "SUCCESS",
8
+ "PhysicalResourceId": "c65c3d7f-144e-48e3-a589-b8db47081a93",
9
+ "StackId": "arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/c7c0d9b0-848c-11e4-a620-50d5017c76e0",
10
+ "RequestId": "81a9b09f-8261-462b-aad1-08c917fd6f56",
11
+ "LogicalResourceId": "HUEReverseDNSEntry",
12
+ "Data": {
13
+ }
14
+ }
15
+ 2014-12-15 14:09:52,175 [DEBUG] Command route53-reversednsentry stderr:
16
+ 2014-12-15 14:09:52,175 [DEBUG] Sending result: {'Status': u'SUCCESS', 'StackId': u'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/c7c0d9b0-848c-11e4-a620-50d5017c76e0', 'PhysicalResourceId': u'c65c3d7f-144e-48e3-a589-b8db47081a93', 'RequestId': u'81a9b09f-8261-462b-aad1-08c917fd6f56', u'Data': {}, 'LogicalResourceId': u'HUEReverseDNSEntry'}
17
+ 2014-12-15 14:09:52,256 [INFO] CloudFormation successfully sent response SUCCESS
@@ -0,0 +1,16 @@
1
+ 2014-12-15 14:09:50,870 [DEBUG] Trying to locate find resource for ('https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev', 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Custom::Route53_ReverseDNSEntry')
2
+ 2014-12-15 14:09:50,987 [DEBUG] route53-reversednsentry: Executing task for event {'StackId': 'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/38bf59d0-84e1-11e4-b8e9-5001b491380a', 'ResponseURL': 'https://cloudformation-custom-resource-response-useast1.s3.amazonaws.com/arn%3Aaws%3Acloudformation%3Aus-east-1%3A353746975747%3Astack/chefdev-000-route53/38bf59d0-84e1-11e4-b8e9-5001b491380a%7CHUEReverseDNSEntry%7C8c6bdaeb-91b3-45f0-a9e5-a1ced835fa42?AWSAccessKeyId=AKIAJNXHFR7P7YGKLDPQ&Expires=1418719564&Signature=NFOr%2BcBFgKdsxKpl7yKlK7EsS5Y%3D', 'ResourceProperties': {'Comment': 'Reverse DNS record for HUEInstance', 'HostedZoneName': '162.10.in-addr.arpa.', 'IpAddress': '10.162.5.117', 'ServiceToken': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'ResourceRecords': [{'Value': 'hue.chefdev.poc.learning.amplify.com'}], 'TTL': '50', 'Type': 'PTR'}, 'RequestType': 'Delete', 'ResourceType': 'Custom::Route53_ReverseDNSEntry', 'PhysicalResourceId': 'HUEReverseDNSEntry-chefdev-000-route53-353746975747', 'RequestId': '8c6bdaeb-91b3-45f0-a9e5-a1ced835fa42', 'TopicArn': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'LogicalResourceId': 'HUEReverseDNSEntry'}
3
+ 2014-12-15 14:09:50,999 [DEBUG] Checking queue https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev
4
+ 2014-12-15 14:09:52,174 [INFO] Command route53-reversednsentry-Delete succeeded
5
+ 2014-12-15 14:09:52,175 [DEBUG] Command route53-reversednsentry output: {
6
+ "Status": "SUCCESS",
7
+ "PhysicalResourceId": "c65c3d7f-144e-48e3-a589-b8db47081a93",
8
+ "StackId": "arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/c7c0d9b0-848c-11e4-a620-50d5017c76e0",
9
+ "RequestId": "81a9b09f-8261-462b-aad1-08c917fd6f56",
10
+ "LogicalResourceId": "HUEReverseDNSEntry",
11
+ "Data": {
12
+ }
13
+ }
14
+ 2014-12-15 14:09:52,175 [DEBUG] Command route53-reversednsentry stderr:
15
+ 2014-12-15 14:09:52,175 [DEBUG] Sending result: {'Status': u'SUCCESS', 'StackId': u'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/c7c0d9b0-848c-11e4-a620-50d5017c76e0', 'PhysicalResourceId': u'c65c3d7f-144e-48e3-a589-b8db47081a93', 'RequestId': u'81a9b09f-8261-462b-aad1-08c917fd6f56', u'Data': {}, 'LogicalResourceId': u'HUEReverseDNSEntry'}
16
+ 2014-12-15 14:09:52,256 [INFO] CloudFormation successfully sent response SUCCESS
@@ -0,0 +1,9 @@
1
+ 2014-12-15 12:59:02,974 [DEBUG] Trying to locate find resource for ('https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev', 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Custom::Route53_ReverseDNSEntry')
2
+ 2014-12-15 12:59:03,100 [DEBUG] Checking queue https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev
3
+ 2014-12-15 12:59:03,104 [DEBUG] route53-reversednsentry: Executing task for event {'StackId': 'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/38bf59d0-84e1-11e4-b8e9-5001b491380a', 'ResponseURL': 'https://cloudformation-custom-resource-response-useast1.s3.amazonaws.com/arn%3Aaws%3Acloudformation%3Aus-east-1%3A353746975747%3Astack/chefdev-000-route53/38bf59d0-84e1-11e4-b8e9-5001b491380a%7CHUEReverseDNSEntry%7C9afbe7f8-e996-4c20-8fa5-ed76c051bcc0?AWSAccessKeyId=AKIAJNXHFR7P7YGKLDPQ&Expires=1418714948&Signature=i9MCNBrJYh7yf8MoML1hKgyQqpE%3D', 'ResourceProperties': {'Comment': 'Reverse DNS record for HUEInstance', 'HostedZoneName': '162.10.in-addr.arpa.', 'IpAddress': '10.162.5.117', 'ServiceToken': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'ResourceRecords': [{'Value': 'hue.chefdev.poc.learning.amplify.com'}], 'TTL': '120', 'Type': 'PTR'}, 'RequestType': 'Update', 'OldResourceProperties': {'Comment': 'Reverse DNS record for HUEInstance', 'HostedZoneName': '162.10.in-addr.arpa.', 'IpAddress': '10.162.5.117', 'ServiceToken': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Value': 'hue.chefdev.poc.learning.amplify.com', 'TTL': '120', 'Type': 'PTR'}, 'ResourceType': 'Custom::Route53_ReverseDNSEntry', 'PhysicalResourceId': 'HUEReverseDNSEntry-chefdev-000-route53-353746975747', 'RequestId': '9afbe7f8-e996-4c20-8fa5-ed76c051bcc0', 'TopicArn': 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'LogicalResourceId': 'HUEReverseDNSEntry'}
4
+ 2014-12-15 12:59:03,625 [DEBUG] Trying to locate find resource for ('https://sqs.us-east-1.amazonaws.com/353746975747/customresource-353746975747-chefdev', 'arn:aws:sns:us-east-1:353746975747:customresource-353746975747-chefdev', 'Custom::Route53_ReverseDNSEntry')
5
+ 2014-12-15 12:59:04,142 [INFO] Command route53-reversednsentry-Create succeeded
6
+ 2014-12-15 12:59:04,143 [DEBUG] Command route53-reversednsentry output:
7
+ 2014-12-15 12:59:04,143 [DEBUG] Command route53-reversednsentry stderr:
8
+ 2014-12-15 12:59:04,144 [DEBUG] Sending result: {'Status': 'SUCCESS', 'StackId': 'arn:aws:cloudformation:us-east-1:353746975747:stack/chefdev-000-route53/b9cc6580-8483-11e4-91e4-5001dc3ed8d2', 'PhysicalResourceId': 'd1a8c40b-1809-4715-9e01-b2b1c4a75de2', 'RequestId': '61ecbeb0-8c68-444b-840c-14855eafa89f', 'LogicalResourceId': 'HUEReverseDNSEntry'}
9
+ 2014-12-15 12:59:04,221 [INFO] CloudFormation successfully sent response SUCCESS
@@ -0,0 +1,17 @@
1
+ #!/bin/bash
2
+
3
+ . ~/.rvm/scripts/rvm
4
+ rvm use ruby-2.1.5@customresource
5
+ git add -A
6
+ git commit -m "$1"
7
+ git push
8
+ rake build
9
+ mv pkg/customresource-route53-0.*.gem ../repo/gems/
10
+ cd ../repo
11
+ gem generate_index .
12
+ awsrc poc1
13
+
14
+ aws s3 sync ./ s3://amplify-learning-gems/ --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers --cache-control="max-age=0, no-cache"
15
+ aws s3 sync ./ s3://gems.dev.learning.amplify.com/ --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers --cache-control="max-age=0, no-cache"
16
+
17
+ cd -
metadata ADDED
@@ -0,0 +1,248 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: customresource-route53
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.7.1
5
+ platform: ruby
6
+ authors:
7
+ - Christo De Lange
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-06-08 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rubygems-tasks
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '0.2'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '0.2'
55
+ - !ruby/object:Gem::Dependency
56
+ name: thor
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '0.19'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '0.19'
69
+ - !ruby/object:Gem::Dependency
70
+ name: awesome_print
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.2'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.2'
83
+ - !ruby/object:Gem::Dependency
84
+ name: colorize
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 0.7.3
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 0.7.3
97
+ - !ruby/object:Gem::Dependency
98
+ name: aws-sdk-core
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '2.0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '2.0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: inifile
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '3'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '3'
125
+ - !ruby/object:Gem::Dependency
126
+ name: dldinternet-mixlib-thor-nocommands
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '0.2'
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '0.2'
139
+ - !ruby/object:Gem::Dependency
140
+ name: dldinternet-mixlib-logging
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '0.4'
146
+ type: :runtime
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '0.4'
153
+ - !ruby/object:Gem::Dependency
154
+ name: ipaddress
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '0.8'
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '0.8'
167
+ - !ruby/object:Gem::Dependency
168
+ name: customresource-base
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :runtime
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
181
+ description: An action command for aws-cfn-resource-bridge to implement CloudFormation
182
+ custom resources
183
+ email: rubygems@dldinternet.com
184
+ executables:
185
+ - cfn-customresource-route53
186
+ extensions: []
187
+ extra_rdoc_files: []
188
+ files:
189
+ - ".bundle/config"
190
+ - ".rakeTasks"
191
+ - ChangeLog.md
192
+ - Gemfile
193
+ - Gemfile.lock
194
+ - LICENSE
195
+ - LICENSE.txt
196
+ - README.md
197
+ - Rakefile
198
+ - bin/cfn-customresource-route53
199
+ - customresource-route53.gemspec
200
+ - features/.gitkeep
201
+ - features/customresource-route53.feature
202
+ - features/step_definitions/.gitkeep
203
+ - features/step_definitions/customresource-route53_steps.rb
204
+ - lib/customresource/route53.rb
205
+ - lib/customresource/route53/cli.rb
206
+ - lib/customresource/route53/mixins/actions.rb
207
+ - lib/customresource/route53/mixins/cli.rb
208
+ - lib/customresource/route53/version.rb
209
+ - tests/route53.privatehostedzone.create.log
210
+ - tests/route53.privatehostedzone.delete.log
211
+ - tests/route53.privatehostedzone.update.log
212
+ - tests/route53.reversednsentry.create.id.log
213
+ - tests/route53.reversednsentry.create.name.log
214
+ - tests/route53.reversednsentry.delete.id.log
215
+ - tests/route53.reversednsentry.delete.name.log
216
+ - tests/route53.reversednsentry.delete.name.rr.log
217
+ - tests/route53.reversednsentry.update.name.log
218
+ - tests/update.sh
219
+ homepage: https://rubygems.org/gems/customresource-route53
220
+ licenses:
221
+ - Apachev2
222
+ metadata: {}
223
+ post_install_message:
224
+ rdoc_options: []
225
+ require_paths:
226
+ - lib
227
+ required_ruby_version: !ruby/object:Gem::Requirement
228
+ requirements:
229
+ - - ">="
230
+ - !ruby/object:Gem::Version
231
+ version: '0'
232
+ required_rubygems_version: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ">="
235
+ - !ruby/object:Gem::Version
236
+ version: '0'
237
+ requirements: []
238
+ rubyforge_project:
239
+ rubygems_version: 2.4.3
240
+ signing_key:
241
+ specification_version: 4
242
+ summary: An action command for aws-cfn-resource-bridge to implement CloudFormation
243
+ custom resources
244
+ test_files:
245
+ - features/.gitkeep
246
+ - features/customresource-route53.feature
247
+ - features/step_definitions/.gitkeep
248
+ - features/step_definitions/customresource-route53_steps.rb