So, regarding my last email, are you sure you're not loading (e.g.) deploy.rb twice?
Second thing to check, make sure you (or a plugin) haven't declared a method named 'tail' on Object (or otherwise in the global namespace). - Jamis On 2/13/09 1:45 PM, Michael Guymon wrote: > First off, thanks for your help diagnosing my problems thus far Jamis, > I appreciate it. > > My Capistrano::CLI implementation, http://pastie.org/388542 , works > from rspec and the rails console, but gives the "ArgumentError: > defining a task named `tail' would shadow an existing method with that > name" in rails. > > I have tried changing the Capfile and manually adding the Capfile to > the CLI impl class, but the ArgumentError still persists when run from > Rails > > I guess it is not surprising that the ArgumentError is coming from > Capistrano::CLI::Execute method load_recipes(config): > Array(options[:recipes]).each { |recipe| config.load(recipe) } > throws the ArgumentError > > Is there a good way to debug how the tasks are being loaded into the > Capistrano::Configuration I am building? > > thanks, > Michael > > On Feb 13, 1:23 am, Jamis Buck <[email protected]> wrote: >> If you're loading Capfile, you don't need to also load deploy.rb (since >> Capfile loads deploy.rb). Perhaps the double load is causing problems? >> >> - Jamis >> >> On 2/12/09 11:15 PM, Michael Guymon wrote: >> >>> MMD::Actions::Cap is the class that is calling Capistrano as I described >>> earlier (by including Capistrano::CLI::Execute, Capistrano::CLI::Options >>> and handles steps for execute_requested_actions), the message >>> 'MMD::Actions::Cap should run capistrano tasks' is the output from rspec. >>> The Arguments error was a bug, sorry for that. Now the rspec correctly >>> executes a 'cap staging deploy' from an external deploy.rb. >>> In Rails tho, I am still getting: >>> capistrano/configuration/namespaces.rb:97:in `task': defining a task >>> named `tail' would shadow an existing method with that name (ArgumentError) >>> which is being thrown from load_recipes(config) when the external deploy.rb >>> is loaded. The error we indicate a collision of some sort, like the >>> deployer.rb is being loaded twice somehow? >>> Here is a slimmed down version of the ruby I am attempt to execute from >>> Rails:http://pastie.org/387991 >>> thanks, >>> Michael >>> Jamis Buck wrote: >>>> On 2/12/09 9:17 PM, Michael Guymon wrote: >>>>> I should have been more clear in the first place, I am actually trying >>>>> to cap deploy another application from Rails, so it is trying to load >>>>> a deploy.rb that is not in the RAILS_ROOT. >>>>> In my rspec spec, if I load the Capfile first, then the external >>>>> deploy.rb, attempt to execute 'staging deploy' in Rails, I get the >>>>> strange error: >>>>> ArgumentError in 'MMD::Actions::Cap should run capistrano tasks' >>>>> wrong # of arguments(1 for 0) >>>> I have absolutely no idea what MMD::Actions::Cap is. It's definitely not >>>> Capistrano. >>>> - Jamis >> > > --~--~---------~--~----~------------~-------~--~----~ To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/capistrano -~----------~----~----~----~------~----~------~--~---
