kuby-redis 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (133) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/Gemfile +4 -1
  4. data/README.md +37 -32
  5. data/Rakefile +158 -0
  6. data/kuby-redis.gemspec +3 -2
  7. data/lib/kuby/redis/dsl/databases/v1/redis_failover.rb +34 -0
  8. data/lib/kuby/redis/dsl/databases/v1/redis_failover_list.rb +34 -0
  9. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec.rb +39 -0
  10. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_auth.rb +27 -0
  11. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_bootstrap_node.rb +33 -0
  12. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis.rb +90 -0
  13. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity.rb +33 -0
  14. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity.rb +30 -0
  15. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_preferred_during_scheduling_ignored_dur_2699b98c.rb +30 -0
  16. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_preferred_during_scheduling_ignored_dur_57a88803.rb +33 -0
  17. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_preferred_during_scheduling_ignored_dur_669412ec.rb +30 -0
  18. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_preferred_during_scheduling_ignored_dur_f45e68a1.rb +33 -0
  19. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_required_during_scheduling_ignored_duri_514c9d0d.rb +33 -0
  20. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_required_during_scheduling_ignored_duri_7f2feab2.rb +27 -0
  21. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_required_during_scheduling_ignored_duri_cf734467.rb +30 -0
  22. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_required_during_scheduling_ignored_duri_d0fbeba3.rb +33 -0
  23. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity.rb +30 -0
  24. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_0aa6c4f1.rb +36 -0
  25. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_39d7e0e9.rb +30 -0
  26. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_3f891b9d.rb +33 -0
  27. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_72161698.rb +33 -0
  28. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_b9e599ce.rb +30 -0
  29. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_d3b686c5.rb +30 -0
  30. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_required_during_scheduling_ignored_durin_14cc16d9.rb +30 -0
  31. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_required_during_scheduling_ignored_durin_5626284b.rb +30 -0
  32. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_required_during_scheduling_ignored_durin_a83e115a.rb +36 -0
  33. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_required_during_scheduling_ignored_durin_a9c63682.rb +33 -0
  34. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_required_during_scheduling_ignored_durin_d9b1f08a.rb +33 -0
  35. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity.rb +30 -0
  36. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_1c7b7986.rb +30 -0
  37. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_4a682c1c.rb +33 -0
  38. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_4a99f849.rb +36 -0
  39. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_9559ef01.rb +30 -0
  40. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_a79bf5f3.rb +30 -0
  41. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_fb54ab7a.rb +33 -0
  42. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_required_during_scheduling_ignored__203ed839.rb +36 -0
  43. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_required_during_scheduling_ignored__3f37a05b.rb +33 -0
  44. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_required_during_scheduling_ignored__5b67fae1.rb +30 -0
  45. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_required_during_scheduling_ignored__86b357eb.rb +30 -0
  46. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_required_during_scheduling_ignored__e2fb95e3.rb +33 -0
  47. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_custom_command_renames.rb +30 -0
  48. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter.rb +39 -0
  49. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env.rb +33 -0
  50. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env_value_from.rb +36 -0
  51. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env_value_from_config_map_key_ref.rb +33 -0
  52. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env_value_from_field_ref.rb +30 -0
  53. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env_value_from_resource_field_ref.rb +30 -0
  54. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env_value_from_secret_key_ref.rb +33 -0
  55. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_image_pull_secrets.rb +27 -0
  56. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_resources.rb +30 -0
  57. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_security_context.rb +54 -0
  58. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_security_context_se_linux_options.rb +36 -0
  59. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_security_context_seccomp_profile.rb +30 -0
  60. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_security_context_sysctls.rb +30 -0
  61. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_security_context_windows_options.rb +36 -0
  62. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage.rb +33 -0
  63. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_empty_dir.rb +27 -0
  64. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim.rb +39 -0
  65. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_metadata.rb +33 -0
  66. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec.rb +48 -0
  67. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec_data_source.rb +33 -0
  68. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec_data_source_ref.rb +33 -0
  69. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec_resources.rb +30 -0
  70. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec_selector.rb +30 -0
  71. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec_selector_match_expressions.rb +33 -0
  72. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_status.rb +36 -0
  73. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_status_conditions.rb +42 -0
  74. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_tolerations.rb +39 -0
  75. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel.rb +78 -0
  76. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity.rb +33 -0
  77. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity.rb +30 -0
  78. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_preferred_during_scheduling_ignored__0d41d4f8.rb +30 -0
  79. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_preferred_during_scheduling_ignored__97efa5a4.rb +33 -0
  80. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_preferred_during_scheduling_ignored__bdaec101.rb +33 -0
  81. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_preferred_during_scheduling_ignored__f0775874.rb +30 -0
  82. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_required_during_scheduling_ignored_d_2895d62e.rb +30 -0
  83. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_required_during_scheduling_ignored_d_2b5753ed.rb +33 -0
  84. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_required_during_scheduling_ignored_d_41e3b807.rb +33 -0
  85. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_required_during_scheduling_ignored_d_67aa2728.rb +27 -0
  86. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity.rb +30 -0
  87. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_0aac483c.rb +30 -0
  88. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_1422bcc7.rb +36 -0
  89. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_4adcb8e9.rb +33 -0
  90. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_4ea60ad7.rb +30 -0
  91. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_78d72154.rb +33 -0
  92. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_b6dc802c.rb +30 -0
  93. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_required_during_scheduling_ignored_du_27358e83.rb +33 -0
  94. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_required_during_scheduling_ignored_du_3ed2dfac.rb +36 -0
  95. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_required_during_scheduling_ignored_du_60665747.rb +30 -0
  96. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_required_during_scheduling_ignored_du_b8662dab.rb +30 -0
  97. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_required_during_scheduling_ignored_du_c7cd5719.rb +33 -0
  98. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity.rb +30 -0
  99. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_13d0762f.rb +30 -0
  100. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_2a2acc24.rb +33 -0
  101. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_38a65fc5.rb +36 -0
  102. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_50d3e927.rb +30 -0
  103. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_74a32220.rb +30 -0
  104. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_f8cf26c5.rb +33 -0
  105. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_required_during_scheduling_ignor_02f9c7b7.rb +36 -0
  106. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_required_during_scheduling_ignor_8222d6bf.rb +30 -0
  107. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_required_during_scheduling_ignor_8384f426.rb +30 -0
  108. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_required_during_scheduling_ignor_8cb6cb26.rb +33 -0
  109. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_required_during_scheduling_ignor_95a14c65.rb +33 -0
  110. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter.rb +39 -0
  111. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env.rb +33 -0
  112. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env_value_from.rb +36 -0
  113. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env_value_from_config_map_key_ref.rb +33 -0
  114. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env_value_from_field_ref.rb +30 -0
  115. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env_value_from_resource_field_ref.rb +30 -0
  116. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env_value_from_secret_key_ref.rb +33 -0
  117. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_image_pull_secrets.rb +27 -0
  118. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_resources.rb +30 -0
  119. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_security_context.rb +54 -0
  120. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_security_context_se_linux_options.rb +36 -0
  121. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_security_context_seccomp_profile.rb +30 -0
  122. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_security_context_sysctls.rb +30 -0
  123. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_security_context_windows_options.rb +36 -0
  124. data/lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_tolerations.rb +39 -0
  125. data/lib/kuby/redis/dsl/databases/v1.rb +120 -0
  126. data/lib/kuby/redis/dsl/databases.rb +3 -0
  127. data/lib/kuby/redis/dsl.rb +3 -0
  128. data/lib/kuby/redis/entrypoint.rb +15 -0
  129. data/lib/kuby/redis/instance.rb +73 -27
  130. data/lib/kuby/redis/plugin.rb +84 -0
  131. data/lib/kuby/redis/version.rb +1 -1
  132. data/lib/kuby/redis.rb +4 -0
  133. metadata +151 -9
