Class: RakeCircleCI::TaskSets::Project

Inherits:
RakeFactory::TaskSet
  • Object
show all
Includes:
RakeFactory::Namespaceable
Defined in:
lib/rake_circle_ci/task_sets/project.rb

Instance Method Summary collapse

Instance Method Details

#define_on(application) ⇒ Object



94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# File 'lib/rake_circle_ci/task_sets/project.rb', line 94

def define_on(application)
  around_define(application) do
    self.class.tasks.each do |task_definition|
      ns = case task_definition.klass.to_s
      when /EnvironmentVariables/
        env_vars_namespace
      when /SSHKeys/
        ssh_keys_namespace
      when /CheckoutKeys/
        checkout_keys_namespace
      else
        project_namespace
      end

      application.in_namespace(ns) do
        task_definition
            .for_task_set(self)
            .define_on(application)
      end
    end
  end
end