sparkle_formation 3.0.32 → 3.0.34

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/LICENSE +1 -1
  4. data/lib/sparkle_formation/provider/terraform.rb +9 -1
  5. data/lib/sparkle_formation/resources.rb +7 -0
  6. data/lib/sparkle_formation/resources/aws.rb +18 -24
  7. data/lib/sparkle_formation/resources/aws_resources.json +2107 -186
  8. data/lib/sparkle_formation/resources/azure_resources.json +16497 -5796
  9. data/lib/sparkle_formation/resources/heat_resources.json +190 -4
  10. data/lib/sparkle_formation/resources/terraform.rb +16 -0
  11. data/lib/sparkle_formation/resources/terraform_account_resources.json +24 -0
  12. data/lib/sparkle_formation/resources/terraform_acme_resources.json +59 -0
  13. data/lib/sparkle_formation/resources/terraform_alicloud_resources.json +4023 -0
  14. data/lib/sparkle_formation/resources/terraform_arukas_resources.json +49 -0
  15. data/lib/sparkle_formation/resources/terraform_aws_resources.json +15899 -0
  16. data/lib/sparkle_formation/resources/terraform_azure_resources.json +572 -0
  17. data/lib/sparkle_formation/resources/terraform_azurerm_resources.json +6632 -0
  18. data/lib/sparkle_formation/resources/terraform_azurestack_resources.json +1231 -0
  19. data/lib/sparkle_formation/resources/terraform_bigip_resources.json +1004 -0
  20. data/lib/sparkle_formation/resources/terraform_bitbucket_resources.json +123 -0
  21. data/lib/sparkle_formation/resources/terraform_brightbox_resources.json +283 -0
  22. data/lib/sparkle_formation/resources/terraform_bucket_resources.json +24 -0
  23. data/lib/sparkle_formation/resources/terraform_chef_resources.json +132 -0
  24. data/lib/sparkle_formation/resources/terraform_circonus_resources.json +406 -0
  25. data/lib/sparkle_formation/resources/terraform_clc_resources.json +222 -0
  26. data/lib/sparkle_formation/resources/terraform_cloudflare_resources.json +638 -0
  27. data/lib/sparkle_formation/resources/terraform_cloudscale_resources.json +96 -0
  28. data/lib/sparkle_formation/resources/terraform_cloudstack_resources.json +888 -0
  29. data/lib/sparkle_formation/resources/terraform_cobbler_resources.json +589 -0
  30. data/lib/sparkle_formation/resources/terraform_consul_resources.json +297 -0
  31. data/lib/sparkle_formation/resources/terraform_databases_resources.json +14 -0
  32. data/lib/sparkle_formation/resources/terraform_datadog_resources.json +385 -0
  33. data/lib/sparkle_formation/resources/terraform_digitalocean_resources.json +408 -0
  34. data/lib/sparkle_formation/resources/terraform_dme_resources.json +29 -0
  35. data/lib/sparkle_formation/resources/terraform_dns_resources.json +137 -0
  36. data/lib/sparkle_formation/resources/terraform_dnsimple_resources.json +39 -0
  37. data/lib/sparkle_formation/resources/terraform_docker_resources.json +266 -0
  38. data/lib/sparkle_formation/resources/terraform_dyn_resources.json +34 -0
  39. data/lib/sparkle_formation/resources/terraform_fastly_resources.json +124 -0
  40. data/lib/sparkle_formation/resources/terraform_flexibleengine_resources.json +2915 -0
  41. data/lib/sparkle_formation/resources/terraform_github_resources.json +449 -0
  42. data/lib/sparkle_formation/resources/terraform_gitlab_resources.json +267 -0
  43. data/lib/sparkle_formation/resources/terraform_google_resources.json +2485 -0
  44. data/lib/sparkle_formation/resources/terraform_grafana_resources.json +135 -0
  45. data/lib/sparkle_formation/resources/terraform_hcloud_resources.json +201 -0
  46. data/lib/sparkle_formation/resources/terraform_heroku_resources.json +447 -0
  47. data/lib/sparkle_formation/resources/terraform_huaweicloud_resources.json +2508 -0
  48. data/lib/sparkle_formation/resources/terraform_icinga2_resources.json +100 -0
  49. data/lib/sparkle_formation/resources/terraform_influxdb_resources.json +68 -0
  50. data/lib/sparkle_formation/resources/terraform_kubernetes_resources.json +277 -0
  51. data/lib/sparkle_formation/resources/terraform_librato_resources.json +167 -0
  52. data/lib/sparkle_formation/resources/terraform_linode_resources.json +252 -0
  53. data/lib/sparkle_formation/resources/terraform_local_resources.json +19 -0
  54. data/lib/sparkle_formation/resources/terraform_logentries_resources.json +56 -0
  55. data/lib/sparkle_formation/resources/terraform_logicmonitor_resources.json +140 -0
  56. data/lib/sparkle_formation/resources/terraform_mailgun_resources.json +29 -0
  57. data/lib/sparkle_formation/resources/terraform_mysql_resources.json +143 -0
  58. data/lib/sparkle_formation/resources/terraform_netlify_resources.json +90 -0
  59. data/lib/sparkle_formation/resources/terraform_newrelic_resources.json +298 -0
  60. data/lib/sparkle_formation/resources/terraform_nomad_resources.json +149 -0
  61. data/lib/sparkle_formation/resources/terraform_ns1_resources.json +320 -0
  62. data/lib/sparkle_formation/resources/terraform_nsxt_resources.json +813 -0
  63. data/lib/sparkle_formation/resources/terraform_nutanix_resources.json +596 -0
  64. data/lib/sparkle_formation/resources/terraform_oci_resources.json +3567 -0
  65. data/lib/sparkle_formation/resources/terraform_oneandone_resources.json +221 -0
  66. data/lib/sparkle_formation/resources/terraform_opc_resources.json +1224 -0
  67. data/lib/sparkle_formation/resources/terraform_openstack_resources.json +3293 -0
  68. data/lib/sparkle_formation/resources/terraform_opentelekomcloud_resources.json +2881 -0
  69. data/lib/sparkle_formation/resources/terraform_opsgenie_resources.json +56 -0
  70. data/lib/sparkle_formation/resources/terraform_oraclepaas_resources.json +551 -0
  71. data/lib/sparkle_formation/resources/terraform_ovh_resources.json +541 -0
  72. data/lib/sparkle_formation/resources/terraform_packet_resources.json +295 -0
  73. data/lib/sparkle_formation/resources/terraform_pagerduty_resources.json +329 -0
  74. data/lib/sparkle_formation/resources/terraform_panos_resources.json +2686 -0
  75. data/lib/sparkle_formation/resources/terraform_postgresql_resources.json +181 -0
  76. data/lib/sparkle_formation/resources/terraform_powerdns_resources.json +34 -0
  77. data/lib/sparkle_formation/resources/terraform_profitbricks_resources.json +523 -0
  78. data/lib/sparkle_formation/resources/terraform_projects_resources.json +24 -0
  79. data/lib/sparkle_formation/resources/terraform_rabbitmq_resources.json +161 -0
  80. data/lib/sparkle_formation/resources/terraform_rancher_resources.json +310 -0
  81. data/lib/sparkle_formation/resources/terraform_random_resources.json +167 -0
  82. data/lib/sparkle_formation/resources/terraform_rightscale_resources.json +796 -0
  83. data/lib/sparkle_formation/resources/terraform_ring_resources.json +24 -0
  84. data/lib/sparkle_formation/resources/terraform_rundeck_resources.json +175 -0
  85. data/lib/sparkle_formation/resources/terraform_runscope_resources.json +167 -0
  86. data/lib/sparkle_formation/resources/terraform_scaleway_resources.json +267 -0
  87. data/lib/sparkle_formation/resources/terraform_ses_resources.json +24 -0
  88. data/lib/sparkle_formation/resources/terraform_sfn_resources.json +36 -0
  89. data/lib/sparkle_formation/resources/terraform_softlayer_resources.json +136 -0
  90. data/lib/sparkle_formation/resources/terraform_spotinst_resources.json +237 -0
  91. data/lib/sparkle_formation/resources/terraform_statuscake_resources.json +159 -0
  92. data/lib/sparkle_formation/resources/terraform_subnetwork_resources.json +24 -0
  93. data/lib/sparkle_formation/resources/terraform_telefonicaopencloud_resources.json +1558 -0
  94. data/lib/sparkle_formation/resources/terraform_template_resources.json +24 -0
  95. data/lib/sparkle_formation/resources/terraform_tencentcloud_resources.json +656 -0
  96. data/lib/sparkle_formation/resources/terraform_tfe_resources.json +306 -0
  97. data/lib/sparkle_formation/resources/terraform_tls_resources.json +120 -0
  98. data/lib/sparkle_formation/resources/terraform_triton_resources.json +291 -0
  99. data/lib/sparkle_formation/resources/terraform_ultradns_resources.json +222 -0
  100. data/lib/sparkle_formation/resources/terraform_vault_resources.json +1414 -0
  101. data/lib/sparkle_formation/resources/terraform_vcd_resources.json +311 -0
  102. data/lib/sparkle_formation/resources/terraform_vsphere_resources.json +1076 -0
  103. data/lib/sparkle_formation/sparkle_attribute/aws.rb +78 -32
  104. data/lib/sparkle_formation/sparkle_attribute/terraform.rb +24 -5
  105. data/lib/sparkle_formation/sparkle_formation.rb +18 -4
  106. data/lib/sparkle_formation/version.rb +1 -1
  107. data/sparkle_formation.gemspec +23 -23
  108. metadata +97 -5
