firespring_dev_commands 2.2.6 → 2.5.0.pre.alpha.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.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/firespring_dev_commands/audit/report.rb +2 -9
- data/lib/firespring_dev_commands/aws/cloudformation.rb +3 -10
- data/lib/firespring_dev_commands/common.rb +2 -22
- data/lib/firespring_dev_commands/docker/status.rb +0 -20
- data/lib/firespring_dev_commands/docker.rb +16 -86
- data/lib/firespring_dev_commands/eol/aws.rb +2 -10
- data/lib/firespring_dev_commands/eol.rb +2 -22
- data/lib/firespring_dev_commands/git.rb +24 -37
- data/lib/firespring_dev_commands/jira/issue.rb +1 -3
- data/lib/firespring_dev_commands/node.rb +1 -1
- data/lib/firespring_dev_commands/php/audit.rb +0 -4
- data/lib/firespring_dev_commands/php.rb +12 -28
- data/lib/firespring_dev_commands/platform.rb +31 -38
- data/lib/firespring_dev_commands/ruby.rb +3 -6
- data/lib/firespring_dev_commands/target_process/query.rb +4 -30
- data/lib/firespring_dev_commands/target_process/release.rb +1 -1
- data/lib/firespring_dev_commands/target_process/team_assignment.rb +1 -1
- data/lib/firespring_dev_commands/target_process/user.rb +1 -13
- data/lib/firespring_dev_commands/target_process/user_story.rb +1 -1
- data/lib/firespring_dev_commands/target_process/user_story_history.rb +1 -1
- data/lib/firespring_dev_commands/target_process.rb +7 -24
- data/lib/firespring_dev_commands/templates/aws.rb +6 -33
- data/lib/firespring_dev_commands/templates/base_interface.rb +2 -2
- data/lib/firespring_dev_commands/templates/ci.rb +11 -16
- data/lib/firespring_dev_commands/templates/docker/application.rb +2 -2
- data/lib/firespring_dev_commands/templates/docker/node/application.rb +5 -55
- data/lib/firespring_dev_commands/templates/docker/php/application.rb +16 -58
- data/lib/firespring_dev_commands/templates/docker/ruby/application.rb +5 -54
- data/lib/firespring_dev_commands/templates/eol.rb +2 -9
- data/lib/firespring_dev_commands/templates/git.rb +0 -165
- data/lib/firespring_dev_commands/version.rb +1 -1
- data/lib/firespring_dev_commands.rb +1 -1
- metadata +37 -113
- data/lib/firespring_dev_commands/aws/route53.rb +0 -139
- data/lib/firespring_dev_commands/bloom_growth/rock.rb +0 -34
- data/lib/firespring_dev_commands/bloom_growth/seat.rb +0 -16
- data/lib/firespring_dev_commands/bloom_growth/user.rb +0 -43
- data/lib/firespring_dev_commands/bloom_growth.rb +0 -132
- data/lib/firespring_dev_commands/certificate.rb +0 -59
- data/lib/firespring_dev_commands/coverage/base.rb +0 -16
- data/lib/firespring_dev_commands/coverage/cobertura.rb +0 -86
- data/lib/firespring_dev_commands/coverage/none.rb +0 -21
- data/lib/firespring_dev_commands/dns/resource.rb +0 -83
- data/lib/firespring_dev_commands/docker/desktop.rb +0 -61
- data/lib/firespring_dev_commands/eol/node.rb +0 -42
- data/lib/firespring_dev_commands/eol/php.rb +0 -50
- data/lib/firespring_dev_commands/eol/ruby.rb +0 -42
- data/lib/firespring_dev_commands/jira/parent.rb +0 -19
- data/lib/firespring_dev_commands/os.rb +0 -35
- data/lib/firespring_dev_commands/port.rb +0 -24
- data/lib/firespring_dev_commands/target_process/time.rb +0 -32
- data/lib/firespring_dev_commands/templates/aws/services/route53.rb +0 -111
- data/lib/firespring_dev_commands/templates/certificate.rb +0 -41
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: firespring_dev_commands
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.5.0.pre.alpha.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Firespring
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-11-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -16,168 +16,154 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 7.1.
|
19
|
+
version: 7.1.1
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 7.1.
|
26
|
+
version: 7.1.1
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: aws-sdk-cloudformation
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 1.
|
33
|
+
version: 1.83.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 1.
|
40
|
+
version: 1.83.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: aws-sdk-codepipeline
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 1.
|
47
|
+
version: 1.59.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 1.
|
54
|
+
version: 1.59.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: aws-sdk-ecr
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 1.
|
61
|
+
version: 1.61.0
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 1.
|
68
|
+
version: 1.61.0
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: aws-sdk-elasticache
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 1.
|
75
|
+
version: 1.88.0
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 1.
|
82
|
+
version: 1.88.0
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: aws-sdk-lambda
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 1.
|
89
|
+
version: 1.101.0
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 1.
|
96
|
+
version: 1.101.0
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: aws-sdk-opensearchservice
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 1.
|
103
|
+
version: 1.24.0
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: 1.
|
110
|
+
version: 1.24.0
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: aws-sdk-rds
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
115
|
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: 1.
|
117
|
+
version: 1.183.0
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: 1.
|
125
|
-
- !ruby/object:Gem::Dependency
|
126
|
-
name: aws-sdk-route53
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
128
|
-
requirements:
|
129
|
-
- - "~>"
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
version: 1.87.0
|
132
|
-
type: :runtime
|
133
|
-
prerelease: false
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
135
|
-
requirements:
|
136
|
-
- - "~>"
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: 1.87.0
|
124
|
+
version: 1.183.0
|
139
125
|
- !ruby/object:Gem::Dependency
|
140
126
|
name: aws-sdk-s3
|
141
127
|
requirement: !ruby/object:Gem::Requirement
|
142
128
|
requirements:
|
143
129
|
- - "~>"
|
144
130
|
- !ruby/object:Gem::Version
|
145
|
-
version: 1.
|
131
|
+
version: 1.127.0
|
146
132
|
type: :runtime
|
147
133
|
prerelease: false
|
148
134
|
version_requirements: !ruby/object:Gem::Requirement
|
149
135
|
requirements:
|
150
136
|
- - "~>"
|
151
137
|
- !ruby/object:Gem::Version
|
152
|
-
version: 1.
|
138
|
+
version: 1.127.0
|
153
139
|
- !ruby/object:Gem::Dependency
|
154
140
|
name: aws-sdk-ssm
|
155
141
|
requirement: !ruby/object:Gem::Requirement
|
156
142
|
requirements:
|
157
143
|
- - "~>"
|
158
144
|
- !ruby/object:Gem::Version
|
159
|
-
version: 1.
|
145
|
+
version: 1.154.0
|
160
146
|
type: :runtime
|
161
147
|
prerelease: false
|
162
148
|
version_requirements: !ruby/object:Gem::Requirement
|
163
149
|
requirements:
|
164
150
|
- - "~>"
|
165
151
|
- !ruby/object:Gem::Version
|
166
|
-
version: 1.
|
152
|
+
version: 1.154.0
|
167
153
|
- !ruby/object:Gem::Dependency
|
168
154
|
name: aws-sdk-sts
|
169
155
|
requirement: !ruby/object:Gem::Requirement
|
170
156
|
requirements:
|
171
157
|
- - "~>"
|
172
158
|
- !ruby/object:Gem::Version
|
173
|
-
version: 1.
|
159
|
+
version: 1.10.0
|
174
160
|
type: :runtime
|
175
161
|
prerelease: false
|
176
162
|
version_requirements: !ruby/object:Gem::Requirement
|
177
163
|
requirements:
|
178
164
|
- - "~>"
|
179
165
|
- !ruby/object:Gem::Version
|
180
|
-
version: 1.
|
166
|
+
version: 1.10.0
|
181
167
|
- !ruby/object:Gem::Dependency
|
182
168
|
name: colorize
|
183
169
|
requirement: !ruby/object:Gem::Requirement
|
@@ -220,34 +206,6 @@ dependencies:
|
|
220
206
|
- - "~>"
|
221
207
|
- !ruby/object:Gem::Version
|
222
208
|
version: 2.8.1
|
223
|
-
- !ruby/object:Gem::Dependency
|
224
|
-
name: excon
|
225
|
-
requirement: !ruby/object:Gem::Requirement
|
226
|
-
requirements:
|
227
|
-
- - '='
|
228
|
-
- !ruby/object:Gem::Version
|
229
|
-
version: 0.110.0
|
230
|
-
type: :runtime
|
231
|
-
prerelease: false
|
232
|
-
version_requirements: !ruby/object:Gem::Requirement
|
233
|
-
requirements:
|
234
|
-
- - '='
|
235
|
-
- !ruby/object:Gem::Version
|
236
|
-
version: 0.110.0
|
237
|
-
- !ruby/object:Gem::Dependency
|
238
|
-
name: faraday-retry
|
239
|
-
requirement: !ruby/object:Gem::Requirement
|
240
|
-
requirements:
|
241
|
-
- - "~>"
|
242
|
-
- !ruby/object:Gem::Version
|
243
|
-
version: '2.0'
|
244
|
-
type: :runtime
|
245
|
-
prerelease: false
|
246
|
-
version_requirements: !ruby/object:Gem::Requirement
|
247
|
-
requirements:
|
248
|
-
- - "~>"
|
249
|
-
- !ruby/object:Gem::Version
|
250
|
-
version: '2.0'
|
251
209
|
- !ruby/object:Gem::Dependency
|
252
210
|
name: git
|
253
211
|
requirement: !ruby/object:Gem::Requirement
|
@@ -291,75 +249,61 @@ dependencies:
|
|
291
249
|
- !ruby/object:Gem::Version
|
292
250
|
version: 2.3.0
|
293
251
|
- !ruby/object:Gem::Dependency
|
294
|
-
name:
|
252
|
+
name: libxml-ruby
|
295
253
|
requirement: !ruby/object:Gem::Requirement
|
296
254
|
requirements:
|
297
|
-
- -
|
298
|
-
- !ruby/object:Gem::Version
|
299
|
-
version: '8.1'
|
300
|
-
type: :runtime
|
301
|
-
prerelease: false
|
302
|
-
version_requirements: !ruby/object:Gem::Requirement
|
303
|
-
requirements:
|
304
|
-
- - "~>"
|
305
|
-
- !ruby/object:Gem::Version
|
306
|
-
version: '8.1'
|
307
|
-
- !ruby/object:Gem::Dependency
|
308
|
-
name: ox
|
309
|
-
requirement: !ruby/object:Gem::Requirement
|
310
|
-
requirements:
|
311
|
-
- - "~>"
|
255
|
+
- - '='
|
312
256
|
- !ruby/object:Gem::Version
|
313
|
-
version:
|
257
|
+
version: 4.1.1
|
314
258
|
type: :runtime
|
315
259
|
prerelease: false
|
316
260
|
version_requirements: !ruby/object:Gem::Requirement
|
317
261
|
requirements:
|
318
|
-
- -
|
262
|
+
- - '='
|
319
263
|
- !ruby/object:Gem::Version
|
320
|
-
version:
|
264
|
+
version: 4.1.1
|
321
265
|
- !ruby/object:Gem::Dependency
|
322
266
|
name: public_suffix
|
323
267
|
requirement: !ruby/object:Gem::Requirement
|
324
268
|
requirements:
|
325
269
|
- - '='
|
326
270
|
- !ruby/object:Gem::Version
|
327
|
-
version: 5.0.
|
271
|
+
version: 5.0.1
|
328
272
|
type: :runtime
|
329
273
|
prerelease: false
|
330
274
|
version_requirements: !ruby/object:Gem::Requirement
|
331
275
|
requirements:
|
332
276
|
- - '='
|
333
277
|
- !ruby/object:Gem::Version
|
334
|
-
version: 5.0.
|
278
|
+
version: 5.0.1
|
335
279
|
- !ruby/object:Gem::Dependency
|
336
280
|
name: rake
|
337
281
|
requirement: !ruby/object:Gem::Requirement
|
338
282
|
requirements:
|
339
283
|
- - "~>"
|
340
284
|
- !ruby/object:Gem::Version
|
341
|
-
version: 13.
|
285
|
+
version: 13.0.6
|
342
286
|
type: :runtime
|
343
287
|
prerelease: false
|
344
288
|
version_requirements: !ruby/object:Gem::Requirement
|
345
289
|
requirements:
|
346
290
|
- - "~>"
|
347
291
|
- !ruby/object:Gem::Version
|
348
|
-
version: 13.
|
292
|
+
version: 13.0.6
|
349
293
|
- !ruby/object:Gem::Dependency
|
350
294
|
name: slack-ruby-client
|
351
295
|
requirement: !ruby/object:Gem::Requirement
|
352
296
|
requirements:
|
353
297
|
- - "~>"
|
354
298
|
- !ruby/object:Gem::Version
|
355
|
-
version: 2.
|
299
|
+
version: 2.1.0
|
356
300
|
type: :runtime
|
357
301
|
prerelease: false
|
358
302
|
version_requirements: !ruby/object:Gem::Requirement
|
359
303
|
requirements:
|
360
304
|
- - "~>"
|
361
305
|
- !ruby/object:Gem::Version
|
362
|
-
version: 2.
|
306
|
+
version: 2.1.0
|
363
307
|
description: Ruby library for creating/maintaining your development environment
|
364
308
|
email: opensource@firespring.com
|
365
309
|
executables: []
|
@@ -382,50 +326,33 @@ files:
|
|
382
326
|
- lib/firespring_dev_commands/aws/login.rb
|
383
327
|
- lib/firespring_dev_commands/aws/parameter.rb
|
384
328
|
- lib/firespring_dev_commands/aws/profile.rb
|
385
|
-
- lib/firespring_dev_commands/aws/route53.rb
|
386
329
|
- lib/firespring_dev_commands/aws/s3.rb
|
387
|
-
- lib/firespring_dev_commands/bloom_growth.rb
|
388
|
-
- lib/firespring_dev_commands/bloom_growth/rock.rb
|
389
|
-
- lib/firespring_dev_commands/bloom_growth/seat.rb
|
390
|
-
- lib/firespring_dev_commands/bloom_growth/user.rb
|
391
330
|
- lib/firespring_dev_commands/boolean.rb
|
392
|
-
- lib/firespring_dev_commands/certificate.rb
|
393
331
|
- lib/firespring_dev_commands/common.rb
|
394
|
-
- lib/firespring_dev_commands/coverage/base.rb
|
395
|
-
- lib/firespring_dev_commands/coverage/cobertura.rb
|
396
|
-
- lib/firespring_dev_commands/coverage/none.rb
|
397
332
|
- lib/firespring_dev_commands/daterange.rb
|
398
|
-
- lib/firespring_dev_commands/dns/resource.rb
|
399
333
|
- lib/firespring_dev_commands/docker.rb
|
400
334
|
- lib/firespring_dev_commands/docker/compose.rb
|
401
|
-
- lib/firespring_dev_commands/docker/desktop.rb
|
402
335
|
- lib/firespring_dev_commands/docker/status.rb
|
403
336
|
- lib/firespring_dev_commands/dotenv.rb
|
404
337
|
- lib/firespring_dev_commands/env.rb
|
405
338
|
- lib/firespring_dev_commands/eol.rb
|
406
339
|
- lib/firespring_dev_commands/eol/aws.rb
|
407
|
-
- lib/firespring_dev_commands/eol/node.rb
|
408
|
-
- lib/firespring_dev_commands/eol/php.rb
|
409
340
|
- lib/firespring_dev_commands/eol/product_version.rb
|
410
|
-
- lib/firespring_dev_commands/eol/ruby.rb
|
411
341
|
- lib/firespring_dev_commands/git.rb
|
412
342
|
- lib/firespring_dev_commands/git/info.rb
|
413
343
|
- lib/firespring_dev_commands/jira.rb
|
414
344
|
- lib/firespring_dev_commands/jira/histories.rb
|
415
345
|
- lib/firespring_dev_commands/jira/history.rb
|
416
346
|
- lib/firespring_dev_commands/jira/issue.rb
|
417
|
-
- lib/firespring_dev_commands/jira/parent.rb
|
418
347
|
- lib/firespring_dev_commands/jira/project.rb
|
419
348
|
- lib/firespring_dev_commands/jira/user.rb
|
420
349
|
- lib/firespring_dev_commands/jira/user/type.rb
|
421
350
|
- lib/firespring_dev_commands/logger.rb
|
422
351
|
- lib/firespring_dev_commands/node.rb
|
423
352
|
- lib/firespring_dev_commands/node/audit.rb
|
424
|
-
- lib/firespring_dev_commands/os.rb
|
425
353
|
- lib/firespring_dev_commands/php.rb
|
426
354
|
- lib/firespring_dev_commands/php/audit.rb
|
427
355
|
- lib/firespring_dev_commands/platform.rb
|
428
|
-
- lib/firespring_dev_commands/port.rb
|
429
356
|
- lib/firespring_dev_commands/rake.rb
|
430
357
|
- lib/firespring_dev_commands/ruby.rb
|
431
358
|
- lib/firespring_dev_commands/ruby/audit.rb
|
@@ -441,14 +368,11 @@ files:
|
|
441
368
|
- lib/firespring_dev_commands/target_process/release.rb
|
442
369
|
- lib/firespring_dev_commands/target_process/team.rb
|
443
370
|
- lib/firespring_dev_commands/target_process/team_assignment.rb
|
444
|
-
- lib/firespring_dev_commands/target_process/time.rb
|
445
371
|
- lib/firespring_dev_commands/target_process/user.rb
|
446
372
|
- lib/firespring_dev_commands/target_process/user_story.rb
|
447
373
|
- lib/firespring_dev_commands/target_process/user_story_history.rb
|
448
374
|
- lib/firespring_dev_commands/templates/aws.rb
|
449
|
-
- lib/firespring_dev_commands/templates/aws/services/route53.rb
|
450
375
|
- lib/firespring_dev_commands/templates/base_interface.rb
|
451
|
-
- lib/firespring_dev_commands/templates/certificate.rb
|
452
376
|
- lib/firespring_dev_commands/templates/ci.rb
|
453
377
|
- lib/firespring_dev_commands/templates/config.rb
|
454
378
|
- lib/firespring_dev_commands/templates/docker/application.rb
|
@@ -475,9 +399,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
475
399
|
version: '3.1'
|
476
400
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
477
401
|
requirements:
|
478
|
-
- - "
|
402
|
+
- - ">"
|
479
403
|
- !ruby/object:Gem::Version
|
480
|
-
version:
|
404
|
+
version: 1.3.1
|
481
405
|
requirements: []
|
482
406
|
rubygems_version: 3.4.10
|
483
407
|
signing_key:
|
@@ -1,139 +0,0 @@
|
|
1
|
-
require 'aws-sdk-route53'
|
2
|
-
|
3
|
-
module Dev
|
4
|
-
class Aws
|
5
|
-
# Class for performing Route53 functions
|
6
|
-
class Route53
|
7
|
-
attr_reader :client
|
8
|
-
|
9
|
-
def initialize(domains = nil)
|
10
|
-
@client = ::Aws::Route53::Client.new
|
11
|
-
@domains = Array(domains || [])
|
12
|
-
end
|
13
|
-
|
14
|
-
def zones(&)
|
15
|
-
if @domains.empty?
|
16
|
-
each_zone(&)
|
17
|
-
else
|
18
|
-
each_zone_by_domains(&)
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
private def each_zone
|
23
|
-
Dev::Aws.each_page(client, :list_hosted_zones) do |response|
|
24
|
-
response.hosted_zones&.each do |hosted_zone|
|
25
|
-
next if hosted_zone.config.private_zone
|
26
|
-
|
27
|
-
yield hosted_zone
|
28
|
-
end
|
29
|
-
rescue ::Aws::Route53::Errors::Throttling
|
30
|
-
sleep(1)
|
31
|
-
retry
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
private def each_zone_by_domains(&)
|
36
|
-
@domains.each do |domain|
|
37
|
-
response = client.list_hosted_zones_by_name({dns_name: domain})
|
38
|
-
|
39
|
-
# The 'list_hosted_zones_by_name' returns fuzzy matches (so "foo.com" would return both "bar.foo.com" and "foo.com"
|
40
|
-
# So we are only selecting domains that match exactly since that's what we really want here
|
41
|
-
targets = response.hosted_zones.select { |it| it.name.chomp('.') == domain }
|
42
|
-
raise "The #{domain} hosted zone not found." if targets.empty?
|
43
|
-
|
44
|
-
targets.each(&)
|
45
|
-
rescue ::Aws::Route53::Errors::Throttling
|
46
|
-
sleep(1)
|
47
|
-
retry
|
48
|
-
end
|
49
|
-
end
|
50
|
-
|
51
|
-
private def ip_address(domain)
|
52
|
-
Addrinfo.ip(domain.to_s.strip)&.ip_address
|
53
|
-
rescue SocketError
|
54
|
-
"Unable to resolve domain: #{domain}"
|
55
|
-
end
|
56
|
-
|
57
|
-
private def target_config_id(zone_id)
|
58
|
-
client.list_query_logging_configs(
|
59
|
-
hosted_zone_id: zone_id,
|
60
|
-
max_results: '1'
|
61
|
-
).query_logging_configs&.first&.id
|
62
|
-
end
|
63
|
-
|
64
|
-
# Get the hosted zone details for the zone id
|
65
|
-
private def details(zone_id)
|
66
|
-
response = client.get_hosted_zone(id: zone_id)
|
67
|
-
[response.hosted_zone, response.delegation_set]
|
68
|
-
end
|
69
|
-
|
70
|
-
def list_zone_details
|
71
|
-
zones do |zone|
|
72
|
-
puts
|
73
|
-
zone_details, delegation_set = details(zone.id)
|
74
|
-
dns_resource = Dev::Dns::Resource.new(zone_details.name)
|
75
|
-
|
76
|
-
puts "#{zone_details.name.chomp('.').light_white} (#{zone_details.id}):"
|
77
|
-
puts format(' %-50s %s', 'Delegation Set:', delegation_set.id)
|
78
|
-
puts format(' %-50s %s', 'Delegation Defined Nameservers:', delegation_set.name_servers.sort.join(', '))
|
79
|
-
puts format(' %-50s %s', 'DNS Reported Nameservers:', dns_resource.recursive_nameserver_lookup.sort.join(', '))
|
80
|
-
puts format(' %-50s %s', 'DNS Reported Nameserver IPs:', dns_resource.recursive_nameserver_lookup.sort.map { |it| dns_resource.recursive_a_lookup(it) }.join(', '))
|
81
|
-
puts format(' %-50s %s', 'Domain Apex IP Resolution:', dns_resource.recursive_a_lookup.sort.join(', '))
|
82
|
-
rescue ::Aws::Route53::Errors::Throttling
|
83
|
-
sleep(1)
|
84
|
-
retry
|
85
|
-
end
|
86
|
-
puts
|
87
|
-
end
|
88
|
-
|
89
|
-
def list_query_configs
|
90
|
-
zones do |zone|
|
91
|
-
target_config_id = target_config_id(zone.id)
|
92
|
-
message = if target_config_id
|
93
|
-
"Config\t=>\t#{target_config_id}".colorize(:green)
|
94
|
-
else
|
95
|
-
'No query logging config assigned.'.colorize(:red)
|
96
|
-
end
|
97
|
-
puts format('%-50s => %s', zone.name, message)
|
98
|
-
rescue ::Aws::Route53::Errors::Throttling
|
99
|
-
sleep(1)
|
100
|
-
retry
|
101
|
-
end
|
102
|
-
end
|
103
|
-
|
104
|
-
def activate_query_logging(log_group)
|
105
|
-
zones do |zone|
|
106
|
-
response = client.create_query_logging_config(
|
107
|
-
hosted_zone_id: zone.id,
|
108
|
-
cloud_watch_logs_log_group_arn: log_group
|
109
|
-
)
|
110
|
-
puts format('%-50s => %s', zone.id, response.location)
|
111
|
-
rescue ::Aws::Route53::Errors::Throttling
|
112
|
-
sleep(1)
|
113
|
-
retry
|
114
|
-
rescue ::Aws::Route53::Errors::ServiceError => e
|
115
|
-
raise "Error: #{e.message}" unless e.instance_of?(::Aws::Route53::Errors::QueryLoggingConfigAlreadyExists)
|
116
|
-
|
117
|
-
puts format('%-50s => %s', zone.id, e.message)
|
118
|
-
end
|
119
|
-
end
|
120
|
-
|
121
|
-
def deactivate_query_logging
|
122
|
-
zones do |zone|
|
123
|
-
target_config_id = target_config_id(zone.id)
|
124
|
-
if target_config_id
|
125
|
-
client.delete_query_logging_config(
|
126
|
-
id: target_config_id
|
127
|
-
)
|
128
|
-
puts format('%-50s => %s', zone.id, 'Query logging config removed.'.colorize(:green))
|
129
|
-
else
|
130
|
-
puts format('%-50s => %s', zone.id, 'No query logging config assigned.'.colorize(:red))
|
131
|
-
end
|
132
|
-
rescue ::Aws::Route53::Errors::Throttling
|
133
|
-
sleep(1)
|
134
|
-
retry
|
135
|
-
end
|
136
|
-
end
|
137
|
-
end
|
138
|
-
end
|
139
|
-
end
|
@@ -1,34 +0,0 @@
|
|
1
|
-
module Dev
|
2
|
-
class BloomGrowth
|
3
|
-
# Class containing rock information
|
4
|
-
class Rock
|
5
|
-
attr_accessor :data, :id, :type, :name, :owner, :complete, :completion_id, :created, :due
|
6
|
-
attr_reader :state
|
7
|
-
|
8
|
-
def initialize(data)
|
9
|
-
@data = data
|
10
|
-
@id = data['Id']
|
11
|
-
@type = data['Type']
|
12
|
-
@name = data['Name'].to_s.strip
|
13
|
-
@owner = User.new(data['Owner']) if data['Owner']
|
14
|
-
@complete = data['Complete']
|
15
|
-
@completion_id = data['Completion']
|
16
|
-
@created = Time.parse(data['CreateTime']) if data['CreateTime']
|
17
|
-
@due = Time.parse(data['DueDate']) if data['DueDate']
|
18
|
-
@archived = data['Archived']
|
19
|
-
end
|
20
|
-
|
21
|
-
# Convert the completion_id bloom growth gives us into a text version
|
22
|
-
def state
|
23
|
-
case completion_id
|
24
|
-
when 0
|
25
|
-
'Off Track'
|
26
|
-
when 1
|
27
|
-
'On Track'
|
28
|
-
when 2
|
29
|
-
'Complete'
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
@@ -1,16 +0,0 @@
|
|
1
|
-
module Dev
|
2
|
-
class BloomGrowth
|
3
|
-
# Class containing seat information
|
4
|
-
class Seat
|
5
|
-
attr_accessor :data, :id, :type, :name
|
6
|
-
|
7
|
-
def initialize(data)
|
8
|
-
@data = data
|
9
|
-
position = data.dig('Group', 'Position')
|
10
|
-
@id = position&.fetch('Id')
|
11
|
-
@type = position&.fetch('Type')
|
12
|
-
@name = position&.fetch('Name').to_s.strip
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
@@ -1,43 +0,0 @@
|
|
1
|
-
module Dev
|
2
|
-
class BloomGrowth
|
3
|
-
# Class containing user information
|
4
|
-
class User
|
5
|
-
attr_accessor :data, :id, :type, :name, :rocks, :direct_reports, :seats
|
6
|
-
|
7
|
-
def initialize(data)
|
8
|
-
@data = data
|
9
|
-
@id = data['Id']
|
10
|
-
@type = data['Type']
|
11
|
-
@name = data['Name'].to_s.strip
|
12
|
-
@rocks = nil
|
13
|
-
@direct_reports = nil
|
14
|
-
@seats = nil
|
15
|
-
end
|
16
|
-
|
17
|
-
def rocks
|
18
|
-
@rocks ||= [].tap do |ary|
|
19
|
-
Dev::BloomGrowth.new.get("/api/v1/rocks/user/#{id}") do |data|
|
20
|
-
ary << Rock.new(data)
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
def direct_reports
|
26
|
-
@direct_reports ||= [].tap do |ary|
|
27
|
-
Dev::BloomGrowth.new.get("/api/v1/users/#{id}/directreports") do |data|
|
28
|
-
ary << User.new(data)
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
def seats
|
34
|
-
@seats ||= [].tap do |ary|
|
35
|
-
Dev::BloomGrowth.new.get("/api/v1/users/#{id}/seats") do |data|
|
36
|
-
ary << Seat.new(data)
|
37
|
-
puts ary.last.inspect
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|