Class: CapistranoDeploybot::Capistrano
- Inherits:
-
Object
- Object
- CapistranoDeploybot::Capistrano
- Defined in:
- lib/capistrano-deploybot/capistrano.rb
Constant Summary collapse
- DEFAULT_OPTIONS =
{ username: :autodeploy, environments: %w(staging) }
Instance Method Summary collapse
-
#initialize(env) ⇒ Capistrano
constructor
A new instance of Capistrano.
- #run ⇒ Object
Constructor Details
#initialize(env) ⇒ Capistrano
Returns a new instance of Capistrano.
13 14 15 16 |
# File 'lib/capistrano-deploybot/capistrano.rb', line 13 def initialize(env) @env = env @opts = DEFAULT_OPTIONS.merge(fetch(:deploybot, {})) end |
Instance Method Details
#run ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/capistrano-deploybot/capistrano.rb', line 18 def run current_revision = fetch(:current_revision) previous_revision = fetch(:previous_revision) rails_env = fetch(:rails_env) return if !@opts[:environments].include?(rails_env.to_s) || current_revision == previous_revision payload = { username: @opts[:username], text: payload_text(current_revision, previous_revision, rails_env) } @opts[:webhooks].each do |webhook| post_to_webhook(payload.merge(webhook: webhook)) end end |