This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
commit 11da2cf10ee050634f3c3c81b2b739ff1a0a3a0c
tree 9a6e44b2f596b9487099dd230365eb87009804d6
parent 9b6e82b523f65fe5ee77d28acdcae845fa67b11d
tree 9a6e44b2f596b9487099dd230365eb87009804d6
parent 9b6e82b523f65fe5ee77d28acdcae845fa67b11d
| name | age | message | |
|---|---|---|---|
| |
README | Tue Mar 18 06:13:32 -0700 2008 | [metaskills] |
| |
remote_shared_cache.rb | Sat Mar 15 08:18:41 -0700 2008 | [metaskills] |
README
Copyright 2008 Ken Collins, Decisiv Inc.
Distributed via MIT license
Feedback appreciated: kcollins at [nospam] decisiv dt net
This class greatly speeds up deploy times to multiple hosts by only updating your latest source code to a
shared drive on a single host. If you have 5 app servers then the code update only happens with the primary
or first server while all others use the shared cache to copy from. The remote cache is a SCM export
created in one of the following two ways.
1) If :remote_repository_access is not set or is false, a local export is made, compressed
and copied to the target host and uncompressed to the remote shared cache.
2) If :remote_repository_access returns true, the target host will perform a direct SCM
export to the remote shared cache.
Despite which method is used above, the creation of the remote shared cache will only target the primary
app server using the primary_app_server() method. Again all other app targets assume that this is a
shared directory accessbile to all. This yeilds faster deployments since capistrano does not have to
locally prepare/compress/copy the source to each host.
This development strategy inherets from the normal Copy deployment strategy and uses many of the same
metods/configurations available to that class when needing to perform local export and copy of the source.
Examples include, :copy_compression, :copy_remote_dir, :copy_dir. Configurations specific to this strategy
includes, :shared_cache_dir (parent of all cached revisions) and :remote_repository_access (which determins
what method is used above to create the shared cache).