@@ -8,6 +8,33 @@ class SparkleFormation
8
8
  # AWS specific helper implementations
9
9
  module Aws
10
10
 
11
+ # CIDR generator
12
+ #
13
+ # @param ipblock [String] CIDR address block
14
+ # @param count [Integer] Number of CIDRs to generate
15
+ # @param cidrbits [Integer] Number of subnet bits for the CIDR
16
+ # @return [Hash]
17
+ def _cf_cidr(ipblock, count, cidrbits)
18
+ {"Fn::Cidr" => [ipblock, count, cidrbits]}
19
+ end
20
+
21
+ alias_method :_cidr, :_cf_cidr
22
+ alias_method :cidr!, :_cf_cidr
23
+
24
+ # Transform generator
25
+ #
26
+ # @param name [String] name of transformation
27
+ # @param parameters [Hash] transformation parameters
28
+ # @return [Hash]
29
+ def _cf_transform(name, parameters)
30
+ __t_stringish(name)
31
+ __t_hashish(parameters)
32
+ {"Fn::Transform" => {"Name" => name, "Parameters" => parameters}}
33
+ end
34
+
35
+ alias_method :_transform, :_cf_transform
36
+ alias_method :transform!, :_cf_transform
37
+
11
38
  # @overload _cf_join(*args, opts={})
