droplet_kit 3.20.0 → 3.22.0

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.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +77 -0
  3. data/lib/droplet_kit/client.rb +6 -1
  4. data/lib/droplet_kit/mappings/app_mapping.rb +121 -0
  5. data/lib/droplet_kit/mappings/app_spec_mapping.rb +549 -0
  6. data/lib/droplet_kit/mappings/database_connection_pool_mapping.rb +4 -4
  7. data/lib/droplet_kit/mappings/database_kafka_config_mapping.rb +56 -0
  8. data/lib/droplet_kit/mappings/database_metrics_credentials_mapping.rb +15 -0
  9. data/lib/droplet_kit/mappings/database_mongo_config_mapping.rb +22 -0
  10. data/lib/droplet_kit/mappings/database_mysql_config_mapping.rb +50 -0
  11. data/lib/droplet_kit/mappings/database_opensearch_config_mapping.rb +55 -0
  12. data/lib/droplet_kit/mappings/database_postgres_config_mapping.rb +97 -0
  13. data/lib/droplet_kit/mappings/database_redis_config_mapping.rb +28 -0
  14. data/lib/droplet_kit/mappings/deployment_mapping.rb +136 -0
  15. data/lib/droplet_kit/mappings/one_click_kubernetes_mapping.rb +16 -0
  16. data/lib/droplet_kit/mappings/one_click_mapping.rb +17 -0
  17. data/lib/droplet_kit/mappings/reserved_ipv6_mapping.rb +17 -0
  18. data/lib/droplet_kit/mappings/vpc_peering_mapping.rb +29 -0
  19. data/lib/droplet_kit/models/app.rb +70 -0
  20. data/lib/droplet_kit/models/app_spec.rb +290 -0
  21. data/lib/droplet_kit/models/database_kafka_config.rb +47 -0
  22. data/lib/droplet_kit/models/database_metrics_credentials.rb +8 -0
  23. data/lib/droplet_kit/models/database_mongo_config.rb +13 -0
  24. data/lib/droplet_kit/models/database_mysql_config.rb +41 -0
  25. data/lib/droplet_kit/models/database_opensearch_config.rb +46 -0
  26. data/lib/droplet_kit/models/database_postgres_config.rb +76 -0
  27. data/lib/droplet_kit/models/database_redis_config.rb +19 -0
  28. data/lib/droplet_kit/models/deployment.rb +73 -0
  29. data/lib/droplet_kit/models/one_click.rb +8 -0
  30. data/lib/droplet_kit/models/one_click_kubernetes.rb +8 -0
  31. data/lib/droplet_kit/models/reserved_ipv6.rb +19 -0
  32. data/lib/droplet_kit/models/vpc_peering.rb +11 -0
  33. data/lib/droplet_kit/resources/app_resource.rb +36 -0
  34. data/lib/droplet_kit/resources/database_resource.rb +36 -0
  35. data/lib/droplet_kit/resources/droplet_action_resource.rb +1 -1
  36. data/lib/droplet_kit/resources/one_click_resource.rb +23 -0
  37. data/lib/droplet_kit/resources/reserved_ipv6_action_resource.rb +20 -0
  38. data/lib/droplet_kit/resources/reserved_ipv6_resource.rb +33 -0
  39. data/lib/droplet_kit/resources/vpc_peering_resource.rb +43 -0
  40. data/lib/droplet_kit/version.rb +1 -1
  41. data/lib/droplet_kit.rb +137 -0
  42. metadata +52 -5
