Class: Kube::Cluster::Middleware::SetReloaderAuto
- Inherits:
-
Kube::Cluster::Middleware
- Object
- Kube::Cluster::Middleware
- Kube::Cluster::Middleware::SetReloaderAuto
- Defined in:
- lib/kube/cluster/middleware/set_reloader_auto.rb
Overview
Adds reloader.stakater.com/auto: “true” to Deployments, StatefulSets, and DaemonSets so Stakater Reloader triggers rolling restarts when referenced ConfigMaps or Secrets change.
use SetReloaderAuto
Constant Summary collapse
- KINDS =
%w[Deployment StatefulSet DaemonSet].freeze
Constants inherited from Kube::Cluster::Middleware
Instance Method Summary collapse
- #call(manifest) ⇒ Object
-
#initialize ⇒ SetReloaderAuto
constructor
A new instance of SetReloaderAuto.
Methods inherited from Kube::Cluster::Middleware
Constructor Details
#initialize ⇒ SetReloaderAuto
Returns a new instance of SetReloaderAuto.
18 19 20 |
# File 'lib/kube/cluster/middleware/set_reloader_auto.rb', line 18 def initialize super(filter: ->(r) { KINDS.include?(r.kind) }) end |
Instance Method Details
#call(manifest) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/kube/cluster/middleware/set_reloader_auto.rb', line 22 def call(manifest) manifest.resources.map! { |resource| filter(resource) { h = resource.to_h h[:metadata] ||= {} h[:metadata][:annotations] ||= {} h[:metadata][:annotations][:'reloader.stakater.com/auto'] = 'true' resource.rebuild(h) } } end |