12
39
  # Fn::Join generator
13
40
  # @param args [String, Hash] list of items to join
@@ -24,6 +51,7 @@ class SparkleFormation
24
51
  {"Fn::Join" => [options[:options][:delimiter] || "", *args]}
25
52
  end
26
53
 
54
+ alias_method :_join, :_cf_join
27
55
  alias_method :join!, :_cf_join
28
56
 
29
57
  # Split generator
@@ -37,6 +65,7 @@ class SparkleFormation
37
65
  {"Fn::Split" => [delimiter, string]}
38
66
  end
39
67
 
68
+ alias_method :_split, :_cf_split
40
69
  alias_method :split!, :_cf_split
41
70
 
42
71
  # Sub generator
@@ -170,18 +199,20 @@ class SparkleFormation
170
199
  {"Fn::Select" => [index, item]}
171
200
  end
172
201
 
202
+ alias_method :_select, :_cf_select
173
203
  alias_method :select!, :_cf_select
174
204
 
175
205
  # Condition generator
176
206
  #
177
207
  # @param name [String, Symbol] symbol will be processed
178
208
  # @return [Hash]
179
- def _condition(name)
209
+ def _cf_condition(name)
180
210
  __t_stringish(name)
181
211
  {"Condition" => __attribute_key(name)}
182
212
  end
183
213
 
184
- alias_method :condition!, :_condition
214
+ alias_method :_condition, :_cf_condition
215
+ alias_method :condition!, :_cf_condition
185
216
 
186
217
  # Condition setter
187
218
  #
@@ -189,11 +220,12 @@ class SparkleFormation
189
220
  # @return [SparkleStruct]
190
221
  # @note this is used to set a {"Condition" => "Name"} into the
191
222
  # current context, generally the top level of a resource
192
- def _on_condition(name)
223
+ def _cf_on_condition(name)
193
224
  _set(*_condition(name).to_a.flatten)
194
225
  end
195
226
 
196
- alias_method :on_condition!, :_on_condition
227
+ alias_method :_on_condition, :_cf_on_condition
228
+ alias_method :on_condition!, :_cf_on_condition
197
229
 
198
230
  # Fn::If generator
199
231
  #
@@ -201,11 +233,12 @@ class SparkleFormation
201
233
  # @param true_value [Object] item to be used when true
202
234
  # @param false_value [Object] item to be used when false
203
235
  # @return [Hash]
204
- def _if(cond, true_value, false_value)
236
+ def _cf_if(cond, true_value, false_value)
205
237
  {"Fn::If" => _array(__attribute_key(cond), true_value, false_value)}
