On Fri, Mar 5, 2010 at 5:41 PM, Asif Iqbal <[email protected]> wrote:
> On Mon, Feb 22, 2010 at 4:49 PM, Lee Hambley <[email protected]> wrote:
>> You can write something like:
>>
>> task :load_hosts do
>>    # load your file here, itterate over it calling role() when you are done
>> with the list
>> end
>>
>> Then $ cap load_hosts uname
>
> (iqbala)@sys-ubuntu:~$ cat capfile
> set :gateway, "gwhost.example.net"
> print 'role :myhosts'
> File.open("puppetless").each do |line|
>   line.chomp!
>   print ', "' + line + '"'
> end
> puts
> task :uname, :roles => :myhosts do
>  run "uname -a"
> end
>
> (iqbala)@sys-ubuntu:~$ cap uname
> role :myhosts, "chi-host-01.example.net", "dca-host-01.example.net",
> "iah-host-01.example.net", "jfk-host-01.example.net",
> "kcm-host-01.example.net", "osu-host-01.example.net",
> "sea-host-01.example.net", "svl-host-01.example.net"
>  * executing `uname'
>  * executing "uname -a"
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/servers.rb:86:in
> `role_list_from': unknown role `myhosts' (ArgumentError)
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/servers.rb:84:in
> `map'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/servers.rb:84:in
> `role_list_from'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/servers.rb:51:in
> `find_servers'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/servers.rb:9:in
> `find_servers_for_task'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/connections.rb:133:in
> `execute_on_servers'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/actions/invocation.rb:171:in
> `run_tree'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/actions/invocation.rb:143:in
> `run'
>        from capfile:9:in `load'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/execution.rb:139:in
> `instance_eval'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/execution.rb:139:in
> `invoke_task_directly_without_callbacks'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/callbacks.rb:27:in
> `invoke_task_directly'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/execution.rb:89:in
> `execute_task'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/execution.rb:101:in
> `find_and_execute_task'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/cli/execute.rb:45:in
> `execute_requested_actions_without_help'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/cli/execute.rb:44:in
> `each'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/cli/execute.rb:44:in
> `execute_requested_actions_without_help'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/cli/help.rb:19:in
> `execute_requested_actions'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/cli/execute.rb:33:in
> `execute!'
>        from 
> /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/cli/execute.rb:14:in
> `execute'
>        from /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/bin/cap:4
>        from /usr/bin/cap:19:in `load'
>        from /usr/bin/cap:19
>
> I am sure my syntax is wrong. Need your help to fix it.

I updated

set :gateway, "gwhost.example.net"
role :myhosts, File.open("puppetless").map {|l| l.chomp!}
task :uname, :roles => :myhosts do
  run "uname -a"
end

(iqbala)@sys-ubuntu:~$ cap uname
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/server_definition.rb:16:in
`initialize': undefined method `match' for #<Array:0x7fb1c71595c0>
(NoMethodError)
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/roles.rb:57:in
`new'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/roles.rb:57:in
`role'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/roles.rb:57:in
`each'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/roles.rb:57:in
`role'
        from capfile:2:in `load'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/loading.rb:172:in
`load_from_file'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/loading.rb:89:in
`load'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/loading.rb:86:in
`load'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/loading.rb:86:in
`each'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/configuration/loading.rb:86:in
`load'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/cli/execute.rb:64:in
`load_recipes'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/cli/execute.rb:64:in
`each'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/cli/execute.rb:64:in
`load_recipes'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/cli/execute.rb:30:in
`execute!'
        from 
/usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/lib/capistrano/cli/execute.rb:14:in
`execute'
        from /usr/lib/ruby/gems/1.8/gems/capistrano-2.5.9/bin/cap:4
        from /usr/bin/cap:19:in `load'
        from /usr/bin/cap:19

I still need some help

>
> [..]


-- 
Asif Iqbal
PGP Key: 0xE62693C5 KeyServer: pgp.mit.edu
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?

-- 
* You received this message because you are subscribed to the Google Groups 
"Capistrano" group.
* To post to this group, send email to [email protected]
* To unsubscribe from this group, send email to 
[email protected] For more options, visit this group at 
http://groups.google.com/group/capistrano?hl=en

Reply via email to