@@ -0,0 +1,15 @@
1
+ # typed: strict
2
+
3
+ module Kuby
4
+ module Redis
5
+ module Entrypoint
6
+ def redis_failover_list(&block)
7
+ ::Kuby::Redis::DSL::Databases::V1::RedisFailoverList.new(&block)
8
+ end
9
+
10
+ def redis_failover(&block)
11
+ ::Kuby::Redis::DSL::Databases::V1::RedisFailover.new(&block)
12
+ end
13
+ end
14
+ end
15
+ end
@@ -3,19 +3,25 @@ require 'kube-dsl'
3
3
  module Kuby
4
4
  module Redis
5
5
  class Instance
6
+ PORT = 26379
7
+
6
8
  extend ::KubeDSL::ValueFields
7
9
 
8
10
  attr_reader :name, :environment
9
11
 
10
- value_field :version, default: '5.0.3-v1'
11
- value_field :storage_class_name, default: -> (inst) { inst.kubernetes.provider.storage_class_name }
12
- value_field :storage_type, default: 'Durable'
13
- value_field :storage, default: '1Gi'
14
- value_field :access_modes, default: ['ReadWriteOnce']
15
- value_field :port, default: 6379
12
+ value_field :cpu_request, default: '100m'.freeze
13
+ value_field :memory_request, default: '100Mi'.freeze
14
+ value_field :cpu_limit, default: '400m'.freeze
15
+ value_field :memory_limit, default: '500Mi'
16
+
17
+ value_field :sentinel_replicas, default: 1
18
+ value_field :redis_replicas, default: 1
19
+
20
+ value_field :storage_access_modes, default: ['ReadWriteOnce'.freeze].freeze
21
+ value_field :storage, default: '1Gi'.freeze
16
22
 
