Sha256: 25bafa019b7b9eaff906f53226ab08701d9fec6ec1008bdeaf2c957eef08bfa5

Contents?: true

Size: 1.25 KB

Versions: 15

Compression:

Stored size: 1.25 KB

Contents

module Nucleon
module Mixin
module Action
module Push
        
  #-----------------------------------------------------------------------------
  # Settings
        
  def push_config(optional = true)
    
    if optional
      register_bool :push, false, 'nucleon.core.mixin.action.push.options.push'
    else
      settings[:push] = true
    end
    
    register_bool :pull, true, 'nucleon.core.mixin.action.push.options.pull'
    
    register_bool :propogate_push, false, 'nucleon.core.mixin.action.push.options.propogate_push'
    
    register_str :remote, :edit, 'nucleon.core.mixin.action.push.options.remote'
    register_str :revision, :master, 'nucleon.core.mixin.action.push.options.revision'    
  end
  
  #---
  
  def push_ignore
    [ :push, :pull, :propogate_push, :remote, :revision ]
  end
        
  #-----------------------------------------------------------------------------
  # Operations
        
  def push(project, remote = :edit)
    success = true
          
    if project && settings[:push]
      success = project.push(settings[:remote], extended_config(:push, {
        :revision  => settings[:revision],
        :propogate => settings[:propogate_push],
        :no_pull   => ! settings[:pull]
      }))
    end
    success
  end
end
end
end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
nucleon-0.2.16 lib/core/mixin/action/push.rb
nucleon-0.2.15 lib/core/mixin/action/push.rb
nucleon-0.2.14 lib/core/mixin/action/push.rb
nucleon-0.2.13 lib/core/mixin/action/push.rb
nucleon-0.2.12 lib/core/mixin/action/push.rb
nucleon-0.2.11 lib/core/mixin/action/push.rb
nucleon-0.2.10 lib/core/mixin/action/push.rb
nucleon-0.2.9 lib/core/mixin/action/push.rb
nucleon-0.2.8 lib/core/mixin/action/push.rb
nucleon-0.2.7 lib/core/mixin/action/push.rb
nucleon-0.2.6 lib/core/mixin/action/push.rb
nucleon-0.2.5 lib/core/mixin/action/push.rb
nucleon-0.2.4 lib/core/mixin/action/push.rb
nucleon-0.2.3 lib/core/mixin/action/push.rb
nucleon-0.2.2 lib/core/mixin/action/push.rb