https://github.com/metaskills/remote_shared_cache
A custom capistrano deploy strategy that creates a SVN export in a shared location.
https://github.com/metaskills/remote_shared_cache
Last synced: 20 days ago
JSON representation
A custom capistrano deploy strategy that creates a SVN export in a shared location.
- Host: GitHub
- URL: https://github.com/metaskills/remote_shared_cache
- Owner: metaskills
- Created: 2008-03-14T20:30:31.000Z (over 17 years ago)
- Default Branch: master
- Last Pushed: 2008-03-26T20:38:54.000Z (over 17 years ago)
- Last Synced: 2025-09-11T02:43:34.664Z (27 days ago)
- Homepage:
- Size: 74.2 KB
- Stars: 6
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README
Awesome Lists containing this project
README
Copyright 2008 Ken Collins, Decisiv Inc.
Distributed via MIT license
Feedback appreciated: kcollins at [nospam] decisiv dt netThis 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).