17
23
  def initialize(name, environment)
18
- @name = name
24
+ @name = "#{environment.kubernetes.selector_app}-#{name}"
19
25
  @environment = environment
20
26
  end
21
27
 
@@ -23,46 +29,86 @@ module Kuby
23
29
  @resources ||= [redis]
24
30
  end
25
31
 
26
- def hostname
27
- name
32
+ def service_name
33
+ @service_name ||= "rfs-#{name}"
28
34
  end
29
35
 
30
- def url
31
- @url ||= "redis://#{hostname}:#{port}/0"
36
+ def service_port
37
+ PORT
38
+ end
39
+
40
+ # https://github.com/spotahome/redis-operator#connection-to-the-created-redis-failovers
41
+ # The return value of this method is suitable for passing into `Redis.new` from the
42
+ # redis-rb gem.
43
+ def connection_params
44
+ {
45
+ sentinels: [{ host: service_name, port: service_port }],
46
+ url: 'redis://mymaster'
47
+ }
48
+ end
49
+
50
+ def custom_config(*args)
51
+ redis.spec.redis.custom_config(*args)
32
52
  end
33
53
 
34
54
  def redis(&block)
35
55
  context = self
36
56
 
37
- @redis ||= Kuby::KubeDB.redis do
38
- api_version 'kubedb.com/v1alpha1'
57
+ @redis ||= Kuby::Redis.redis_failover do
58
+ api_version 'databases.spotahome.com/v1'
39
59
 
40
60
  metadata do
41
- name "#{context.name}-redis"
61
+ name context.name
42
62
  namespace context.kubernetes.namespace.metadata.name
43
63
  end
44
64
 
45
65
  spec do
46
- version context.version
47
- storage_type context.storage_type
48
-
49
- storage do
50
- storage_class_name context.storage_class_name
51
- access_modes context.access_modes
66
+ sentinel do
67
+ replicas context.sentinel_replicas
52
68
 
53
69
  resources do
54
70
  requests do
55
- add :storage, context.storage
71
+ add :cpu, '100m'
72
+ end
73
+
74
+ limits do
75
+ add :memory, '100Mi'
56
76
  end
57
77
  end
58
78
  end
59
79
 
60
- service_template do
61
- spec do
62
- type 'NodePort'
63
- port do
64
- name 'memcached'
65
- port context.port
80
+ redis do
81
+ replicas context.redis_replicas
82
+
83
+ storage do
84
+ keep_after_deletion true
85
+
86
+ persistent_volume_claim do
87
+ metadata do
88
+ name "#{context.name}-pvc"
89
+ end
90
+
91
+ spec do
92
+ access_modes context.storage_access_modes
93
+
94
+ resources do
95
+ requests do
96
+ add :storage, context.storage
97
+ end
98
+ end
99
+ end
100
+ end
101
+ end
102
+
103
+ resources do
104
+ requests do
105
+ add :cpu, context.cpu_request
106
+ add :memory, context.memory_request
107
+ end
108
+
109
+ limits do
110
+ add :cpu, context.cpu_limit
111
+ add :memory, context.memory_limit
66
112
  end
