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 -~----------~----~----~----~------~----~------~--~---