206
238
  end
207
239
 
208
- alias_method :if!, :_if
240
+ alias_method :_if, :_cf_if
241
+ alias_method :if!, :_cf_if
209
242
 
210
243
  # Fn::And generator
211
244
  #
@@ -213,7 +246,7 @@ class SparkleFormation
213
246
  # @return [Hash]
214
247
  # @note symbols will be processed and set as condition. strings
215
248
  # will be set as condition directly. procs will be evaluated
216
- def _and(*args)
249
+ def _cf_and(*args)
217
250
  {
218
251
  "Fn::And" => _array(
219
252
  *args.map { |v|
@@ -227,24 +260,26 @@ class SparkleFormation
227
260
  }
228
261
  end
229
262
 
230
- alias_method :and!, :_and
263
+ alias_method :_and, :_cf_and
264
+ alias_method :and!, :_cf_and
231
265
 
232
266
  # Fn::Equals generator
233
267
  #
234
268
  # @param v1 [Object]
235
269
  # @param v2 [Object]
236
270
  # @return [Hash]
237
- def _equals(v1, v2)
271
+ def _cf_equals(v1, v2)
238
272
  {"Fn::Equals" => _array(v1, v2)}
239
273
  end
240
274
 
241
- alias_method :equals!, :_equals
275
+ alias_method :_equals, :_cf_equals
276
+ alias_method :equals!, :_cf_equals
242
277
 
243
278
  # Fn::Not generator
244
279
  #
245
280
  # @param arg [Object]
246
281
  # @return [Hash]
247
- def _not(arg)
282
+ def _cf_not(arg)
248
283
  if arg.is_a?(String) || arg.is_a?(Symbol)
249
284
  arg = _condition(arg)
250
285
  else
@@ -253,14 +288,15 @@ class SparkleFormation
253
288
  {"Fn::Not" => [arg]}
254
289
  end
255
290
 
256
- alias_method :not!, :_not
291
+ alias_method :_not, :_cf_not
292
+ alias_method :not!, :_cf_not
257
293
 
258
294
  # Fn::Or generator
259
295
  #
260
296
  # @param v1 [Object]
261
297
  # @param v2 [Object]
262
298
  # @return [Hash]
263
- def _or(*args)
299
+ def _cf_or(*args)
264
300
  {
265
301
  "Fn::Or" => _array(
266
302
  *args.map { |v|
@@ -274,61 +310,68 @@ class SparkleFormation
274
310
  }
275
311
  end
276
312
 
277
- alias_method :or!, :_or
313
+ alias_method :_or, :_cf_or
314
+ alias_method :or!, :_cf_or
278
315
 
279
316
  # No value generator
280
317
  #
281
318
  # @return [Hash]
282
- def _no_value
319
+ def _cf_no_value
283
320
  _ref("AWS::NoValue")
284
321
  end
285
322
 
286
- alias_method :no_value!, :_no_value
323
+ alias_method :_no_value, :_cf_no_value
324
+ alias_method :no_value!, :_cf_no_value
287
325
 
288
326
  # Region generator
289
327
  #
290
328
  # @return [Hash]
291
- def _region
329
+ def _cf_region
292
330
  _ref("AWS::Region")
293
331
  end
294
332
 
295
- alias_method :region!, :_region
333
+ alias_method :_region, :_cf_region
334
+ alias_method :region!, :_cf_region
296
335
 
297
336
  # Notification ARNs generator
298
337
  #
299
338
  # @return [Hash]
300
- def _notification_arns
339
+ def _cf_notification_arns
301
340
  _ref("AWS::NotificationARNs")
302
341
  end
303
342
 
304
- alias_method :notification_arns!, :_notification_arns
343
+ alias_method :_notification_arns, :_cf_notification_arns
344
+ alias_method :notification_arns!, :_cf_notification_arns
305
345
 
306
346
  # Account ID generator
307
347
  #
308
348
  # @return [Hash]
309
- def _account_id
349
+ def _cf_account_id
310
350
  _ref("AWS::AccountId")
311
351
  end
312
352
 
313
- alias_method :account_id!, :_account_id
353
+ alias_method :_account_id, :_cf_account_id
354
+ alias_method :account_id!, :_cf_account_id
314
355
 
315
356
  # Stack ID generator
316
357
  #
317
358
  # @return [Hash]
318
- def _stack_id
359
+ def _cf_stack_id
319
360
  _ref("AWS::StackId")
320
361
  end
321
362
 
322
- alias_method :stack_id!, :_stack_id
363
+ alias_method :_stack_id, :_cf_stack_id
364
+ alias_method :stack_id!, :_cf_stack_id
323
365
 
324
366
  # Stack name generator
325
367
  #
326
368
  # @return [Hash]
327
- def _stack_name
369
+ def _cf_stack_name
328
370
  _ref("AWS::StackName")
329
371
  end
330
372
 
331
- alias_method :stack_name!, :_stack_name
373
+ alias_method :_stack_name, :_cf_stack_name
374
+ alias_method :stack_name!, :_cf_stack_name
332
375
 
333
376
  # Resource dependency generator
334
377
  # @overload _depends_on(resource_name)
@@ -339,21 +382,23 @@ class SparkleFormation
339
382
  # @param resource_names [Array<String, Symbol>] list of logical resource names
340
383
  # @return [Array<String>]
341
384
  # @note this will directly modify the struct at its current context to inject depends on structure
342
- def _depends_on(*args)
385
+ def _cf_depends_on(*args)
343
386
  _set("DependsOn", [args].flatten.compact.map { |s| __attribute_key(s) })
344
387
  end
345
388
 
346
- alias_method :depends_on!, :_depends_on
389
+ alias_method :_depends_on, :_cf_depends_on
390
+ alias_method :depends_on!, :_cf_depends_on
347
391
 
348
392
  # Reference output value from nested stack
349
393
  #
350
394
  # @param stack_name [String, Symbol] logical resource name of stack
351
395
  # @apram output_name [String, Symbol] stack output name
352
- def _stack_output(stack_name, output_name)
396
+ def _cf_stack_output(stack_name, output_name)
353
397
  _cf_attr(_process_key(stack_name), "Outputs.#{__attribute_key(output_name)}")
354
398
  end
355
399
 
356
- alias_method :stack_output!, :_stack_output
400
+ alias_method :_stack_output, :_cf_stack_output
401
+ alias_method :stack_output!, :_cf_stack_output
357
402
 
358
403
  # @return [TrueClass, FalseClass] resource can be tagged
359
404
  def taggable?
@@ -371,7 +416,7 @@ class SparkleFormation
371
416
  #
372
417
  # @param hash [Hash] Key/value pair tags
373
418
  # @return [SparkleStruct]
374
- def _tags(hash)
419
+ def _cf_tags(hash)
375
420
  __t_hashish(hash)
376
421
  _set("Tags",
377
422
  hash.map { |k, v|
@@ -379,7 +424,8 @@ class SparkleFormation
379
424
  })
380
425
  end
381
426
 
382
- alias_method :tags!, :_tags
427
+ alias_method :_tags, :_cf_tags
428
+ alias_method :tags!, :_cf_tags
383
429
  end
384
430
  end
385
431
  end
@@ -118,13 +118,32 @@ class SparkleFormation
118
118
  alias_method "#{f_name}!".to_sym, "_#{f_name}".to_sym
119
119
  end
120
120
 
121
+ # Lookup resource based on name and provide formatted
122
+ # reference to the resource with type included.
123
+ #
124
+ # @param name [String, Symbol] resource name
125
+ # @return [String] resource name
121
126
  def __resource_lookup(name)
122
- resource = root!.resources[name]
123
- if resource.nil?
124
- name
125
- else
126
- "#{resource.type}.#{name}"
127
+ return name.to_s if name.to_s.include?(".")
128
+ if root!.key?(:resources) && root!.resources.key?(name)
129
+ resource = root!.resources[name]
130
+ if resource.key?(:type)
131
+ return "#{resource.type}.#{name}"
132
+ end
133
+ end
134
+ if root!.key?(:resource)
135
+ types = root!.resource._keys
136
+ matches = types.find_all do |type|
137
+ root!.resource._set(type).key?(name)
138
+ end
139
+ if matches.size > 1
140
+ raise ArgumentError.new "Non-unique resource name. Multiple type " \
141
+ "matches for resource `#{name}`"
142
+ elsif matches.size == 1
143
+ return "#{matches.first}.#{name}"
144
+ end
127
145
  end
146
+ name.to_s
128
147
  end
129
148
 
130
149
  # Resource dependency generator
@@ -18,6 +18,10 @@ class SparkleFormation
18
18
  DEFAULT_STACK_RESOURCE = "AWS::CloudFormation::Stack"
19
19
  # @return [Array<String>] collection of valid stack resource types
20
20
  VALID_STACK_RESOURCES = [DEFAULT_STACK_RESOURCE]
21
+ # @return [Hash] name mappings for providers used in lookups (resources/sparkles)
22
+ PROVIDER_MAPPINGS = Smash.new(
23
+ :open_stack => :heat,
24
+ ).freeze
21
25
 
22
26
  class << self
23
27
  include SparkleFormation::Utils::TypeCheckers
@@ -707,10 +711,7 @@ class SparkleFormation
707
711
  else
708
712
  struct_class = SparkleStruct
709
713
  end
710
- if Resources.const_defined?(camel(provider))
711
- @provider_resources = Resources.const_get(camel(provider))
712
- provider_resources.load!
713
- end
714
+ load_resources!
714
715
  compiled = struct_class.new
715
716
  compiled._set_self(self)
716
717
  compiled._struct_class = struct_class
@@ -994,4 +995,17 @@ class SparkleFormation
994
995
  end
995
996
  MultiJson.dump(compile.dump!, *args)
996
997
  end
998
+
999
+ protected
1000
+
1001
+ # Load provider specific resources handling
1002
+ def load_resources!
1003
+ if provider && @provider_resources.nil?
1004
+ provider_name = camel(PROVIDER_MAPPINGS.fetch(provider, provider))
1005
+ if Resources.const_defined?(provider_name)
1006
+ @provider_resources = Resources.const_get(provider_name)
1007
+ provider_resources.load!
1008
+ end
1009
+ end
1010
+ end
997
1011
  end
@@ -1,5 +1,5 @@
1
1
  # Unicorns and rainbows
2
2
  class SparkleFormation
3
3
  # Current library version
4
- VERSION = Gem::Version.new("3.0.32")
4
+ VERSION = Gem::Version.new("3.0.34")
5
5
  end
@@ -1,26 +1,26 @@
1
- $LOAD_PATH.unshift File.expand_path(File.dirname(__FILE__)) + '/lib/'
2
- require 'sparkle_formation/version'
1
+ $LOAD_PATH.unshift File.expand_path(File.dirname(__FILE__)) + "/lib/"
2
+ require "sparkle_formation/version"
3
3
  Gem::Specification.new do |s|
4
- s.name = 'sparkle_formation'
4
+ s.name = "sparkle_formation"
5
5
  s.version = SparkleFormation::VERSION.version
6
- s.summary = 'Orchestration Template Generator'
7
- s.author = 'Chris Roberts'
8
- s.email = 'chrisroberts.code@gmail.com'
9
- s.homepage = 'http://github.com/heavywater/sparkle_formation'
10
- s.description = 'Ruby DSL for programmatic orchestration API template generation'
11
- s.license = 'Apache-2.0'
12
- s.require_path = 'lib'
13
- s.required_ruby_version = '>= 2.1'
14
- s.add_runtime_dependency 'attribute_struct', '>= 0.3.5', '< 0.5'
15
- s.add_runtime_dependency 'multi_json'
16
- s.add_runtime_dependency 'bogo'
17
- s.add_development_dependency 'minitest'
18
- s.add_development_dependency 'rspec', '~> 3.5'
19
- s.add_development_dependency 'rake', '~> 10'
20
- s.add_development_dependency 'yard'
21
- s.add_development_dependency 'rufo', '~> 0.3.0'
22
- s.add_development_dependency 'redcarpet', '~> 2.0'
23
- s.add_development_dependency 'github-markup'
24
- s.executables << 'generate_sparkle_docs'
25
- s.files = Dir['{lib,docs}/**/*'] + %w(sparkle_formation.gemspec README.md CHANGELOG.md LICENSE)
6
+ s.summary = "Orchestration Template Generator"
7
+ s.author = "Chris Roberts"
8
+ s.email = "chrisroberts.code@gmail.com"
9
+ s.homepage = "http://github.com/sparkleformation/sparkle_formation"
10
+ s.description = "Ruby DSL for programmatic orchestration API template generation"
11
+ s.license = "Apache-2.0"
12
+ s.require_path = "lib"
13
+ s.required_ruby_version = ">= 2.1"
14
+ s.add_runtime_dependency "attribute_struct", ">= 0.4.3", "< 0.5"
15
+ s.add_runtime_dependency "multi_json"
16
+ s.add_runtime_dependency "bogo"
17
+ s.add_development_dependency "minitest"
18
+ s.add_development_dependency "rspec", "~> 3.5"
19
+ s.add_development_dependency "rake", "~> 10"
20
+ s.add_development_dependency "yard"
21
+ s.add_development_dependency "rufo", "~> 0.3.0"
22
+ s.add_development_dependency "redcarpet", "~> 2.0"
23
+ s.add_development_dependency "github-markup"
24
+ s.executables << "generate_sparkle_docs"
25
+ s.files = Dir["{lib,docs}/**/*"] + %w(sparkle_formation.gemspec README.md CHANGELOG.md LICENSE)
26
26
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sparkle_formation
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.32
4
+ version: 3.0.34
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Roberts
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-06-06 00:00:00.000000000 Z
11
+ date: 2018-11-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: attribute_struct
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.3.5
19
+ version: 0.4.3
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: '0.5'
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 0.3.5
29
+ version: 0.4.3
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: '0.5'
@@ -210,7 +210,99 @@ files:
210
210
  - lib/sparkle_formation/resources/rackspace.rb
211
211
  - lib/sparkle_formation/resources/rackspace_resources.json
212
212
  - lib/sparkle_formation/resources/terraform.rb
213
+ - lib/sparkle_formation/resources/terraform_account_resources.json
214
+ - lib/sparkle_formation/resources/terraform_acme_resources.json
215
+ - lib/sparkle_formation/resources/terraform_alicloud_resources.json
216
+ - lib/sparkle_formation/resources/terraform_arukas_resources.json
217
+ - lib/sparkle_formation/resources/terraform_aws_resources.json
218
+ - lib/sparkle_formation/resources/terraform_azure_resources.json
219
+ - lib/sparkle_formation/resources/terraform_azurerm_resources.json
220
+ - lib/sparkle_formation/resources/terraform_azurestack_resources.json
221
+ - lib/sparkle_formation/resources/terraform_bigip_resources.json
222
+ - lib/sparkle_formation/resources/terraform_bitbucket_resources.json
223
+ - lib/sparkle_formation/resources/terraform_brightbox_resources.json
224
+ - lib/sparkle_formation/resources/terraform_bucket_resources.json
225
+ - lib/sparkle_formation/resources/terraform_chef_resources.json
226
+ - lib/sparkle_formation/resources/terraform_circonus_resources.json
227
+ - lib/sparkle_formation/resources/terraform_clc_resources.json
228
+ - lib/sparkle_formation/resources/terraform_cloudflare_resources.json
229
+ - lib/sparkle_formation/resources/terraform_cloudscale_resources.json
230
+ - lib/sparkle_formation/resources/terraform_cloudstack_resources.json
231
+ - lib/sparkle_formation/resources/terraform_cobbler_resources.json
232
+ - lib/sparkle_formation/resources/terraform_consul_resources.json
233
+ - lib/sparkle_formation/resources/terraform_databases_resources.json
234
+ - lib/sparkle_formation/resources/terraform_datadog_resources.json
235
+ - lib/sparkle_formation/resources/terraform_digitalocean_resources.json
236
+ - lib/sparkle_formation/resources/terraform_dme_resources.json
237
+ - lib/sparkle_formation/resources/terraform_dns_resources.json
238
+ - lib/sparkle_formation/resources/terraform_dnsimple_resources.json
239
+ - lib/sparkle_formation/resources/terraform_docker_resources.json
240
+ - lib/sparkle_formation/resources/terraform_dyn_resources.json
241
+ - lib/sparkle_formation/resources/terraform_fastly_resources.json
242
+ - lib/sparkle_formation/resources/terraform_flexibleengine_resources.json
243
+ - lib/sparkle_formation/resources/terraform_github_resources.json
244
+ - lib/sparkle_formation/resources/terraform_gitlab_resources.json
245
+ - lib/sparkle_formation/resources/terraform_google_resources.json
246
+ - lib/sparkle_formation/resources/terraform_grafana_resources.json
247
+ - lib/sparkle_formation/resources/terraform_hcloud_resources.json
248
+ - lib/sparkle_formation/resources/terraform_heroku_resources.json
249
+ - lib/sparkle_formation/resources/terraform_huaweicloud_resources.json
250
+ - lib/sparkle_formation/resources/terraform_icinga2_resources.json
251
+ - lib/sparkle_formation/resources/terraform_influxdb_resources.json
252
+ - lib/sparkle_formation/resources/terraform_kubernetes_resources.json
253
+ - lib/sparkle_formation/resources/terraform_librato_resources.json
254
+ - lib/sparkle_formation/resources/terraform_linode_resources.json
255
+ - lib/sparkle_formation/resources/terraform_local_resources.json
256
+ - lib/sparkle_formation/resources/terraform_logentries_resources.json
257
+ - lib/sparkle_formation/resources/terraform_logicmonitor_resources.json
258
+ - lib/sparkle_formation/resources/terraform_mailgun_resources.json
259
+ - lib/sparkle_formation/resources/terraform_mysql_resources.json
260
+ - lib/sparkle_formation/resources/terraform_netlify_resources.json
261
+ - lib/sparkle_formation/resources/terraform_newrelic_resources.json
262
+ - lib/sparkle_formation/resources/terraform_nomad_resources.json
263
+ - lib/sparkle_formation/resources/terraform_ns1_resources.json
264
+ - lib/sparkle_formation/resources/terraform_nsxt_resources.json
265
+ - lib/sparkle_formation/resources/terraform_nutanix_resources.json
266
+ - lib/sparkle_formation/resources/terraform_oci_resources.json
267
+ - lib/sparkle_formation/resources/terraform_oneandone_resources.json
268
+ - lib/sparkle_formation/resources/terraform_opc_resources.json
269
+ - lib/sparkle_formation/resources/terraform_openstack_resources.json
270
+ - lib/sparkle_formation/resources/terraform_opentelekomcloud_resources.json
271
+ - lib/sparkle_formation/resources/terraform_opsgenie_resources.json
272
+ - lib/sparkle_formation/resources/terraform_oraclepaas_resources.json
273
+ - lib/sparkle_formation/resources/terraform_ovh_resources.json
274
+ - lib/sparkle_formation/resources/terraform_packet_resources.json
275
+ - lib/sparkle_formation/resources/terraform_pagerduty_resources.json
276
+ - lib/sparkle_formation/resources/terraform_panos_resources.json
277
+ - lib/sparkle_formation/resources/terraform_postgresql_resources.json
278
+ - lib/sparkle_formation/resources/terraform_powerdns_resources.json
279
+ - lib/sparkle_formation/resources/terraform_profitbricks_resources.json
280
+ - lib/sparkle_formation/resources/terraform_projects_resources.json
281
+ - lib/sparkle_formation/resources/terraform_rabbitmq_resources.json
282
+ - lib/sparkle_formation/resources/terraform_rancher_resources.json
283
+ - lib/sparkle_formation/resources/terraform_random_resources.json
213
284
  - lib/sparkle_formation/resources/terraform_resources.json
285
+ - lib/sparkle_formation/resources/terraform_rightscale_resources.json
286
+ - lib/sparkle_formation/resources/terraform_ring_resources.json
287
+ - lib/sparkle_formation/resources/terraform_rundeck_resources.json
288
+ - lib/sparkle_formation/resources/terraform_runscope_resources.json
289
+ - lib/sparkle_formation/resources/terraform_scaleway_resources.json
290
+ - lib/sparkle_formation/resources/terraform_ses_resources.json
291
+ - lib/sparkle_formation/resources/terraform_sfn_resources.json
292
+ - lib/sparkle_formation/resources/terraform_softlayer_resources.json
293
+ - lib/sparkle_formation/resources/terraform_spotinst_resources.json
294
+ - lib/sparkle_formation/resources/terraform_statuscake_resources.json
295
+ - lib/sparkle_formation/resources/terraform_subnetwork_resources.json
296
+ - lib/sparkle_formation/resources/terraform_telefonicaopencloud_resources.json
297
+ - lib/sparkle_formation/resources/terraform_template_resources.json
298
+ - lib/sparkle_formation/resources/terraform_tencentcloud_resources.json
299
+ - lib/sparkle_formation/resources/terraform_tfe_resources.json
300
+ - lib/sparkle_formation/resources/terraform_tls_resources.json
301
+ - lib/sparkle_formation/resources/terraform_triton_resources.json
302
+ - lib/sparkle_formation/resources/terraform_ultradns_resources.json
303
+ - lib/sparkle_formation/resources/terraform_vault_resources.json
304
+ - lib/sparkle_formation/resources/terraform_vcd_resources.json
305
+ - lib/sparkle_formation/resources/terraform_vsphere_resources.json
214
306
  - lib/sparkle_formation/sparkle.rb
215
307
  - lib/sparkle_formation/sparkle_attribute.rb
216
308
  - lib/sparkle_formation/sparkle_attribute/aws.rb
@@ -229,7 +321,7 @@ files:
229
321
  - lib/sparkle_formation/utils.rb
230
322
  - lib/sparkle_formation/version.rb
231
323
  - sparkle_formation.gemspec
232
- homepage: http://github.com/heavywater/sparkle_formation
324
+ homepage: http://github.com/sparkleformation/sparkle_formation
233
325
  licenses:
234
326
  - Apache-2.0
235
327
  metadata: {}