@@ -0,0 +1,549 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DropletKit
4
+ class AppDomainSpecMapping
5
+ include Kartograph::DSL
6
+
7
+ kartograph do
8
+ mapping AppDomainSpec
9
+ scoped :read, :create, :update do
10
+ property :domain
11
+ property :type
12
+ property :wildcard
13
+ property :zone
14
+ property :minimum_tls_version
15
+ end
16
+ end
17
+ end
18
+
19
+ class AppGitSourceSpecMapping
20
+ include Kartograph::DSL
21
+
22
+ kartograph do
23
+ mapping AppGitSourceSpec
24
+ scoped :read, :create, :update do
25
+ property :branch
26
+ property :repo_clone_url
27
+ end
28
+ end
29
+ end
30
+
31
+ class AppGitHubSourceSpecMapping
32
+ include Kartograph::DSL
33
+
34
+ kartograph do
35
+ mapping AppGitHubSourceSpec
36
+ scoped :read, :create, :update do
37
+ property :branch
38
+ property :deploy_on_push
39
+ property :repo
40
+ end
41
+ end
42
+ end
43
+
44
+ class AppGitLabSourceSpecMapping
45
+ include Kartograph::DSL
46
+
47
+ kartograph do
48
+ mapping AppGitLabSourceSpec
49
+ scoped :read, :create, :update do
50
+ property :branch
51
+ property :deploy_on_push
52
+ property :repo
53
+ end
54
+ end
55
+ end
56
+
57
+ class AppImageDeployOnPushMapping
58
+ include Kartograph::DSL
59
+
60
+ kartograph do
61
+ mapping AppImageDeployOnPush
62
+ scoped :read, :create, :update do
63
+ property :enabled
64
+ end
65
+ end
66
+ end
67
+
68
+ class AppImageSourceSpecMapping
69
+ include Kartograph::DSL
70
+
71
+ kartograph do
72
+ mapping AppImageSourceSpec
73
+ scoped :read, :create, :update do
74
+ property :registry
75
+ property :registry_type
76
+ property :registry_credentials
77
+ property :repository
78
+ property :tag
79
+ property :digest
80
+ property :deploy_on_push, include: AppImageDeployOnPushMapping
81
+ end
82
+ end
83
+ end
84
+
85
+ class AppVariableDefinitionMapping
86
+ include Kartograph::DSL
87
+
88
+ kartograph do
89
+ mapping AppVariableDefinition
90
+ scoped :read, :create, :update do
91
+ property :key
92
+ property :scope
93
+ property :type
94
+ property :value
95
+ end
96
+ end
97
+ end
98
+
99
+ class AppLogDestinationSpecPapertrailMapping
100
+ include Kartograph::DSL
101
+
102
+ kartograph do
103
+ mapping AppLogDestinationSpecPapertrail
104
+ scoped :read, :create, :update do
105
+ property :endpoint
106
+ end
107
+ end
108
+ end
109
+
110
+ class AppLogDestinationSpecDatadogMapping
111
+ include Kartograph::DSL
112
+
113
+ kartograph do
114
+ mapping AppLogDestinationSpecDatadog
115
+ scoped :read, :create, :update do
116
+ property :endpoint
117
+ property :api_key
118
+ end
119
+ end
120
+ end
121
+
122
+ class AppLogDestinationSpecLogtailMapping
123
+ include Kartograph::DSL
124
+
125
+ kartograph do
126
+ mapping AppLogDestinationSpecLogtail
127
+ scoped :read, :create, :update do
128
+ property :token
129
+ end
130
+ end
131
+ end
132
+
133
+ class OpenSearchBasicAuthMapping
134
+ include Kartograph::DSL
135
+
136
+ kartograph do
137
+ mapping OpenSearchBasicAuth
138
+ scoped :read, :create, :update do
139
+ property :username
140
+ property :password
141
+ end
142
+ end
143
+ end
144
+
145
+ class AppLogDestinationSpecOpenSearchMapping
146
+ include Kartograph::DSL
147
+
148
+ kartograph do
149
+ mapping AppLogDestinationSpecOpenSearch
150
+ scoped :read, :create, :update do
151
+ property :endpoint
152
+ property :basic_auth, include: OpenSearchBasicAuthMapping
153
+ property :index_name
154
+ property :cluster_name
155
+ end
156
+ end
157
+ end
158
+
159
+ class AppLogDestinationSpecMapping
160
+ include Kartograph::DSL
161
+
162
+ kartograph do
163
+ mapping AppLogDestinationSpec
164
+ scoped :read, :create, :update do
165
+ property :name
166
+ property :papertrail, include: AppLogDestinationSpecPapertrailMapping
167
+ property :datadog, include: AppLogDestinationSpecDatadogMapping
168
+ property :logtail, include: AppLogDestinationSpecLogtailMapping
169
+ property :open_search, include: AppLogDestinationSpecOpenSearchMapping
170
+ end
171
+ end
172
+ end
173
+
174
+ class AppAutoscalingSpecMetricCPUMapping
175
+ include Kartograph::DSL
176
+
177
+ kartograph do
178
+ mapping AppAutoscalingSpecMetricCPU
179
+ scoped :read, :create, :update do
180
+ property :percent
181
+ end
182
+ end
183
+ end
184
+
185
+ class AppAutoscalingSpecMetricsMapping
186
+ include Kartograph::DSL
187
+
188
+ kartograph do
189
+ mapping AppAutoscalingSpecMetrics
190
+ scoped :read, :create, :update do
191
+ property :cpu, include: AppAutoscalingSpecMetricCPUMapping
192
+ end
193
+ end
194
+ end
195
+
196
+ class AppAutoscalingSpecMapping
197
+ include Kartograph::DSL
198
+
199
+ kartograph do
200
+ mapping AppAutoscalingSpec
201
+ scoped :read, :create, :update do
202
+ property :min_instance_count
203
+ property :max_instance_count
204
+ property :metrics, include: AppAutoscalingSpecMetricsMapping
205
+ end
206
+ end
207
+ end
208
+
209
+ class AppServiceSpecHealthCheckMapping
210
+ include Kartograph::DSL
211
+
212
+ kartograph do
213
+ mapping AppServiceSpecHealthCheck
214
+ scoped :read, :create, :update do
215
+ property :failure_threshold
216
+ property :port
217
+ property :http_path
218
+ property :initial_delay_seconds
219
+ property :period_seconds
220
+ property :success_threshold
221
+ property :timeout_seconds
222
+ end
223
+ end
224
+ end
225
+
226
+ class AppServiceSpecTerminationMapping
227
+ include Kartograph::DSL
228
+
229
+ kartograph do
230
+ mapping AppServiceSpecTermination
231
+ scoped :read, :create, :update do
232
+ property :drain_seconds
233
+ property :grace_period_seconds
234
+ end
235
+ end
236
+ end
237
+
238
+ class AppServiceSpecMapping
239
+ include Kartograph::DSL
240
+
241
+ kartograph do
242
+ mapping AppServiceSpec
243
+ scoped :read, :create, :update do
244
+ property :name
245
+ property :git, include: AppGitSourceSpecMapping
246
+ property :github, include: AppGitHubSourceSpecMapping
247
+ property :gitlab, include: AppGitLabSourceSpecMapping
248
+ property :image, include: AppImageSourceSpecMapping
249
+ property :dockerfile_path
250
+ property :build_command
251
+ property :run_command
252
+ property :source_dir
253
+ property :envs, plural: true, include: AppVariableDefinitionMapping
254
+ property :environment_slug
255
+ property :log_destinations, plural: true, include: AppLogDestinationSpecMapping
256
+ property :instance_count
257
+ property :instance_size_slug
258
+ property :autoscaling, include: AppAutoscalingSpecMapping
259
+ property :health_check, include: AppServiceSpecHealthCheckMapping
260
+ property :http_port
261
+ property :internal_ports
262
+ property :termination, include: AppServiceSpecTerminationMapping
263
+ end
264
+ end
265
+ end
266
+
267
+ class AppStaticSiteSpecMapping
268
+ include Kartograph::DSL
269
+
270
+ kartograph do
271
+ mapping AppStaticSiteSpec
272
+ scoped :read, :create, :update do
273
+ property :name
274
+ property :git, include: AppGitSourceSpecMapping
275
+ property :github, include: AppGitHubSourceSpecMapping
276
+ property :gitlab, include: AppGitLabSourceSpecMapping
277
+ property :image, include: AppImageSourceSpecMapping
278
+ property :dockerfile_path
279
+ property :build_command
280
+ property :run_command
281
+ property :source_dir
282
+ property :envs, plural: true, include: AppVariableDefinitionMapping
283
+ property :environment_slug
284
+ property :log_destinations, plural: true, include: AppLogDestinationSpecMapping
285
+ property :index_document
286
+ property :error_document
287
+ property :catchall_document
288
+ property :output_dir
289
+ end
290
+ end
291
+ end
292
+
293
+ class AppJobSpecTerminationMapping
294
+ include Kartograph::DSL
295
+
296
+ kartograph do
297
+ mapping AppJobSpecTermination
298
+ scoped :read, :create, :update do
299
+ property :grace_period_seconds
300
+ end
301
+ end
302
+ end
303
+
304
+ class AppJobSpecMapping
305
+ include Kartograph::DSL
306
+
307
+ kartograph do
308
+ mapping AppJobSpec
309
+ scoped :read, :create, :update do
310
+ property :name
311
+ property :git, include: AppGitSourceSpecMapping
312
+ property :github, include: AppGitHubSourceSpecMapping
313
+ property :gitlab, include: AppGitLabSourceSpecMapping
314
+ property :image, include: AppImageSourceSpecMapping
315
+ property :dockerfile_path
316
+ property :build_command
317
+ property :run_command
318
+ property :source_dir
319
+ property :envs, plural: true, include: AppVariableDefinitionMapping
320
+ property :environment_slug
321
+ property :log_destinations, plural: true, include: AppLogDestinationSpecMapping
322
+ property :instance_count
323
+ property :instance_size_slug
324
+ property :autoscaling, include: AppAutoscalingSpecMapping
325
+ property :kind
326
+ property :termination, include: AppJobSpecTerminationMapping
327
+ end
328
+ end
329
+ end
330
+
331
+ class AppWorkerSpecTerminationMapping
332
+ include Kartograph::DSL
333
+
334
+ kartograph do
335
+ mapping AppWorkerSpecTermination
336
+ scoped :read, :create, :update do
337
+ property :grace_period_seconds
338
+ end
339
+ end
340
+ end
341
+
342
+ class AppWorkerSpecMapping
343
+ include Kartograph::DSL
344
+
345
+ kartograph do
346
+ mapping AppWorkerSpec
347
+ scoped :read, :create, :update do
348
+ property :name
349
+ property :git, include: AppGitSourceSpecMapping
350
+ property :github, include: AppGitHubSourceSpecMapping
351
+ property :gitlab, include: AppGitLabSourceSpecMapping
352
+ property :image, include: AppImageSourceSpecMapping
353
+ property :dockerfile_path
354
+ property :build_command
355
+ property :run_command
356
+ property :source_dir
357
+ property :envs, plural: true, include: AppVariableDefinitionMapping
358
+ property :environment_slug
359
+ property :log_destinations, plural: true, include: AppLogDestinationSpecMapping
360
+ property :instance_count
361
+ property :instance_size_slug
362
+ property :autoscaling, include: AppAutoscalingSpecMapping
363
+ property :termination, include: AppWorkerSpecTerminationMapping
364
+ end
365
+ end
366
+ end
367
+
368
+ class AppAlertSpecMapping
369
+ include Kartograph::DSL
370
+
371
+ kartograph do
372
+ mapping AppAlertSpec
373
+ scoped :read, :create, :update do
374
+ property :rule
375
+ property :disabled
376
+ property :operator
377
+ property :value
378
+ property :window
379
+ end
380
+ end
381
+ end
382
+
383
+ class AppFunctionSpecMapping
384
+ include Kartograph::DSL
385
+
386
+ kartograph do
387
+ mapping AppFunctionSpec
388
+ scoped :read, :create, :update do
389
+ property :name
390
+ property :source_dir
391
+ property :alerts, plural: true, include: AppAlertSpecMapping
392
+ property :envs, plural: true, include: AppVariableDefinitionMapping
393
+ property :log_destinations, plural: true, include: AppLogDestinationSpecMapping
394
+ end
395
+ end
396
+ end
397
+
398
+ class AppDatabaseSpecMapping
399
+ include Kartograph::DSL
400
+
401
+ kartograph do
402
+ mapping AppDatabaseSpec
403
+ scoped :read, :create, :update do
404
+ property :cluster_name
405
+ property :db_name
406
+ property :db_user
407
+ property :engine
408
+ property :name
409
+ property :production
410
+ property :version
411
+ end
412
+ end
413
+ end
414
+
415
+ class AppIngressSpecRuleStringMatchMapping
416
+ include Kartograph::DSL
417
+
418
+ kartograph do
419
+ mapping AppIngressSpecRuleStringMatch
420
+ scoped :read, :create, :update do
421
+ property :prefix
422
+ end
423
+ end
424
+ end
425
+
426
+ class AppIngressSpecRuleMatchMapping
427
+ include Kartograph::DSL
428
+
429
+ kartograph do
430
+ mapping AppIngressSpecRuleMatch
431
+ scoped :read, :create, :update do
432
+ property :path, include: AppIngressSpecRuleStringMatchMapping
433
+ end
434
+ end
435
+ end
436
+
437
+ class AppStringMatchMapping
438
+ include Kartograph::DSL
439
+
440
+ kartograph do
441
+ mapping AppStringMatch
442
+ scoped :read, :create, :update do
443
+ property :exact
444
+ property :regex
445
+ end
446
+ end
447
+ end
448
+
449
+ class AppCorsPolicyMapping
450
+ include Kartograph::DSL
451
+
452
+ kartograph do
453
+ mapping AppCorsPolicy
454
+ scoped :read, :create, :update do
455
+ property :allow_origins, plural: true, include: AppStringMatchMapping
456
+ property :allow_methods
457
+ property :allow_headers
458
+ property :expose_headers
459
+ property :max_age
460
+ property :allow_credentials
461
+ end
462
+ end
463
+ end
464
+
465
+ class AppIngressSpecRuleRoutingComponentMapping
466
+ include Kartograph::DSL
467
+
468
+ kartograph do
469
+ mapping AppIngressSpecRuleRoutingComponent
470
+ scoped :read, :create, :update do
471
+ property :name
472
+ property :preserve_path_prefix
473
+ property :rewrite
474
+ end
475
+ end
476
+ end
477
+
478
+ class AppIngressSpecRuleRoutingRedirectMapping
479
+ include Kartograph::DSL
480
+
481
+ kartograph do
482
+ mapping AppIngressSpecRuleRoutingRedirect
483
+ scoped :read, :create, :update do
484
+ property :uri
485
+ property :authority
486
+ property :port
487
+ property :scheme
488
+ property :redirect_code
489
+ end
490
+ end
491
+ end
492
+
493
+ class AppIngressSpecRuleMapping
494
+ include Kartograph::DSL
495
+
496
+ kartograph do
497
+ mapping AppIngressSpecRule
498
+ scoped :read, :create, :update do
499
+ property :match, include: AppIngressSpecRuleMatchMapping
500
+ property :cors, include: AppCorsPolicyMapping
501
+ property :component, include: AppIngressSpecRuleRoutingComponentMapping
502
+ property :redirect, include: AppIngressSpecRuleRoutingRedirectMapping
503
+ end
504
+ end
505
+ end
506
+
507
+ class AppIngressSpecMapping
508
+ include Kartograph::DSL
509
+
510
+ kartograph do
511
+ mapping AppIngressSpec
512
+ scoped :read, :create, :update do
513
+ property :rules, plural: true, include: AppIngressSpecRuleMapping
514
+ end
515
+ end
516
+ end
517
+
518
+ class AppEgressSpecMapping
519
+ include Kartograph::DSL
520
+
521
+ kartograph do
522
+ mapping AppEgressSpec
523
+ scoped :read, :create, :update do
524
+ property :type
525
+ end
526
+ end
527
+ end
528
+
529
+ class AppSpecMapping
530
+ include Kartograph::DSL
531
+
532
+ kartograph do
533
+ mapping AppSpec
534
+ scoped :read, :create, :update do
535
+ property :name
536
+ property :region
537
+ property :domains, plural: true, include: AppDomainSpecMapping
538
+ property :services, plural: true, include: AppServiceSpecMapping
539
+ property :static_sites, plural: true, include: AppStaticSiteSpecMapping
540
+ property :jobs, plural: true, include: AppJobSpecMapping
541
+ property :workers, plural: true, include: AppWorkerSpecMapping
542
+ property :functions, plural: true, include: AppFunctionSpecMapping
543
+ property :databases, plural: true, include: AppDatabaseSpecMapping
544
+ property :ingress, include: AppIngressSpecMapping
545
+ property :egress, include: AppEgressSpecMapping
546
+ end
547
+ end
548
+ end
549
+ end
@@ -9,10 +9,10 @@ module DropletKit
9
9
  root_key singular: 'pool', plural: 'pools', scopes: [:read]