67
113
  end
68
114
  end
@@ -1,8 +1,23 @@
1
1
  require 'kuby'
2
+ require 'helm-cli'
2
3
 
3
4
  module Kuby
4
5
  module Redis
5
6
  class Plugin < ::Kuby::Plugin
7
+ class KubyRedisError < StandardError; end
8
+ class APIResourcesError < KubyRedisError; end
9
+
10
+ REPO_NAME = 'redis-operator'.freeze
11
+ REPO_URL = 'https://spotahome.github.io/redis-operator'.freeze
12
+
13
+ CHART_NAME = 'redis-operator/redis-operator'.freeze
14
+ CHART_VERSION = '3.1.4'.freeze
15
+ RELEASE_NAME = 'redis-operator'.freeze
16
+ NAMESPACE = 'kube-system'.freeze
17
+
18
+ WAIT_INTERVAL = 5 # seconds
19
+ WAIT_MAX = 120 # seconds
20
+
6
21
  def configure(&block)
7
22
  instance_eval(&block) if block
8
23
  end
@@ -17,11 +32,80 @@ module Kuby
17
32
  instances.flat_map { |_, instance| instance.resources }
18
33
  end
19
34
 
35
+ def setup
36
+ Kuby.logger.info('Setting up the Redis operator')
37
+
38
+ Kuby.logger.info("Updating the #{REPO_NAME} Helm repository")
39
+ helm_cli.add_repo(REPO_NAME, REPO_URL)
40
+ helm_cli.update_repos
41
+
42
+ Kuby.logger.info('Deploying the Redis operator')
43
+ operator_deployed? ? upgrade_operator : install_operator
44
+
45
+ wait_for_api_resources do
46
+ Kuby.logger.info('Waiting for API resources to become available')
47
+ end
48
+
49
+ Kuby.logger.info('Redis operator setup finished')
50
+ end
51
+
20
52
  private
21
53
 
54
+ def install_operator
55
+ helm_cli.install_chart(CHART_NAME,
56
+ release: RELEASE_NAME,
57
+ version: CHART_VERSION,
58
+ namespace: NAMESPACE
59
+ )
60
+ end
61
+
62
+ def upgrade_operator
63
+ helm_cli.upgrade_chart(CHART_NAME,
64
+ release: RELEASE_NAME,
65
+ version: CHART_VERSION,
66
+ namespace: NAMESPACE
67
+ )
68
+ end
69
+
70
+ def wait_for_api_resources
71
+ time_elapsed = 0
72
+
73
+ loop do
74
+ begin
75
+ if time_elapsed >= WAIT_MAX
76
+ raise APIResourcesError, 'timeout waiting for API resources to '\
77
+ "become available. Waited #{time_elapsed}s."
78
+ end
79
+
80
+ kubernetes_cli.api_resources
81
+ break
82
+ rescue KubernetesCLI::KubernetesError
83
+ yield
84
+ sleep WAIT_INTERVAL
85
+ time_elapsed += WAIT_INTERVAL
86
+ end
87
+ end
88
+ end
89
+
22
90
  def instances
23
91
  @instances ||= {}
24
92
  end
93
+
94
+ def operator_deployed?
95
+ helm_cli.release_exists?(RELEASE_NAME, namespace: NAMESPACE)
96
+ end
97
+
98
+ def kubernetes_cli
99
+ provider.kubernetes_cli
100
+ end
101
+
102
+ def helm_cli
103
+ provider.helm_cli
104
+ end
105
+
106
+ def provider
107
+ environment.kubernetes.provider
108
+ end
25
109
  end
26
110
  end
27
111
  end
@@ -1,5 +1,5 @@
1
1
  module Kuby
2
2
  module Redis
3
- VERSION = '0.1.0'.freeze
3
+ VERSION = '0.2.0'.freeze
4
4
  end
5
5
  end
data/lib/kuby/redis.rb CHANGED
@@ -1,9 +1,13 @@
1
1
  require 'kuby'
2
2
  require 'kuby/redis/plugin'
3
+ require 'kuby/redis/entrypoint'
3
4
 
4
5
  module Kuby
5
6
  module Redis
