require 'rake_factory' require_relative '../tasks' module RakeGithub module TaskSets class DeployKey < RakeFactory::TaskSet prepend RakeFactory::Namespaceable parameter :repository, required: true parameter :title, required: true parameter :access_token, required: true parameter :public_key, required: true parameter :destroy_task_name, default: :destroy parameter :provision_task_name, default: :provision parameter :ensure_task_name, default: :ensure task Tasks::DeployKey::Provision, name: RakeFactory::DynamicValue.new { |ts| ts.provision_task_name } task Tasks::DeployKey::Destroy, name: RakeFactory::DynamicValue.new { |ts| ts.destroy_task_name } task Tasks::DeployKey::Ensure, name: RakeFactory::DynamicValue.new { |ts| ts.ensure_task_name } end end end