One more headscratcher for tonight:
I'm trying to embed Capistrano into a rails app. I'm using cap 2.4
and capistrano-ext to handle stages. The Capistrano::CLI docs make it
seem simple enough to call
Capistrano::CLI.parse(['staging', "deploy:db:update"]).execute!
or
config = Capistrano::Configuration.new
config.logger_level = Capistrano::Logger::TRACE
config.load "Capfile"
config.load "config/deploy/staging"
config.set(:stage) {'staging'}
config.deploy.db.update
both of these work _beautifully_ the first time. Problem is, if I try
to execute this twice it blows up on "ArgumentError: defining a task
named `symlink' would shadow an existing method with that name" in
capistrano/configuration/namespaces.rb.
Makes sense to raise when trying to redefine something, but the
strange thing is that these definitions seem to persist even after
config or event the class making the call to CLI has gone out of
scope--kind of. If I try to run config.deploy.db.update a second time
without running the config.load, the tasks aren't there.
Any suggestions?
--~--~---------~--~----~------------~-------~--~----~
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/capistrano
-~----------~----~----~----~------~----~------~--~---