Module: RakeGitCrypt::Mixins::Support

Included in:
Tasks::AddUsers, Tasks::Install, Tasks::Uninstall
Defined in:
lib/rake_git_crypt/mixins/support.rb

Instance Method Summary collapse

Instance Method Details

#invoke_task_with_name(task, name, args) ⇒ Object



14
15
16
17
18
# File 'lib/rake_git_crypt/mixins/support.rb', line 14

def invoke_task_with_name(task, name, args)
  raise_task_undefined(name) unless task_defined?(task, name)

  task_by_name(task, name).invoke(*args)
end

#raise_task_undefined(name) ⇒ Object

Raises:

  • (RakeFactory::DependencyTaskMissing)


20
21
22
23
24
25
# File 'lib/rake_git_crypt/mixins/support.rb', line 20

def raise_task_undefined(name)
  raise(
    RakeFactory::DependencyTaskMissing,
    "The task with name #{name} does not exist."
  )
end

#task_by_name(task, name) ⇒ Object



6
7
8
# File 'lib/rake_git_crypt/mixins/support.rb', line 6

def task_by_name(task, name)
  task.application.lookup(name, task.scope)
end

#task_defined?(task, name) ⇒ Boolean

Returns:

  • (Boolean)


10
11
12
# File 'lib/rake_git_crypt/mixins/support.rb', line 10

def task_defined?(task, name)
  !task_by_name(task, name).nil?
end