Just deploy normally then execute your maintenance commands on the target servers. I use before deploy:migrate and before deploy:start hooks for a number of tasks including minification.
On Jan 27, 2009, at 7:30 AM, EM <[email protected]> wrote: > > My situation is that the developers write code in a particular way and > then the code needs to be transformed as part of deployment. There are > no "problems in the code" per se. For example, we have custom > javascript that I'd like to put through a minification script. The > developers should be able to edit/commit non-minified code, and the > minification should be handled upon deployment. It appears that you > may be right, that this is not a task that is well-suited to Cap. > > Thanks. > > On Jan 26, 7:46 pm, Lee Hambley <[email protected]> wrote: >> Hi, >> Have you reviewedhttp://wiki.capify.org/article/ >> Default_Execution_Path- >> as you can see, there is no way to hook into the "strategy.deploy" >> - you may >> be able to create your own copy of that strategy, or - examine >> further and >> see if you can infact call methods before and after those on there. >> >> The obvious thing of course is to fix whatever the problems are in >> the code >> before deploying them. or use the :copy_exclude variables to stop >> files >> being copied to the archive. >> >> - Lee >> >> 2009/1/27 EM <[email protected]> >> >> >> >>> I want my cap deploy:update task to do some tasks after an SVN >>> export, >>> and before uploading to the remote server. >> >>> As far as I can tell, what I want to to happens after the File.open, >>> and before the logger.trace that is in .../lib/capistrano/recipes/ >>> deploy/strategy/copy.rb: >> >>> File.open(File.join(destination, "REVISION"), "w") { |f| >>> f.puts(revision) } >> >>> logger.trace "compressing #{destination} to #{filename}" >>> Dir.chdir(tmpdir) { system(compress(File.basename >>> (destination), File.basename(filename)).join(" ")) } >> >>> I don't know how to do this. My OO developer co-workers suggested >>> creating a sublcass of the "Copy" class (ie. myCopy), define a >>> def in >>> myCopy called deploy! and then figure out how to call my custom >>> "deploy!" instead of the one in the "Copy" class. >> >>> BTW, >>> For SCM access, I'm using: >>> set :deploy_via, :copy >>> set :copy_strategy, :export >> >>> At a high level, what I am trying to do seems like it should be >>> simple. I want to do an export of a tree from SVN (let's say trunk) >>> and then concatenate all the files in a directory and have that >>> edited >>> version uploaded to my remote servers. Any help is appreciated. I've >>> looked all over, The "before" and "after" hooks (http:// >>> wiki.capify.org/article/Frequently_Asked_Questions#How_do_I_.22hook. >>> 22_in_my_methods_to_run_before_or_after_standard_deployment_tasks. >>> 3F ) >>> don't accomplish my goals.. >> >>> Thanks in advance. > > --~--~---------~--~----~------------~-------~--~----~ To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/capistrano -~----------~----~----~----~------~----~------~--~---
