Class: DeployState
- Inherits:
-
Object
- Object
- DeployState
- Defined in:
- lib/bub_bot/deploy_manager.rb
Constant Summary collapse
- ROOT_KEY =
'bub_deploy_status'.freeze
Class Method Summary collapse
Instance Method Summary collapse
- #deploying? ⇒ Boolean
-
#initialize(server, target) ⇒ DeployState
constructor
A new instance of DeployState.
- #key ⇒ Object
- #redis ⇒ Object
- #set(is_deploying) ⇒ Object
Constructor Details
#initialize(server, target) ⇒ DeployState
Returns a new instance of DeployState.
98 99 100 101 |
# File 'lib/bub_bot/deploy_manager.rb', line 98 def initialize(server, target) @server = server @target = target end |
Class Method Details
.[](server, target) ⇒ Object
90 91 92 |
# File 'lib/bub_bot/deploy_manager.rb', line 90 def self.[](server, target) (@_deploy_states ||= {})[key(server, target)] ||= DeployState.new(server, target) end |
.key(server, target) ⇒ Object
94 95 96 |
# File 'lib/bub_bot/deploy_manager.rb', line 94 def self.key(server, target) "#{server}__#{target}" end |
Instance Method Details
#deploying? ⇒ Boolean
107 108 109 110 111 112 113 |
# File 'lib/bub_bot/deploy_manager.rb', line 107 def deployed_at = redis.hget(ROOT_KEY, key) # If we have a super-old deployed_at, assume something went wrong in the # deploy and we failed to capture that. return deployed_at && Time.parse(deployed_at) > 30.minutes.ago end |
#key ⇒ Object
103 104 105 |
# File 'lib/bub_bot/deploy_manager.rb', line 103 def key self.class.key(@server, @target) end |
#redis ⇒ Object
124 125 126 |
# File 'lib/bub_bot/deploy_manager.rb', line 124 def redis BubBot::RedisConnection.instance end |