7
+ autoload :DSL, 'kuby/redis/dsl'
6
8
  autoload :Instance, 'kuby/redis/instance'
9
+
10
+ extend Entrypoint
7
11
  end
8
12
  end
9
13
 
metadata CHANGED
@@ -1,43 +1,63 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kuby-redis
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cameron Dutro
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-10-21 00:00:00.000000000 Z
11
+ date: 2022-05-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: kuby-kube-db
14
+ name: kuby-core
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 0.16.0
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '1.0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: 0.16.0
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '1.0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: kube-dsl
15
35
  requirement: !ruby/object:Gem::Requirement
16
36
  requirements:
17
37
  - - "~>"
18
38
  - !ruby/object:Gem::Version
19
- version: '0.4'
39
+ version: '0.7'
20
40
  type: :runtime
21
41
  prerelease: false
22
42
  version_requirements: !ruby/object:Gem::Requirement
23
43
  requirements:
24
44
  - - "~>"
25
45
  - !ruby/object:Gem::Version
26
- version: '0.4'
46
+ version: '0.7'
27
47
  - !ruby/object:Gem::Dependency
28
- name: kube-dsl
48
+ name: helm-cli
29
49
  requirement: !ruby/object:Gem::Requirement
30
50
  requirements:
31
51
  - - "~>"
32
52
  - !ruby/object:Gem::Version
33
- version: '0.4'
53
+ version: '0.3'
34
54
  type: :runtime
35
55
  prerelease: false
36
56
  version_requirements: !ruby/object:Gem::Requirement
37
57
  requirements:
38
58
  - - "~>"
39
59
  - !ruby/object:Gem::Version
40
- version: '0.4'
60
+ version: '0.3'
41
61
  description: Redis plugin for Kuby.
42
62
  email:
43
63
  - camertron@gmail.com
@@ -52,6 +72,128 @@ files:
52
72
  - Rakefile
53
73
  - kuby-redis.gemspec
54
74
  - lib/kuby/redis.rb
