Sha256: 0f0192c143d6984f1e8784f9d1e7f77c220c779914eaa500c3cd25c73503dcd7

Contents?: true

Size: 1.72 KB

Versions: 12

Compression:

Stored size: 1.72 KB

Contents

unless Capistrano::Configuration.respond_to?(:instance)
  abort "deprec2 requires Capistrano 2"
end

require "#{File.dirname(__FILE__)}/deprec/capistrano_extensions"
require "#{File.dirname(__FILE__)}/vmbuilder_plugins/all"
require "#{File.dirname(__FILE__)}/deprec/recipes"

# The below: Copyright 2009-2010 by le1t0@github. All rights reserved.
# add missing standard tasks to the various namespaces, so generic scripts won't break, the standard tasks are for now:
standard_tasks = [
  :install,
  :config_gen,
  :config_project_gen,
  :config_system_gen,
  :config,
  :config_project,
  :config_system,
  :start,
  :stop,
  :restart,
  :reload,
  :activate,
  :deactivate,
  :backup,
  :restore,
  :status
]
Capistrano::Configuration.instance.deprec.namespaces.keys.each do |ns_name|
  ns = Capistrano::Configuration.instance.deprec.send(ns_name)
  standard_tasks.each do |standard_task|
    unless ns.respond_to?(standard_task)
      Capistrano::Configuration.instance.namespace :deprec do
        namespace ns_name do
          task standard_task do
            # nothing to be done here
          end
        end
      end
    end
  end
  unless ns.respond_to?(:check_roles)
    Capistrano::Configuration.instance.namespace :deprec do
      namespace ns_name do
        task :check_roles do
          user_defined_roles = roles.keys
          recipe_declared_roles = Capistrano::Configuration.instance.deprec.send(ns_name).tasks.collect { |k,v| v.options.has_key?(:roles) ? v.options[:roles] : nil }.compact.flatten.uniq
          
          missing_roles = recipe_declared_roles - user_defined_roles
          
          abort "You should define role(s): #{missing_roles.join(', ')}" unless missing_roles.empty?
        end
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
le1t0-deprec-2.1.6.070 lib/deprec.rb
le1t0-deprec-2.1.6.069 lib/deprec.rb
le1t0-deprec-2.1.6.068 lib/deprec.rb
le1t0-deprec-2.1.6.067 lib/deprec.rb
le1t0-deprec-2.1.6.066 lib/deprec.rb
le1t0-deprec-2.1.6.065 lib/deprec.rb
le1t0-deprec-2.1.6.064 lib/deprec.rb
le1t0-deprec-2.1.6.063 lib/deprec.rb
le1t0-deprec-2.1.6.062 lib/deprec.rb
le1t0-deprec-2.1.6.061 lib/deprec.rb
le1t0-deprec-2.1.6.059 lib/deprec.rb
le1t0-deprec-2.1.6.058 lib/deprec.rb