10
10
 
11
11
  property :name, scopes: %i[read create]
12
- property :mode, scopes: %i[read create]
13
- property :size, scopes: %i[read create]
14
- property :db, scopes: %i[read create]
15
- property :user, scopes: %i[read create]
12
+ property :mode, scopes: %i[read create update]
13
+ property :size, scopes: %i[read create update]
14
+ property :db, scopes: %i[read create update]
15
+ property :user, scopes: %i[read create update]
16
16
  property :connection, scopes: [:read], include: DatabaseConnectionMapping
17
17
  end
18
18
  end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DropletKit
4
+ class DatabaseKafkaConfigMapping
5
+ include Kartograph::DSL
6
+
7
+ kartograph do
8
+ mapping DatabaseKafkaConfig
9
+ root_key singular: 'config', scopes: %i[read update]
10
+
11
+ scoped :read, :update do
12
+ %i[compression_type
13
+ group_initial_rebalance_delay_ms
14
+ group_min_session_timeout_ms
15
+ group_max_session_timeout_ms
16
+ connections_max_idle_ms
17
+ max_incremental_fetch_session_cache_slots
18
+ message_max_bytes
19
+ offsets_retention_minutes
20
+ log_cleaner_delete_retention_ms
21
+ log_cleaner_min_cleanable_ratio
22
+ log_cleaner_max_compaction_lag_ms
23
+ log_cleaner_min_compaction_lag_ms
24
+ log_cleanup_policy
25
+ log_flush_interval_messages
26
+ log_flush_interval_ms
27
+ log_index_interval_bytes
28
+ log_index_size_max_bytes
29
+ log_message_downconversion_enable
30
+ log_message_timestamp_type
31
+ log_message_timestamp_difference_max_ms
32
+ log_preallocate
33
+ log_retention_bytes
34
+ log_retention_hours
35
+ log_retention_ms
36
+ log_roll_jitter_ms
37
+ log_roll_ms
38
+ log_segment_bytes
39
+ log_segment_delete_delay_ms
40
+ auto_create_topics_enable
41
+ min_insync_replicas
42
+ num_partitions
43
+ default_replication_factor
44
+ replica_fetch_max_bytes
45
+ replica_fetch_response_max_bytes
46
+ max_connections_per_ip
47
+ producer_purgatory_purge_interval_requests
48
+ socket_request_max_bytes
49
+ transaction_state_log_segment_bytes
50
+ transaction_remove_expired_transaction_cleanup_interval_ms].each do |key|
51
+ property(key)
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DropletKit
4
+ class DatabaseMetricsCredentialsMapping
5
+ include Kartograph::DSL
6
+
7
+ kartograph do
8
+ mapping DatabaseMetricsCredentials
9
+ root_key singular: 'credentials', scopes: %i[read update]
10
+
11
+ property :basic_auth_username, scopes: %i[read update]
12
+ property :basic_auth_password, scopes: %i[read update]
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DropletKit
4
+ class DatabaseMongoConfigMapping
5
+ include Kartograph::DSL
6
+
7
+ kartograph do
8
+ mapping DatabaseMongoConfig
9
+ root_key singular: 'config', scopes: %i[read update]
10
+
11
+ scoped :read, :update do
12
+ %i[default_read_concern
13
+ default_write_concern
14
+ transaction_lifetime_limit_seconds
15
+ slow_op_threshold_ms
16
+ verbosity].each do |key|
17
+ property(key)
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,50 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DropletKit
4
+ class DatabaseMysqlConfigMapping
5
+ include Kartograph::DSL
6
+
7
+ kartograph do
8
+ mapping DatabaseMysqlConfig
9
+ root_key singular: 'config', scopes: %i[read update]
10
+
11
+ scoped :read, :update do
12
+ %i[backup_hour
13
+ backup_minute
14
+ sql_mode
15
+ connect_timeout
16
+ default_time_zone
17
+ group_concat_max_len
18
+ information_schema_stats_expiry
19
+ innodb_ft_min_token_size
20
+ innodb_ft_server_stopword_table
21
+ innodb_lock_wait_timeout
22
+ innodb_log_buffer_size
23
+ innodb_online_alter_log_max_size
24
+ innodb_print_all_deadlocks
25
+ innodb_rollback_on_timeout
26
+ interactive_timeout
27
+ internal_tmp_mem_storage_engine
28
+ net_read_timeout
29
+ net_write_timeout
30
+ sql_require_primary_key
31
+ wait_timeout
32
+ max_allowed_packet
33
+ max_heap_table_size
34
+ sort_buffer_size
35
+ tmp_table_size
36
+ slow_query_log
37
+ long_query_time
38
+ binlog_retention_period
39
+ innodb_change_buffer_max_size
40
+ innodb_flush_neighbors
41
+ innodb_read_io_threads
42
+ innodb_write_io_threads
43
+ innodb_thread_concurrency
44
+ net_buffer_length].each do |key|
45
+ property(key)
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end