75
+ - lib/kuby/redis/dsl.rb
76
+ - lib/kuby/redis/dsl/databases.rb
77
+ - lib/kuby/redis/dsl/databases/v1.rb
78
+ - lib/kuby/redis/dsl/databases/v1/redis_failover.rb
79
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_list.rb
80
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec.rb
81
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_auth.rb
82
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_bootstrap_node.rb
83
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis.rb
84
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity.rb
85
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity.rb
86
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_preferred_during_scheduling_ignored_dur_2699b98c.rb
87
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_preferred_during_scheduling_ignored_dur_57a88803.rb
88
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_preferred_during_scheduling_ignored_dur_669412ec.rb
89
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_preferred_during_scheduling_ignored_dur_f45e68a1.rb
90
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_required_during_scheduling_ignored_duri_514c9d0d.rb
91
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_required_during_scheduling_ignored_duri_7f2feab2.rb
92
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_required_during_scheduling_ignored_duri_cf734467.rb
93
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_node_affinity_required_during_scheduling_ignored_duri_d0fbeba3.rb
94
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity.rb
95
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_0aa6c4f1.rb
96
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_39d7e0e9.rb
97
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_3f891b9d.rb
98
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_72161698.rb
99
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_b9e599ce.rb
100
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_preferred_during_scheduling_ignored_duri_d3b686c5.rb
101
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_required_during_scheduling_ignored_durin_14cc16d9.rb
102
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_required_during_scheduling_ignored_durin_5626284b.rb
103
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_required_during_scheduling_ignored_durin_a83e115a.rb
104
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_required_during_scheduling_ignored_durin_a9c63682.rb
105
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_affinity_required_during_scheduling_ignored_durin_d9b1f08a.rb
106
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity.rb
107
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_1c7b7986.rb
108
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_4a682c1c.rb
109
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_4a99f849.rb
110
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_9559ef01.rb
111
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_a79bf5f3.rb
112
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_preferred_during_scheduling_ignored_fb54ab7a.rb
113
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_required_during_scheduling_ignored__203ed839.rb
114
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_required_during_scheduling_ignored__3f37a05b.rb
115
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_required_during_scheduling_ignored__5b67fae1.rb
116
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_required_during_scheduling_ignored__86b357eb.rb
117
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_affinity_pod_anti_affinity_required_during_scheduling_ignored__e2fb95e3.rb
118
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_custom_command_renames.rb
119
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter.rb
120
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env.rb
121
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env_value_from.rb
122
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env_value_from_config_map_key_ref.rb
123
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env_value_from_field_ref.rb
124
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env_value_from_resource_field_ref.rb
125
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_exporter_env_value_from_secret_key_ref.rb
126
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_image_pull_secrets.rb
127
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_resources.rb
128
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_security_context.rb
129
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_security_context_se_linux_options.rb
130
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_security_context_seccomp_profile.rb
131
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_security_context_sysctls.rb
132
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_security_context_windows_options.rb
133
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage.rb
134
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_empty_dir.rb
135
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim.rb
136
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_metadata.rb
137
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec.rb
138
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec_data_source.rb
139
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec_data_source_ref.rb
140
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec_resources.rb
141
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec_selector.rb
142
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_spec_selector_match_expressions.rb
143
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_status.rb
144
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_storage_persistent_volume_claim_status_conditions.rb
145
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_redis_tolerations.rb
146
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel.rb
147
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity.rb
148
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity.rb
149
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_preferred_during_scheduling_ignored__0d41d4f8.rb
150
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_preferred_during_scheduling_ignored__97efa5a4.rb
151
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_preferred_during_scheduling_ignored__bdaec101.rb
152
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_preferred_during_scheduling_ignored__f0775874.rb
153
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_required_during_scheduling_ignored_d_2895d62e.rb
154
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_required_during_scheduling_ignored_d_2b5753ed.rb
155
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_required_during_scheduling_ignored_d_41e3b807.rb
156
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_node_affinity_required_during_scheduling_ignored_d_67aa2728.rb
157
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity.rb
158
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_0aac483c.rb
159
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_1422bcc7.rb
160
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_4adcb8e9.rb
161
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_4ea60ad7.rb
162
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_78d72154.rb
163
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_preferred_during_scheduling_ignored_d_b6dc802c.rb
164
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_required_during_scheduling_ignored_du_27358e83.rb
165
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_required_during_scheduling_ignored_du_3ed2dfac.rb
166
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_required_during_scheduling_ignored_du_60665747.rb
167
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_required_during_scheduling_ignored_du_b8662dab.rb
168
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_affinity_required_during_scheduling_ignored_du_c7cd5719.rb
169
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity.rb
170
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_13d0762f.rb
171
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_2a2acc24.rb
172
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_38a65fc5.rb
173
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_50d3e927.rb
174
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_74a32220.rb
175
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_preferred_during_scheduling_igno_f8cf26c5.rb
176
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_required_during_scheduling_ignor_02f9c7b7.rb
177
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_required_during_scheduling_ignor_8222d6bf.rb
178
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_required_during_scheduling_ignor_8384f426.rb
179
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_required_during_scheduling_ignor_8cb6cb26.rb
180
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_affinity_pod_anti_affinity_required_during_scheduling_ignor_95a14c65.rb
181
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter.rb
182
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env.rb
183
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env_value_from.rb
184
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env_value_from_config_map_key_ref.rb
185
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env_value_from_field_ref.rb
186
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env_value_from_resource_field_ref.rb
187
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_exporter_env_value_from_secret_key_ref.rb
188
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_image_pull_secrets.rb
189
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_resources.rb
190
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_security_context.rb
191
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_security_context_se_linux_options.rb
192
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_security_context_seccomp_profile.rb
193
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_security_context_sysctls.rb
194
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_security_context_windows_options.rb
195
+ - lib/kuby/redis/dsl/databases/v1/redis_failover_spec_sentinel_tolerations.rb
196
+ - lib/kuby/redis/entrypoint.rb
55
197
  - lib/kuby/redis/instance.rb
56
198
  - lib/kuby/redis/plugin.rb
57
199
  - lib/kuby/redis/version.rb
@@ -73,7 +215,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
73
215
  - !ruby/object:Gem::Version
74
216
  version: '0'
75
217
  requirements: []
76
- rubygems_version: 3.1.4
218
+ rubygems_version: 3.2.22
77
219
  signing_key:
78
220
  specification_version: 4
79
221
  summary: Redis plugin for Kuby.