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
@@ -0,0 +1,149 @@
1
+ {
2
+ "nomad_acl_policy": {
3
+ "full_properties": {
4
+ "description": {
5
+ "description": "- A description of the policy.",
6
+ "required": false
7
+ },
8
+ "name": {
9
+ "description": "- A unique name for the policy.",
10
+ "required": false
11
+ },
12
+ "rules_hcl": {
13
+ "description": "- The contents of the policy to register,",
14
+ "required": false
15
+ }
16
+ },
17
+ "path": "/docs/providers/nomad/r/acl_policy.html",
18
+ "properties": [
19
+ "name",
20
+ "rules_hcl",
21
+ "description"
22
+ ]
23
+ },
24
+ "nomad_acl_token": {
25
+ "full_properties": {
26
+ "global": {
27
+ "description": "- Whether the token should be replicated to all",
28
+ "required": false
29
+ },
30
+ "name": {
31
+ "description": "- A human-friendly name for this token.",
32
+ "required": false
33
+ },
34
+ "policies": {
35
+ "description": "- A set of policy names to associate with this",
36
+ "required": false
37
+ },
38
+ "type": {
39
+ "description": "- The type of token this is. Use client",
40
+ "required": false
41
+ }
42
+ },
43
+ "path": "/docs/providers/nomad/r/acl_token.html",
44
+ "properties": [
45
+ "type",
46
+ "name",
47
+ "policies",
48
+ "global"
49
+ ]
50
+ },
51
+ "nomad_job": {
52
+ "full_properties": {
53
+ "deregister_on_destroy": {
54
+ "description": "- Determines if the job will be",
55
+ "required": false
56
+ },
57
+ "deregister_on_id_change": {
58
+ "description": "- Determines if the job will be",
59
+ "required": false
60
+ },
61
+ "jobspec": {
62
+ "description": "- The contents of the jobspec to register.",
63
+ "required": false
64
+ },
65
+ "policy_override": {
66
+ "description": "- Determins if the job will override any",
67
+ "required": false
68
+ }
69
+ },
70
+ "path": "/docs/providers/nomad/r/job.html",
71
+ "properties": [
72
+ "jobspec",
73
+ "deregister_on_destroy",
74
+ "deregister_on_id_change",
75
+ "policy_override"
76
+ ]
77
+ },
78
+ "nomad_namespace": {
79
+ "full_properties": {
80
+ "description": {
81
+ "description": "- A description of the namespace.",
82
+ "required": false
83
+ },
84
+ "name": {
85
+ "description": "- A unique name for the namespace.",
86
+ "required": false
87
+ }
88
+ },
89
+ "path": "/docs/providers/nomad/r/namespace.html",
90
+ "properties": [
91
+ "name",
92
+ "description"
93
+ ]
94
+ },
95
+ "nomad_quota_specification": {
96
+ "full_properties": {
97
+ "description": {
98
+ "description": "- A description of the quota specification.",
99
+ "required": false
100
+ },
101
+ "limits": {
102
+ "description": "- A block of quota limits to enforce. Can",
103
+ "required": false
104
+ },
105
+ "name": {
106
+ "description": "- A unique name for the quota specification.",
107
+ "required": false
108
+ }
109
+ },
110
+ "path": "/docs/providers/nomad/r/quota_specification.html",
111
+ "properties": [
112
+ "name",
113
+ "description",
114
+ "limits"
115
+ ]
116
+ },
117
+ "nomad_sentinel_policy": {
118
+ "full_properties": {
119
+ "description": {
120
+ "description": "- A description of the policy.",
121
+ "required": false
122
+ },
123
+ "enforcement_level": {
124
+ "description": "- The enforcement level",
125
+ "required": false
126
+ },
127
+ "name": {
128
+ "description": "- A unique name for the policy.",
129
+ "required": false
130
+ },
131
+ "policy": {
132
+ "description": "- The contents of the policy to register.",
133
+ "required": false
134
+ },
135
+ "scope": {
136
+ "description": "- The scope for this policy.",
137
+ "required": false
138
+ }
139
+ },
140
+ "path": "/docs/providers/nomad/r/sentinel_policy.html",
141
+ "properties": [
142
+ "name",
143
+ "policy",
144
+ "enforcement_level",
145
+ "scope",
146
+ "description"
147
+ ]
148
+ }
149
+ }
@@ -0,0 +1,320 @@
1
+ {
2
+ "ns1_apikey": {
3
+ "full_properties": {
4
+ "key": {
5
+ "description": "The apikeys authentication token.",
6
+ "required": true
7
+ },
8
+ "name": {
9
+ "description": "The free form name of the apikey.",
10
+ "required": true
11
+ },
12
+ "permissions": {
13
+ "description": "The allowed permissions of the apikey. Permissions documented below.",
14
+ "required": false
15
+ },
16
+ "teams": {
17
+ "description": "The teams that the apikey belongs to.",
18
+ "required": true
19
+ }
20
+ },
21
+ "path": "/docs/providers/ns1/r/apikey.html",
22
+ "properties": [
23
+ "name",
24
+ "key",
25
+ "teams",
26
+ "permissions"
27
+ ]
28
+ },
29
+ "ns1_datafeed": {
30
+ "full_properties": {
31
+ "config": {
32
+ "description": "The feeds configuration matching the specification in 'feed_config' from /data/sourcetypes.",
33
+ "required": false
34
+ },
35
+ "name": {
36
+ "description": "The free form name of the data feed.",
37
+ "required": true
38
+ },
39
+ "source_id": {
40
+ "description": "The data source id that this feed is connected to.",
41
+ "required": true
42
+ }
43
+ },
44
+ "path": "/docs/providers/ns1/r/datafeed.html",
45
+ "properties": [
46
+ "source_id",
47
+ "name",
48
+ "config"
49
+ ]
50
+ },
51
+ "ns1_datasource": {
52
+ "full_properties": {
53
+ "config": {
54
+ "description": "The data source configuration, determined by its type.",
55
+ "required": false
56
+ },
57
+ "name": {
58
+ "description": "The free form name of the data source.",
59
+ "required": true
60
+ },
61
+ "sourcetype": {
62
+ "description": "The data sources type, listed in API endpoint https://api.nsone.net/v1/data/sourcetypes.",
63
+ "required": true
64
+ }
65
+ },
66
+ "path": "/docs/providers/ns1/r/datasource.html",
67
+ "properties": [
68
+ "name",
69
+ "sourcetype",
70
+ "config"
71
+ ]
72
+ },
73
+ "ns1_monitoringjob": {
74
+ "full_properties": {
75
+ "active": {
76
+ "description": "Indicates if the job is active or temporaril.y disabled.",
77
+ "required": true
78
+ },
79
+ "config": {
80
+ "description": "A configuration dictionary with keys and values depending on the jobs' type.",
81
+ "required": true
82
+ },
83
+ "frequency": {
84
+ "description": "The frequency, in seconds, at which to run the monitoring job in each region.",
85
+ "required": true
86
+ },
87
+ "job_type": {
88
+ "description": "The type of monitoring job to be run.",
89
+ "required": true
90
+ },
91
+ "name": {
92
+ "description": "The free-form display name for the monitoring job.",
93
+ "required": true
94
+ },
95
+ "notes": {
96
+ "description": "Freeform notes to be included in any notifications about this job.",
97
+ "required": false
98
+ },
99
+ "notify_delay": {
100
+ "description": "The time in seconds after a failure to wait before sending a notification.",
101
+ "required": false
102
+ },
103
+ "notify_failback": {
104
+ "description": "If true, a notification is sent when a job returns to an \"up\" state.",
105
+ "required": false
106
+ },
107
+ "notify_list": {
108
+ "description": "The id of the notification list to send notifications to.",
109
+ "required": false
110
+ },
111
+ "notify_regional": {
112
+ "description": "If true, notifications are sent for any regional failure (and failback if desired), in addition to global state notifications.",
113
+ "required": false
114
+ },
115
+ "notify_repeat": {
116
+ "description": "The time in seconds between repeat notifications of a failed job.",
117
+ "required": false
118
+ },
119
+ "policy": {
120
+ "description": "The policy for determining the monitor's global status based on the status of the job in all regions.",
121
+ "required": true
122
+ },
123
+ "rapid_recheck": {
124
+ "description": "If true, on any apparent state change, the job is quickly re-run after one second to confirm the state change before notification.",
125
+ "required": true
126
+ },
127
+ "regions": {
128
+ "description": "The list of region codes in which to run the monitoring job.",
129
+ "required": true
130
+ },
131
+ "rules": {
132
+ "description": "A list of rules for determining failure conditions. Job Rules are documented below.",
133
+ "required": false
134
+ }
135
+ },
136
+ "path": "/docs/providers/ns1/r/monitoringjob.html",
137
+ "properties": [
138
+ "name",
139
+ "job_type",
140
+ "active",
141
+ "regions",
142
+ "frequency",
143
+ "rapid_recheck",
144
+ "policy",
145
+ "config",
146
+ "notify_delay",
147
+ "notify_repeat",
148
+ "notify_failback",
149
+ "notify_regional",
150
+ "notify_list",
151
+ "notes",
152
+ "rules"
153
+ ]
154
+ },
155
+ "ns1_notifylist": {
156
+ "full_properties": {
157
+ "name": {
158
+ "description": "The free-form display name for the notify list.",
159
+ "required": true
160
+ },
161
+ "notifications": {
162
+ "description": "A list of notifiers. All notifiers in a notification list will receive notifications whenever an event is send to the list (e.g., when a monitoring job fails). Notifiers are documented below.",
163
+ "required": false
164
+ }
165
+ },
166
+ "path": "/docs/providers/ns1/r/notifylist.html",
167
+ "properties": [
168
+ "name",
169
+ "notifications"
170
+ ]
171
+ },
172
+ "ns1_record": {
173
+ "full_properties": {
174
+ "answers": {
175
+ "description": "One or more NS1 answers for the records' specified type. Answers are documented below.",
176
+ "required": false
177
+ },
178
+ "domain": {
179
+ "description": "The records' domain.",
180
+ "required": true
181
+ },
182
+ "filters": {
183
+ "description": "One or more NS1 filters for the record(order matters). Filters are documented below.",
184
+ "required": false
185
+ },
186
+ "link": {
187
+ "description": "The target record to link to. This means this record is a 'linked' record, and it inherits all properties from its target.",
188
+ "required": false
189
+ },
190
+ "ttl": {
191
+ "description": "The records' time to live.",
192
+ "required": false
193
+ },
194
+ "type": {
195
+ "description": "The records' RR type.",
196
+ "required": true
197
+ },
198
+ "use_client_subnet": {
199
+ "description": "Whether to use EDNS client subnet data when available(in filter chain).",
200
+ "required": false
201
+ },
202
+ "zone": {
203
+ "description": "The zone the record belongs to.",
204
+ "required": true
205
+ }
206
+ },
207
+ "path": "/docs/providers/ns1/r/record.html",
208
+ "properties": [
209
+ "zone",
210
+ "domain",
211
+ "type",
212
+ "ttl",
213
+ "link",
214
+ "use_client_subnet",
215
+ "answers",
216
+ "filters"
217
+ ]
218
+ },
219
+ "ns1_team": {
220
+ "full_properties": {
221
+ "name": {
222
+ "description": "The free form name of the team.",
223
+ "required": true
224
+ },
225
+ "permissions": {
226
+ "description": "The allowed permissions of the team. Permissions documented below.",
227
+ "required": false
228
+ }
229
+ },
230
+ "path": "/docs/providers/ns1/r/team.html",
231
+ "properties": [
232
+ "name",
233
+ "permissions"
234
+ ]
235
+ },
236
+ "ns1_user": {
237
+ "full_properties": {
238
+ "email": {
239
+ "description": "The email address of the user.",
240
+ "required": true
241
+ },
242
+ "name": {
243
+ "description": "The free form name of the user.",
244
+ "required": true
245
+ },
246
+ "notify": {
247
+ "description": "The Whether or not to notify the user of specified events. Only billing is available currently.",
248
+ "required": true
249
+ },
250
+ "permissions": {
251
+ "description": "The allowed permissions of the user. Permissions documented below.",
252
+ "required": false
253
+ },
254
+ "teams": {
255
+ "description": "The teams that the user belongs to.",
256
+ "required": true
257
+ },
258
+ "username": {
259
+ "description": "The users login name.",
260
+ "required": true
261
+ }
262
+ },
263
+ "path": "/docs/providers/ns1/r/user.html",
264
+ "properties": [
265
+ "name",
266
+ "username",
267
+ "email",
268
+ "notify",
269
+ "teams",
270
+ "permissions"
271
+ ]
272
+ },
273
+ "ns1_zone": {
274
+ "full_properties": {
275
+ "expiry": {
276
+ "description": "The SOA Expiry.",
277
+ "required": false
278
+ },
279
+ "link": {
280
+ "description": "The target zone(domain name) to link to.",
281
+ "required": false
282
+ },
283
+ "nx_ttl": {
284
+ "description": "The SOA NX TTL.",
285
+ "required": false
286
+ },
287
+ "primary": {
288
+ "description": "The primary zones' ip. This makes the zone a secondary.",
289
+ "required": false
290
+ },
291
+ "refresh": {
292
+ "description": "The SOA Refresh.",
293
+ "required": false
294
+ },
295
+ "retry": {
296
+ "description": "The SOA Retry.",
297
+ "required": false
298
+ },
299
+ "ttl": {
300
+ "description": "The SOA TTL.",
301
+ "required": false
302
+ },
303
+ "zone": {
304
+ "description": "The domain name of the zone.",
305
+ "required": true
306
+ }
307
+ },
308
+ "path": "/docs/providers/ns1/r/zone.html",
309
+ "properties": [
310
+ "zone",
311
+ "link",
312
+ "ttl",
313
+ "refresh",
314
+ "retry",
315
+ "expiry",
316
+ "nx_ttl",
317
+ "primary"
318
+ ]
319
+ }
320
+ }