Class: Hyrb::Task
Direct Known Subclasses
Hyrb::Tasks::Ansible::CreatePlaybook, Hyrb::Tasks::Ansible::CreatePlaybookDir, Hyrb::Tasks::Ansible::DestroyPlaybookDir, Hyrb::Tasks::Ansible::Init, Hyrb::Tasks::Ansible::Inject, Hyrb::Tasks::Creds::Build, Hyrb::Tasks::Creds::Edit, Hyrb::Tasks::Creds::Init, Hyrb::Tasks::Creds::Inject, Hyrb::Tasks::Creds::Show, Hyrb::Tasks::Defaults::Build, Hyrb::Tasks::Defaults::Edit, Hyrb::Tasks::Defaults::Init, Hyrb::Tasks::Defaults::Inject, Hyrb::Tasks::Defaults::Show, Hyrb::Tasks::Developers::AddToProject, Hyrb::Tasks::Developers::Download, Hyrb::Tasks::Developers::Init, Hyrb::Tasks::Developers::Inject, Hyrb::Tasks::Developers::Show, Hyrb::Tasks::DigitalOcean::Init, Hyrb::Tasks::DigitalOcean::Inject, Hyrb::Tasks::DigitalOcean::SSHKeys, Hyrb::Tasks::DigitalOcean::ShowSSHKeys, Hyrb::Tasks::DigitalOcean::SyncSSHKeys, Hyrb::Tasks::Environment::Database, Hyrb::Tasks::Environment::Deployment, Hyrb::Tasks::Environment::Init, Hyrb::Tasks::Environment::Inject, Hyrb::Tasks::Environment::SetupExisting, Hyrb::Tasks::Github::CreateProjectTeam, Hyrb::Tasks::Github::CreateRepo, Hyrb::Tasks::Github::Init, Hyrb::Tasks::Github::Inject, Hyrb::Tasks::Github::Repos, Hyrb::Tasks::Github::ShowRepos, Hyrb::Tasks::Github::SyncProjectTeam, Hyrb::Tasks::Google::Init, Hyrb::Tasks::Hipchat::ArchiveOldRooms, Hyrb::Tasks::Hipchat::CreateRoom, Hyrb::Tasks::Hipchat::Init, Hyrb::Tasks::Hipchat::Inject, Hyrb::Tasks::Hipchat::Rooms, Hyrb::Tasks::Hipchat::ShowRooms, Hyrb::Tasks::Project::Bootstrap, Hyrb::Tasks::Project::Create, Hyrb::Tasks::Project::CreateHipchatHook, Hyrb::Tasks::Project::Edit, Hyrb::Tasks::Project::Init, Hyrb::Tasks::Project::Inject, Hyrb::Tasks::Project::Show, Hyrb::Tasks::Provision::DigitalOcean, Hyrb::Tasks::Provision::Init, Hyrb::Tasks::Provision::Rackspace, Hyrb::Tasks::Rackspace::CreateDNSRecord, Hyrb::Tasks::Rackspace::DNSZones, Hyrb::Tasks::Rackspace::Init, Hyrb::Tasks::Rackspace::Inject
Instance Attribute Summary collapse
-
#env ⇒ Object
readonly
Returns the value of attribute env.
-
#pipeline ⇒ Object
readonly
Returns the value of attribute pipeline.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(pipeline) ⇒ Task
constructor
A new instance of Task.
-
#run(env) ⇒ Object
TODO: run task after.
- #run_before(env) ⇒ Object
Constructor Details
#initialize(pipeline) ⇒ Task
Returns a new instance of Task.
23 24 25 |
# File 'lib/hyrb/task.rb', line 23 def initialize(pipeline) @pipeline = pipeline end |
Instance Attribute Details
#env ⇒ Object (readonly)
Returns the value of attribute env.
7 8 9 |
# File 'lib/hyrb/task.rb', line 7 def env @env end |
#pipeline ⇒ Object (readonly)
Returns the value of attribute pipeline.
7 8 9 |
# File 'lib/hyrb/task.rb', line 7 def pipeline @pipeline end |
Class Method Details
.depends(*args) ⇒ Object
11 12 13 |
# File 'lib/hyrb/task.rb', line 11 def self.depends(*args) Commands::Pipeline.rules.merge!({self => args}) end |
.prompt(hash_name, key, options = {}) ⇒ Object
15 16 17 |
# File 'lib/hyrb/task.rb', line 15 def self.prompt(hash_name, key, = {}) self.prompts << [hash_name, key, ] end |
.prompts ⇒ Object
19 20 21 |
# File 'lib/hyrb/task.rb', line 19 def self.prompts @prompts ||= [] end |
Instance Method Details
#run(env) ⇒ Object
TODO: run task after
29 30 |
# File 'lib/hyrb/task.rb', line 29 def run(env) end |
#run_before(env) ⇒ Object
32 33 34 35 36 37 38 39 40 |
# File 'lib/hyrb/task.rb', line 32 def run_before(env) self.class.prompts.each do |(hash_name, key, )| if .is_a?(Hash) && [:default].respond_to?(:call) [:default] = [:default].call(env) end prompt "Please enter #{key}", env[hash_name], key, end end |