capistrano 2.15.11 → 3.0.0.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (158) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +17 -8
  3. data/Gemfile +1 -12
  4. data/LICENSE.txt +18 -0
  5. data/README.md +65 -68
  6. data/Rakefile +4 -10
  7. data/bin/cap +2 -3
  8. data/bin/capify +7 -91
  9. data/capistrano.gemspec +20 -34
  10. data/lib/Capfile +2 -0
  11. data/lib/capistrano/application.rb +28 -0
  12. data/lib/capistrano/bundler.rb +1 -0
  13. data/lib/capistrano/configuration/question.rb +42 -0
  14. data/lib/capistrano/configuration/server.rb +24 -0
  15. data/lib/capistrano/configuration/servers.rb +43 -95
  16. data/lib/capistrano/configuration.rb +81 -44
  17. data/lib/capistrano/console.rb +1 -0
  18. data/lib/capistrano/defaults.rb +11 -0
  19. data/lib/capistrano/deploy.rb +3 -0
  20. data/lib/capistrano/dotfile.rb +3 -0
  21. data/lib/capistrano/dsl/env.rb +57 -0
  22. data/lib/capistrano/dsl/paths.rb +74 -0
  23. data/lib/capistrano/dsl/stages.rb +15 -0
  24. data/lib/capistrano/dsl/task_enhancements.rb +15 -0
  25. data/lib/capistrano/dsl.rb +38 -0
  26. data/lib/capistrano/git.rb +1 -0
  27. data/lib/capistrano/i18n.rb +33 -0
  28. data/lib/capistrano/install.rb +1 -0
  29. data/lib/capistrano/setup.rb +17 -0
  30. data/lib/capistrano/tasks/bundler.rake +13 -0
  31. data/lib/capistrano/tasks/console.rake +21 -0
  32. data/lib/capistrano/tasks/deploy.rake +153 -0
  33. data/lib/capistrano/tasks/framework.rake +45 -0
  34. data/lib/capistrano/tasks/git.rake +65 -0
  35. data/lib/capistrano/tasks/install.rake +39 -0
  36. data/lib/capistrano/templates/Capfile +43 -0
  37. data/lib/capistrano/templates/deploy.rb.erb +17 -0
  38. data/lib/capistrano/templates/stage.rb.erb +20 -0
  39. data/lib/capistrano/version.rb +1 -11
  40. data/lib/capistrano.rb +9 -3
  41. data/spec/lib/capistrano/configuration/question_spec.rb +54 -0
  42. data/spec/lib/capistrano/configuration/server_spec.rb +48 -0
  43. data/spec/lib/capistrano/configuration/servers_spec.rb +79 -0
  44. data/spec/lib/capistrano/configuration_spec.rb +80 -0
  45. data/spec/lib/capistrano/dsl/env_spec.rb +83 -0
  46. data/spec/lib/capistrano/dsl/paths_spec.rb +69 -0
  47. data/spec/lib/capistrano/dsl_spec.rb +51 -0
  48. data/spec/lib/capistrano_spec.rb +8 -0
  49. data/spec/spec_helper.rb +14 -0
  50. metadata +89 -215
  51. data/.travis.yml +0 -9
  52. data/CHANGELOG +0 -1203
  53. data/lib/capistrano/callback.rb +0 -45
  54. data/lib/capistrano/cli/execute.rb +0 -85
  55. data/lib/capistrano/cli/help.rb +0 -125
  56. data/lib/capistrano/cli/help.txt +0 -81
  57. data/lib/capistrano/cli/options.rb +0 -243
  58. data/lib/capistrano/cli/ui.rb +0 -40
  59. data/lib/capistrano/cli.rb +0 -47
  60. data/lib/capistrano/command.rb +0 -303
  61. data/lib/capistrano/configuration/actions/file_transfer.rb +0 -50
  62. data/lib/capistrano/configuration/actions/inspect.rb +0 -46
  63. data/lib/capistrano/configuration/actions/invocation.rb +0 -329
  64. data/lib/capistrano/configuration/alias_task.rb +0 -26
  65. data/lib/capistrano/configuration/callbacks.rb +0 -147
  66. data/lib/capistrano/configuration/connections.rb +0 -237
  67. data/lib/capistrano/configuration/execution.rb +0 -142
  68. data/lib/capistrano/configuration/loading.rb +0 -205
  69. data/lib/capistrano/configuration/log_formatters.rb +0 -75
  70. data/lib/capistrano/configuration/namespaces.rb +0 -223
  71. data/lib/capistrano/configuration/roles.rb +0 -83
  72. data/lib/capistrano/configuration/variables.rb +0 -127
  73. data/lib/capistrano/errors.rb +0 -19
  74. data/lib/capistrano/ext/multistage.rb +0 -67
  75. data/lib/capistrano/ext/string.rb +0 -5
  76. data/lib/capistrano/extensions.rb +0 -57
  77. data/lib/capistrano/fix_rake_deprecated_dsl.rb +0 -8
  78. data/lib/capistrano/logger.rb +0 -166
  79. data/lib/capistrano/processable.rb +0 -55
  80. data/lib/capistrano/recipes/compat.rb +0 -32
  81. data/lib/capistrano/recipes/deploy/assets.rb +0 -202
  82. data/lib/capistrano/recipes/deploy/dependencies.rb +0 -44
  83. data/lib/capistrano/recipes/deploy/local_dependency.rb +0 -54
  84. data/lib/capistrano/recipes/deploy/remote_dependency.rb +0 -117
  85. data/lib/capistrano/recipes/deploy/scm/accurev.rb +0 -169
  86. data/lib/capistrano/recipes/deploy/scm/base.rb +0 -200
  87. data/lib/capistrano/recipes/deploy/scm/bzr.rb +0 -86
  88. data/lib/capistrano/recipes/deploy/scm/cvs.rb +0 -153
  89. data/lib/capistrano/recipes/deploy/scm/darcs.rb +0 -96
  90. data/lib/capistrano/recipes/deploy/scm/git.rb +0 -299
  91. data/lib/capistrano/recipes/deploy/scm/mercurial.rb +0 -137
  92. data/lib/capistrano/recipes/deploy/scm/none.rb +0 -55
  93. data/lib/capistrano/recipes/deploy/scm/perforce.rb +0 -152
  94. data/lib/capistrano/recipes/deploy/scm/subversion.rb +0 -121
  95. data/lib/capistrano/recipes/deploy/scm.rb +0 -19
  96. data/lib/capistrano/recipes/deploy/strategy/base.rb +0 -92
  97. data/lib/capistrano/recipes/deploy/strategy/checkout.rb +0 -20
  98. data/lib/capistrano/recipes/deploy/strategy/copy.rb +0 -338
  99. data/lib/capistrano/recipes/deploy/strategy/export.rb +0 -20
  100. data/lib/capistrano/recipes/deploy/strategy/remote.rb +0 -52
  101. data/lib/capistrano/recipes/deploy/strategy/remote_cache.rb +0 -57
  102. data/lib/capistrano/recipes/deploy/strategy/unshared_remote_cache.rb +0 -21
  103. data/lib/capistrano/recipes/deploy/strategy.rb +0 -20
  104. data/lib/capistrano/recipes/deploy.rb +0 -625
  105. data/lib/capistrano/recipes/standard.rb +0 -37
  106. data/lib/capistrano/recipes/templates/maintenance.rhtml +0 -53
  107. data/lib/capistrano/role.rb +0 -102
  108. data/lib/capistrano/server_definition.rb +0 -56
  109. data/lib/capistrano/shell.rb +0 -265
  110. data/lib/capistrano/ssh.rb +0 -95
  111. data/lib/capistrano/task_definition.rb +0 -77
  112. data/lib/capistrano/transfer.rb +0 -218
  113. data/test/cli/execute_test.rb +0 -132
  114. data/test/cli/help_test.rb +0 -165
  115. data/test/cli/options_test.rb +0 -329
  116. data/test/cli/ui_test.rb +0 -28
  117. data/test/cli_test.rb +0 -17
  118. data/test/command_test.rb +0 -322
  119. data/test/configuration/actions/file_transfer_test.rb +0 -61
  120. data/test/configuration/actions/inspect_test.rb +0 -76
  121. data/test/configuration/actions/invocation_test.rb +0 -306
  122. data/test/configuration/alias_task_test.rb +0 -118
  123. data/test/configuration/callbacks_test.rb +0 -201
  124. data/test/configuration/connections_test.rb +0 -439
  125. data/test/configuration/execution_test.rb +0 -175
  126. data/test/configuration/loading_test.rb +0 -148
  127. data/test/configuration/namespace_dsl_test.rb +0 -332
  128. data/test/configuration/roles_test.rb +0 -157
  129. data/test/configuration/servers_test.rb +0 -183
  130. data/test/configuration/variables_test.rb +0 -190
  131. data/test/configuration_test.rb +0 -77
  132. data/test/deploy/local_dependency_test.rb +0 -76
  133. data/test/deploy/remote_dependency_test.rb +0 -146
  134. data/test/deploy/scm/accurev_test.rb +0 -23
  135. data/test/deploy/scm/base_test.rb +0 -55
  136. data/test/deploy/scm/bzr_test.rb +0 -51
  137. data/test/deploy/scm/darcs_test.rb +0 -37
  138. data/test/deploy/scm/git_test.rb +0 -274
  139. data/test/deploy/scm/mercurial_test.rb +0 -134
  140. data/test/deploy/scm/none_test.rb +0 -35
  141. data/test/deploy/scm/perforce_test.rb +0 -23
  142. data/test/deploy/scm/subversion_test.rb +0 -68
  143. data/test/deploy/strategy/copy_test.rb +0 -360
  144. data/test/extensions_test.rb +0 -69
  145. data/test/fixtures/cli_integration.rb +0 -5
  146. data/test/fixtures/config.rb +0 -5
  147. data/test/fixtures/custom.rb +0 -3
  148. data/test/logger_formatting_test.rb +0 -149
  149. data/test/logger_test.rb +0 -134
  150. data/test/recipes_test.rb +0 -25
  151. data/test/role_test.rb +0 -11
  152. data/test/server_definition_test.rb +0 -121
  153. data/test/shell_test.rb +0 -96
  154. data/test/ssh_test.rb +0 -113
  155. data/test/task_definition_test.rb +0 -117
  156. data/test/transfer_test.rb +0 -168
  157. data/test/utils.rb +0 -37
  158. data/test/version_test.rb +0 -11
data/CHANGELOG DELETED
@@ -1,1203 +0,0 @@
1
- ## 2.15.11
2
-
3
- * Fix `capify` failure on Ruby 3 due to removal of `File.exists?` (#2135) @mackuba
4
-
5
- ## 2.15.10
6
-
7
- * Fix Ruby 3.2 compatibility issues (@intrip)
8
-
9
- ## 2.15.9
10
-
11
- * Continue if `HOSTROLEFILTER=` is set
12
- * Don't treat `run()` as a parallel task in logging
13
-
14
- ## 2.15.8 / May 30, 2016
15
-
16
- * Empty release bump
17
-
18
- ## 2.15.7 / May 30, 2016
19
-
20
- * Fix subversion authentication arguments
21
- * Fix rescue block for asset_manifest_prefix
22
-
23
- ## 2.15.6 / June 17 2015
24
-
25
- * Handle new Sprockets manifest name (@skaes)
26
-
27
- ## 2.15.5 / July 4 2013
28
-
29
- * Fix multistage argument parsing when using the `-s` option. (@jmazzi)
30
- * Tweaks to the asset recipes. (@curtislinden)
31
- * Use quotes around SCM usernames and passwords (@carloslopes)
32
- * Avoid git warning when cloning Git repository using sha1 (@bpaquet)
33
-
34
- ## 2.15.4 / April 29 2013
35
-
36
- * Fix parallel command logging (@gnufied)
37
- * Fix a double-asset manifest problem on Rails upgrades. (@jimryan)
38
-
39
- ## 2.15.3 / April 25 2012
40
-
41
- * For deploy:cleanup, use try_sudo with rm command. (@joshstaiger)
42
- * Restore maintenance.rhtml (@chulkilee)
43
- * Fixes GH-434, If branches is an array of array, iterate them separately. (@gnufied)
44
-
45
- A big "thank you" to the people who've pushed really amazing patches to the
46
- 2.15.x branch so soon after it's release. 2.15.0 was just too huge to go out
47
- bug free.
48
-
49
- ## 2.15.2 / April 24 2013
50
-
51
- * Fixed a bug with asset_paths (String vs. Array). (@joeycarmello)
52
-
53
- ## 2.15.1 / April 23 2013
54
-
55
- * Support for Rails 4 (and other) randomised asset manifest names. (@jimryan)
56
-
57
- ## 2.15.0 / April 23 2013
58
-
59
- * New varaible :shared_assets_prefix to allow people to host somewhere other
60
- than `/assets/`. Default is `assets`.
61
- * Bring back web:enable and web:disable tasks. Sincerely apologies to all affected
62
- removing these was one of the most glaring mistakes we've made on this project
63
- and I feel personally responsible.
64
- * Makes :git_shallow_clone work with branches (@cannikin)
65
- * Avoid removing required assets (@bosko)
66
- * Fix escaping of asset_paths when calling `deploy:finalize_update` (@mcary)
67
- * Improve parallel command logging (@mpapis)
68
- * Allow updating variables in the cap shell `cap> set :some_setting new_value`
69
- (@jpfuentes2)
70
- * Add the option to configure `Capistrano::Logger.default_formatters=` this
71
- relates to the previous merging of the capistrano-colors gem. (@kellyredding)
72
- * Don't attempt to connect to a nil `:gateway` (@mattheath)
73
- * Simplify our .gemspec dependency list (@timoschilling)
74
- * Make the existece of `config/deploy/{stage}.rb` optional, it'll be loaded if
75
- it exists, otherwise we continue without it (@ymainier)
76
- * Misc spelling/typo fixes. (@mv)
77
- * Update mtime and atime with touch when fixing asset timestamps (@wildoats)
78
- * Change call of `rake {env} precompile:all` to drop the errornous `{env}` (@zxiest)
79
- * Evaluate assets_role at runtime using a lambda (@nlenepveu)
80
- * Handle when hosts (for example by joining/leaving the no_release meta group)
81
- have different old releases for `deploy:cleanup` (@oggy)
82
- * Check for nil when tearing down connections (@yyuu)
83
- * Go back to using SCP for uploads as against SFTP (@pjungwir)
84
- * Added an option to dereference symlinks when using the :copy strategy
85
- (`set :copy_dereference_symlink, true`) useful when your working directory
86
- contains files symlinked in from outside your project root (@mehmetc)
87
- * Small typo fix in README (@yule)
88
- * Add Ruby 2.0.0-p0 to the TravisCI build (@jarrettmeyer)
89
- * Add the option to set the shared asset prefix for Rails,
90
- (`set :shared_assets_prefix, "my_shared_assets"`) corresponds with it's
91
- namesake in Rails. By default is set to `assets`. (@spectator)
92
- * Improved error messages for `cap {stage} deploy:check` (@petems)
93
- * Make `run_locally` work with the `--dry-run` flag. (@flagthisiskun)
94
- * Fix a link in the README to writing a good commit message. (@mhutchin)
95
- * Code style fixes (@mv)
96
- * Report differently if the command was killed by a signal (for example the
97
- oom killer on Ubuntu/Debian). (@tanob)
98
-
99
-
100
- ## 2.14.0 / January 9 2013
101
-
102
- * Removed ui.output_cols limit of 80 chars (@aussielunix)
103
- * Added :p4charset variable for Perforce command line (@randyinla)
104
- * Added support for rolling back assets, and removing expired assets (@ndbroadbent)
105
- * Merged in `capistrano_colors` gem, and renamed to 'log_formatters', since it does much more than just colors
106
- (@ndbroadbent)
107
- * Use more intelligence in setting the :scm variable based on known version control directory names (@czarneckid)
108
- * Remove the deploy:web:{disable, enable} tasks (@carsomyr)
109
- * Group finalize_update shell commands into one command, harden shell calls with #shellescape, and separate arguments
110
- with -- (@ndbroadbent)
111
-
112
- ## 2.13.0 / August 21 2012
113
-
114
- This release contains multiple bugfixes and handling of exotic situations. The
115
- `Configuration#capture` method should now work in spite of `ActiveSupport`
116
- shenanigans. Thank you, the community, for all of your contributions:
117
-
118
- * Close input streams when sending commands that don't read input. Dylan Smith
119
- (dylanahsmith)
120
- * Listen for method definition on `Kernel` and undefine on `Namespace`. Chris
121
- Griego (cgriego)
122
- * Fixed shell `Thread.abort_on_exception` bug. George Malamidis (nutrun)
123
- * Adding a log method to `Capistrano::Deploy::SCM::None` to maintain
124
- consistency with other SCM classes. Kevin Lawver (kplawver)
125
- * Add deprecation warning if someone uses old `deploy:symlink` syntax on
126
- callbacks. Ken Mazaika (kenmazaika)
127
- * Simplify the `finalize_update` code by respecting the `:shared_children`
128
- variable during removal and recreation of the parent. John Knight
129
- (knightlabs)
130
-
131
- ## 2.12.0 / April 13 2012
132
-
133
- This release reverts the very verbose logging introduced in the previous version, it also
134
- enables a handful of power-user features which are largely un-documented, but shouldn't be
135
- important unless you are looking for them. Undocumented code shouldn't scare you, simply
136
- read through deploy.rb in the Gem if you want to know how a new feature works!
137
-
138
- * Update mapped commands to remove symlink deprecation warning. Despo Pentara (despo)
139
- * Add the "rpm" remote dependency. Nick Hoffman (nickhoffman)
140
- * Add commented deploy:cleanup task to default recipe. Jean-Philippe Doyle (j15e)
141
- * Teach deploy:web:enable to fail gracefully. Lee Marlow (lmarlow)
142
- * Ticket 193 alias task show wrong name when it is not overridden. Rafa García (rgo)
143
- * Allow configuration of which roles assets are precompiled on. Frederick Cheung (fcheung)
144
- * Fix transfer action to honor dry-run flag. Serg Podtynnyi (shtirlic)
145
- * Changed single to double quotes for Windows, fixes a Windows bug in the HG module. Matthew J Morrison (mattjmorrison)
146
- * Add UnsharedRemoteCache (copied from eycap gem). Ben Symonds (bensymonds)
147
-
148
- As ever, a sincere thanks to all contributors, and do not hesitate to contact me if this
149
- release causes problems for you.
150
-
151
- ## 2.11.0 / Febuary 20 2012
152
-
153
- This release replaces and fixes a broken 2.10.0 release (see below for
154
- information)
155
-
156
- This release includes all fixes as documented for 2.10.0, plus additional code
157
- cleanup (SHA: 3eecac2), as well as changing the public API from
158
- `deploy:symlink`, to `deploy:create_symlink`
159
-
160
- * Remove a testing dependency on `ruby-debug` (Lee Hambley, reported by Serg
161
- Podtynnyi)
162
-
163
- * Formerly deprecate `deploy:symlink`, this move was prompted by the Rake
164
- namespace fiasco of their 0.9.0 release, and is replaced by
165
- `deploy:create_symlink`. If you are looking for a place to hook asset related
166
- tasks, please consider `deploy:finalize_update`. Replaced by
167
- `deploy:create_symlink`, `deploy:symlink` now raises a deprecation warning,
168
- and defers to `deploy:symlink`. (Lee Hambley)
169
-
170
- * Update the 2.10.0 changelog. (Lee Hambley, reported by Jérémy Lecour)
171
-
172
- ## 2.10.0 / Febuary 19 2012
173
-
174
- If you are reading this after Febuary 20th 2012, do not be surprised when you
175
- cannot find 2.10.0 on Rubygems.org, it has been removed because of a breaking
176
- API change. It is replaced logically enough by 2.11.0 where the API is still
177
- changed, but now issues a warning and falls back to the expected behaviour.
178
-
179
- The CHANGELOG for this release was updated retrospectively, I'm sorry I missed
180
- that when releasing the gem, 2.10.0 apparently not my finest hour as a
181
- maintainer.
182
-
183
- Ths fixes in this release include
184
-
185
- * Include sample NGinx config for `deploy:web:disable`(added by Roger Ertesvåg)
186
-
187
- * Fix gemspec time format warning (reported by Tony Arcieri, fixed by building the Gem against Ruby-1.9.3)
188
-
189
- * Finally removed deprecated `before_` and `after_` tasks. (Lee Hambley)
190
-
191
- * Rake 0.9.x compatibility (reported by James Miller, fixed by Lee Hambley)
192
-
193
- * More detailed logging output (fixed by Huang Liang)
194
-
195
- * Includes multistage, without `capistrano-ext`. `require 'capistrano/ext/multistage'` (fixed by Lee Hambley)
196
-
197
- ## 2.9.0 / September 24 2011
198
-
199
- A vairly heavy release, including some new features which most of you won't
200
- need, but power users have contributed, this also marks the beginning of the
201
- end of the 2.x series, more information will follow in due course, but with
202
- the proliferation of Bundler, and better ways to do deployment, we will be
203
- introducing heavier changes to Capistrano to keep the tool current.
204
-
205
- **Please note, following some reported problems with the asset pipeline code
206
- being not found, remember Capistrano needs to be in your Gemfile, and as such
207
- needs to be run with Bundler, otherwise you risk loading a system-wide version
208
- of Capistrano who's behaviour might be different from that specified in your
209
- Gemfile. This is also good practice because much of the deploy logic resides
210
- in the Gem, and you wouldn't want that to change without your knowledge. Rails
211
- applications include Cap in the Gemfile anyway, you should follow this
212
- convention.**
213
-
214
- * find_servers() will no longer raise if there are no servers, this behaviour
215
- can be modified by way of the `:on_no_matching_servers` option. Thanks to
216
- `@ppgengler`.
217
-
218
- * Short Git SHA1 fragments are now supported in commands such as `cap deploy
219
- -s revision=d7e99f` thanks to `@ndbroadbent`.
220
-
221
- * One can now specify individual SCM commands by setting
222
- `:scm_arguments_<command_name>`. Thanks to `@alextk`.
223
-
224
- * Travis CI build now passes thanks to @andrew, build tested against MRI
225
- `1.8.7`. `1.9.2` and `REE`.
226
-
227
- * Support for Perforce labels, I don't know much about this, but I believe
228
- it's much like deploying a Git tag, thanks to `@ak47`.
229
-
230
- * Git SCM now correctly adheres to the `:scm_verbose` setting. Thanks
231
- `@dubek`.
232
-
233
- * `set()` can now be used to set a `false` value, previously this was a no-op.
234
- Thanks to `@nilbus`.
235
-
236
- * Support for Git 1.6x submodules, The Git SCM strategy now queries Git on the
237
- server-side to ensure it supports the `--recursive` flag, if it doesn't then
238
- it will fall back to using the long-hand. Many thanks to all those involved in
239
- the discussion surrounding this topic, and to `@nilbus` for a beautifully
240
- clean solution which doesn't hold us back.
241
-
242
- * When using `:cached_copy` with Subversion, use `svn switch` to for more
243
- reliable switching of branches/etc. Thanks to `@iGEL` for the patch that we
244
- accepted finally, and to `@richmeyers` who also submitted a patch and
245
- contributed to the discssion.
246
-
247
- Other cleanups and minor improvements to the code and tests were committed by yours truly
248
- (@leehambley), @maxim, @ak47 and @andrew).
249
-
250
- ## 2.8.0 / August 3 2011
251
-
252
- A short release, after the last. Announcing Rails 3.1 asset pipeline support.
253
-
254
- The asset pipeline support requires an additiona `load` in your `Capfile`.
255
-
256
- You can see information pertaining to the pull request, including the inline
257
- comments here: https://github.com/capistrano/capistrano/pull/35
258
-
259
- Documentation will be available soon in the wiki.
260
-
261
- * Drop-In Rails 3.1 asset pipeline support. (Chris Griego)
262
-
263
- ## 2.7.0 / August 3 2011
264
-
265
- A fairly substantial release. There are fixes so that current_release works
266
- during dry-runs, (although, apparently still not with bundler.)
267
-
268
- The test-suite was also modified to work with Ruby 1.9.2, except in one case
269
- where Ruby 1.9.x calls `to_ary` and `to_a` on mocks, which still makes an
270
- error. 1.9.x has always been supported, but due to lack of maintenance on my
271
- part the tests didn't ever pass.
272
-
273
- The `start`, `stop` and `restart` tasks have been reduced to mere hooks into
274
- which extensions can define their own functionality.
275
-
276
- The `readme` was also slightly improved, simply tweaks to express how best to
277
- run the test suite.
278
-
279
- * Ensure dry-run works with `:current_release` variable (Carol Nichols)
280
- * Added a new variable `:git_submodules_recursive`, setting the value to false
281
- will ensure Git doesn't recursively initialize and checkout submodules. (Konstantin Kudryashov)
282
- * Added an additional task option, `:on_no_matching_servers`, setting the
283
- value to `:continue` will ensure tasks with no matched servers continue
284
- without error, instead of raising `Capistrano::NoMatchingServersError` as was
285
- the previous behaviour. (Chris Griego)
286
-
287
- A huge thanks to all contributors, as always!
288
-
289
- Remember: @capistranorb on twitter for news.
290
-
291
- ## 2.6.1 / June 25 2011
292
-
293
- A short maintenance release, Some fixes to the verbose flag inside the Git SCM
294
- as well as another argument for the (internal) `variable()` command, offering
295
- a default. The Git SCM is now verbose by default, but can be disabled by
296
- setting `:scm_verbose` to false.
297
-
298
- There has been an additional method added to string, within the context of the
299
- test suite, I'm always sketchy about adding additional methods to core
300
- classes, but it's a short term fix until I make the time to patch the test
301
- suite not to compare strings literally. The method is `String#compact`, and is
302
- implemented simply as `self.gsub(/\s+/, ' ')`.
303
-
304
- Here's the run-down of changes, and their committers, as always - a huge thank
305
- you to the community that continues to drive Capistrano's development.
306
-
307
- * `deploy:setup` now respects `:group_writable` (Daniel Duvall)
308
- * Fixes to `:scm_verbose` for the Git module (defaults to On.) (Matthew Davies)
309
- * Will now copy hidden files in the project's root into the release
310
- directory (Mark Jaquith)
311
- * Now handles closing already-dead connections in a sane way (does not raise
312
- an exception) (Will Bryant)
313
- * Renamed `Capistrano::VERSION::TINY` to `Capistrano::VERSION::PATCH` (Lee
314
- Hambley)
315
- * Removed the `VERSION` file (Lee Hambley)
316
-
317
- ## 2.6.0 / May 3 2011
318
-
319
- A rather large release, feature-version bump because of the new
320
- multiple-gateways feature as implemented by Ryan Duryea (way to go!)
321
-
322
- Please also note from this release that if you use Git submodules, the
323
- Git-version requirement for the new implementation is now >= 1.5.6, from
324
- previously un-documented. (1.5.6 is new-enough that I think this is
325
- acceptable)
326
-
327
- * Upgrade Net::SSH-gateway dependency to 1.1 (fixes a thread-deadlocking bug on MRI 1.9)
328
- * Respect "dry-run" on transfer methods (Florian Frank)
329
- * Add support for multiple gateways: (Ryan Duryea)
330
- set :gateway, {
331
- 'gate1.example.com' => 'server1.example.com',
332
- [ 'gate2.example.com', 'gate3.example.com' ] => [ 'server5.example.com', 'server6.example.com' ]
333
- }
334
- * Properly support nested Git submodules, moves Git requirement to >= 1.5.6 [if you rely upon submodules] (Ken Miller)
335
- * Fetch tags into the remote cache, allows deploying a tag when using Git, with the remote_cache strategy (Florian Frank)
336
- * Various fixes to path handling bugs in the copt strategy. (Philippe Rathé)
337
-
338
- ## 2.5.21 / April 6 2011
339
-
340
- * Fixed to follow best-practice guidelines from Bundler (Ben Langfeld)
341
- * No longer force a gemset for Capistrano development. (Ben Langfeld)
342
-
343
- ## 2.5.20 / March 16 2011
344
-
345
- * `deploy:migrations` will now always operate on the latest_release, not
346
- current_release (Mike Vincent)
347
- * Adds a check for the presence of `rsync` when using the copy strategy with `rsync`. (Chris Griego)
348
- * Do not try to look up the `:release_path` on servers which are defined `:no_release` (Chris Griego)
349
- * Tiny patch to the `CVS` SCM code to be Ruby 1.9 compatible (Martin Carpenter)
350
- * Changed the default `Git` submodule behaviour to use `--recursive`, Lighthouse Issue #176. (Lee Hambley)
351
- * `:public_children` can now be `set()`, the default is unchanged, thanks (Chris Griego)
352
- * Fixing the load path in the default `Capfile` to search vendored/unpacked Gems. Lighthouse Issue #174 (Mari Carmen/Rafael García)
353
- * Adds a `maintenance_basename` variable (default value is `maintenance`) to allow you to set the maintenance page name (Celestino Gomes)
354
- * Spelling fixes in inline-documentation (Tom Copeland)
355
- * Make `zip` and `tar` handle symlinks the same way (zip follows symlinks by default, tar needs the option `-h`) (Ross Cooperman)
356
-
357
- ## 2.5.19 / June 21, 2010
358
-
359
- * Small bug fixes, no improvements for people who weren't experiencing problems anyway.
360
-
361
- ## 2.5.18 / March 14, 2010
362
-
363
- Small fix for rolling back if a shell scripts exits non-zero; enabled a rollback if git (or other) externals fail during the deploy.
364
-
365
- * #151 check return code status of system command to create local copy and rollback if not 0 (David King)
366
-
367
- ## 2.5.17 / February 27, 2010
368
-
369
- Various small bug fixes.
370
-
371
- ## 2.5.16 / February 14, 2010
372
-
373
- Fixed a small regression in 2.5.15
374
-
375
- ## 2.5.15 / 14 February 2010
376
-
377
- Fixes a feature request not to overwrite roles when using the ROLES environmental variable.
378
-
379
- * #126 - The option to not overwriting the roles which are defined in the task definition.
380
- * Removed the `upgrade` file as it has been a couple of years since 1.x was in the wild.
381
- * Slight internal re-factor of the way we calculate the `version`
382
-
383
- ## 2.5.14 / 18 January 2010
384
-
385
- Fixes a low-value bug, thanks to Chris G for the well submitted patch:
386
-
387
- * #139 - Improves consistency of variable lookup, scm variables with a local_ prefix will be honoured with priority locally (Chris Griego)
388
-
389
- ## 2.5.13 / 6 January 2010
390
-
391
- * Small maintenance release:
392
-
393
- * #118 - Modified CLI test to not load user or system configuration file (Emily Price)
394
- * #88 - Re-fixed a problem here, massive apologies to all concerned. (Hangover from 2.5.12)
395
-
396
- ## 2.5.12 / 5 January 2010
397
-
398
- * Tweak the directory version listing (caused a lot of problems, please upgrade immediately)
399
-
400
- ## 2.5.11 / December 2009
401
-
402
- * Deprecations and other small changes
403
-
404
- ## 2.5.10 / 3 November 2009
405
-
406
- * Fixes Darcs remote repository problem when using the copy strategy [Alex `regularfry` Young]
407
- * Documentation improvements for embedding Capistrano [Lee Hambley]
408
- * Fixes ticket #95 -formally deprecating the before_something and after_something methods [Lee Hambley]
409
-
410
- ## 2.5.9 / 1 August 2009
411
-
412
- * Adds support for customizing which `tar` command to use. [Jeremy Wells]
413
-
414
- * Fixes a couple of documentation problems, typos and worse. [Lee Hambley]
415
-
416
- * #105 - Add skip_hostfilter option to find_servers() [Eric]
417
- * #103 - Using non-master branch fails with Ruby 1.9 [Suraj Kurapati]
418
- * #96 - Tweak for 1.9 Compatibility
419
- * #79 - Capistrano hangs on shell command for many computers
420
- * #77 - Copy command doesn't work on Solaris due to tar/gtar
421
- * #76 - Invalid Subversion URL
422
- * Improved web:disable task, now suggests a .htaccess block to use suggested by Rafael García
423
- * Includes more logger options (can now select stdout, stderr of a file) [Rafael García]
424
-
425
- ## 2.5.8 / July 2009
426
-
427
- * Fixes a problem in 2.5.7 where deploy:finalize_update had been badly merged.
428
-
429
- ## 2.5.6 & 2.5.7 / July 2009
430
-
431
- * 2.5.7 masks a broken 2.5.6 release that was accidentally mirrored via Rubyforge.
432
-
433
- * Clean the cached git repository [Graeme Mathieson]
434
-
435
- * Fixes perforce issues reported at http://bit.ly/wt0es [Scott Johnson]
436
-
437
- * Improved back-tick handling code in relation to the above.
438
-
439
- * Fixes a Git issue when submodules update upstream. (via mailing list) [sneakin]
440
-
441
- * Capify now creates the config directory in directories without one.
442
-
443
- ## 2.5.5 / 24 Feb 2009
444
-
445
- * Make sure role(:foo) actually declares an (empty) role for :foo, even without server arguments [Jamis Buck]
446
-
447
-
448
- ## 2.5.4 / 4 Feb 2009
449
-
450
- * When using rsync with the remote_cache strategy include -t switch to preserve file times [Kevin McCarthy]
451
-
452
- * Bump Net::SSH dependency to version 2.0.10 [Jamis Buck]
453
-
454
- * Use 'user' from .ssh/config appropriately [Jamis Buck]
455
-
456
- * Allow respond_to?() method to accept optional second parameter (include_priv) [Matthias Marschall]
457
-
458
- * Make sure sudo prompts are retried correctly even if "try again" and the prompt appear in the same text chunk from the server [Jamis Buck]
459
-
460
- * Add supported environment variables to -H output [François Beausoleil]
461
-
462
-
463
- ## 2.5.3 / December 6, 2008
464
-
465
- * Make previous_release return nil if there is no previous release [Mathias Meyer]
466
-
467
- * Play nice with rubies that don't inspect terminals well (ie. JRuby) by defaulting screen columns to 80 [Bob McWhirter]
468
-
469
- * Rollback of deploy:symlink would explode if there was no previous revision to rollback to [Jamis Buck]
470
-
471
- * Fix bug in transfer.rb that caused get/put/upload/download to ignore blocks passed to them [arika]
472
-
473
- * Fix issue with git SCM that caused "Unable to resolve revision" errors when there was trailing whitespace in git's output [Mark Zuneska, Daniel Berlinger and Evan Closson]
474
-
475
-
476
- ## 2.5.2 / November 13, 2008
477
-
478
- * Fix issue with git SCM that caused "Unable to resolve revision for 'HEAD'" errors on deploy [Jamis Buck]
479
-
480
-
481
- ## 2.5.1 / November 7, 2008
482
-
483
- * Add -t (--tools) switch for better task lists for external tools [Jamis Buck]
484
-
485
- * Make the RemoteDependency#try method use invoke_command instead of run, for sudo-ability [Matthias Marschall]
486
-
487
- * Make locally executed commands in Windows more Windows-friendly [esad@esse.at]
488
-
489
- * Added :scm_arguments variable for custom SCM arguments (subversion-only, currently) [David Abdemoulaie]
490
-
491
- * Don't emit -p for sudo when :sudo_prompt is blank [Matthias Marschall]
492
-
493
- * Copy symlinks when using rsync [Paul Paradise]
494
-
495
- * Make sure git query-revision matches on exact branch name [grant@nightriot.com]
496
-
497
- * Use -T <arg> to filter listed tasks by a pattern [Mathias Meyer, Geoffrey Grosenbach]
498
-
499
- * Expose the #scm method on SCM::Base for building custom scm commands [Mathias Meyer]
500
-
501
- * Start logging some locally executed commands [springyweb]
502
-
503
- * Added HOSTFILTER environment variable for constraining tasks so they run only on hosts matching the given list of servers [Walter Smith]
504
-
505
- * Make sure the glob matching for copy excludes does not delete parent directories [Fabio Akita]
506
-
507
- * Ruby 1.9 compatibility [Jamis Buck]
508
-
509
-
510
- ## 2.5.0 / August 28, 2008
511
-
512
- * Allow :gateway to be set to an array, in which case a chain of tunnels is created [Kerry Buckley]
513
-
514
- * Allow HOSTS spec to override even non-existent roles [Mike Bailey]
515
-
516
- * Sort releases via "ls -xt" instead of "ls -x" to allow for custom release names [Yan Pritzker]
517
-
518
- * Convert arguments to -s and -S into integers, booleans, etc. based on whether the arguments appear to be those types [Jamis Buck]
519
-
520
- * Add descriptions of -n and -d to the verbose help text [Jamis Buck]
521
-
522
- * Make rollbacks work with processes that need the current directory to be valid in order to restart properly (e.g. mongrel_rails) [Jamis Buck]
523
-
524
- * Rename deploy:rollback_code to deploy:rollback:code [Jamis Buck]
525
-
526
- * Added parallel() helper for executing multiple different commands in parallel [Jamis Buck]
527
-
528
- * Make sure a task only uses the last on_rollback block, once, on rollback [Jamis Buck]
529
-
530
- * Add :shared_children variable to customize which subdirectories are created by deploy:setup [Jonathan Share]
531
-
532
- * Allow filename globbing in copy_exclude setting for the copy strategy [Jonathan Share]
533
-
534
- * Allow remote_cache strategy to use copy_exclude settings (requires rsync) [Lewis Mackenzie]
535
-
536
- * Make None SCM module work in Windows [Carlos Kozuszko]
537
-
538
- * Recognize mingw as a Windows platform [Carlos Kozuszko]
539
-
540
- * Fixed failing tests in Windows [Carlos Kozuszko]
541
-
542
- * Made :scm_auth_cache control whether password option is emitted in subversion module [Brendan Schwartz]
543
-
544
- * Fixed timestamp bug in CVS module [Jørgen Fjeld]
545
-
546
- * Added -n/--dry-run switch, to display but not execute remote tasks [Paul Gross]
547
-
548
-
549
- ## 2.4.3 / June 28, 2008
550
-
551
- * Fix gem dependencies so gem actually understands them [Jamis Buck]
552
-
553
-
554
- ## 2.4.2 / June 27, 2008
555
-
556
- * Specify gem dependencies in rakefile [Jamis Buck]
557
-
558
-
559
- ## 2.4.1 / June 27, 2008
560
-
561
- * Use Echoe to manage the Rakefile [Jamis Buck]
562
-
563
- * Let Net::SSH manage the default SSH port selection [Ben Lavender]
564
-
565
- * Changed capture() helper to not raise an exception on error, but to warn instead [Jeff Forcier]
566
-
567
-
568
- ## 2.4.0 / June 13, 2008
569
-
570
- * Added :normalize_asset_timestamps option to deployment, defaulting to true, which allows asset timestamping to be disabled [John Trupiano]
571
-
572
-
573
- ## 2.4.0 Preview Release #1 (2.3.101) / June 5, 2008
574
-
575
- * Only make deploy:start, deploy:stop, and deploy:restart try sudo as :runner. The other sudo-enabled tasks (deploy:setup, deploy:cleanup, etc.) will now use the :admin_runner user (which by default is unset). [Jamis Buck]
576
-
577
- * Make sure triggers defined as a block inherit the scope of the task they are attached to, instead of the task they were called from [Jamis Buck]
578
-
579
- * Make deploy:upload use the upload() helper for more efficient directory processing [Jamis Buck]
580
-
581
- * Make deploy:upload accept globs [Mark Imbriaco]
582
-
583
- * Make sure the host is reported with the output from scm_run [Jamis Buck]
584
-
585
- * Make git SCM honor the :scm_verbose option [Jamis Buck]
586
-
587
- * Don't follow symlinks when using :copy_cache [Jamis Buck]
588
-
589
- * If :mode is given to upload() helper, do a chmod after to set the mode [Jamis Buck]
590
-
591
- * Fix load_from_file method for windows users [Neil Wilson]
592
-
593
- * Display a deprecation error if a remote git branch is specified [Tim Harper]
594
-
595
- * Fix deployment recipes to use the updated sudo helper [Jamis Buck]
596
-
597
- * Enhance the sudo helper so it can be used to return the command, instead of executing it [Jamis Buck]
598
-
599
- * Revert "make sudo helper play nicely with complex command chains", since it broke stuff [Jamis Buck]
600
-
601
- * Make set(:default_shell, false) work for not using a shell on a per-command basis [Ryan McGeary]
602
-
603
- * Improved test coverage [Ryan McGeary]
604
-
605
- * Fixed "coverage" take task [Ryan McGeary]
606
-
607
- * Use upload() instead of put() with the copy strategy [Jamis Buck]
608
-
609
- * Revert the "git fetch --tags" change, since it didn't work as expected [Jamis Buck]
610
-
611
- * Fix deploy:pending when using git SCM [Ryan McGeary]
612
-
613
- * Make sure deploy:check works with :none scm (which has no default command) [Jamis Buck]
614
-
615
- * Add debug switch for enabling conditional execution of commands [Mark Imbriaco]
616
-
617
-
618
- ## 2.3.0 / May 2, 2008
619
-
620
- * Make deploy:setup obey the :use_sudo and :runner directives, and generalize the :use_sudo and :runner options into a try_sudo() helper method [Jamis Buck]
621
-
622
- * Make sudo helper play nicely with complex command chains [Jamis Buck]
623
-
624
- * Expand file-transfer options with new upload() and download() helpers. [Jamis Buck]
625
-
626
- * Allow SCP transfers in addition to SFTP. [Jamis Buck]
627
-
628
- * Use Net::SSH v2 and Net::SSH::Gateway. [Jamis Buck]
629
-
630
- * Added #export method for git SCM [Phillip Goldenburg]
631
-
632
- * For query_revision, git SCM used git-rev-parse on the repo hosting the Capfile, which may NOT be the same tree as the actual source reposistory. Use git-ls-remote instead to resolve the revision for checkout. [Robin H. Johnson]
633
-
634
- * Allow :ssh_options hash to be specified per server [Jesse Newland]
635
-
636
- * Added support for depend :remote, :file to test for existence of a specific file [Andrew Carter]
637
-
638
- * Ensure that the default run options are mixed into the command options when executing a command from the cap shell [Ken Collins]
639
-
640
- * Added :none SCM module for deploying a specific directory's contents [Jamis Buck]
641
-
642
- * Improved "copy" strategy supports local caching and pattern exclusion (via :copy_cache and :copy_exclude variables) [Jamis Buck]
643
-
644
-
645
- ## 2.2.0 / February 27, 2008
646
-
647
- * Fix git submodule support to init on sync [halorgium]
648
-
649
- * Add alternative server-centric role definition method [James Duncan Davidson]
650
-
651
- * Add support for password prompts from the Mercurial SCM [ches]
652
-
653
- * Add support for :max_hosts option in task definition or run() [Rob Holland <rob@inversepath.com>]
654
-
655
- * Distributed git support for better operability with remote_cache strategy [voidlock]
656
-
657
- * Use a default line length in help text if line length is otherwise too small [Jamis Buck]
658
-
659
- * Fix incorrect reference to the 'setup' task in task documentation [rajeshduggal]
660
-
661
- * Don't try to kill the spawner process on deploy:stop if no spawner process exists [Jamis Buck]
662
-
663
- * Dynamic roles (e.g. role(:app) { "host.name" }) [dmasover]
664
-
665
- * Implement Bzr#next_revision so that pending changes can be reported correctly [casret]
666
-
667
- * Use a proper export command for bzr SCM [drudru]
668
-
669
- * Use checkout instead of merge for git SCM [nuttycom]
670
-
671
- * Fix typo in Subversion SCM module, encountered when an update fails [kemiller]
672
-
673
- * Fix documentation typo in upload.rb [evolving_jerk]
674
-
675
- * Added test case to show that the :scm_command is honored by the git SCM module [grempe]
676
-
677
- * Fail gracefully when double-colons are used to delimit namespaces [richie]
678
-
679
- * Add support for :git_enable_submodules variable, to enable submodules with the git SCM [halorgium]
680
-
681
- * If subversion asks for a password, prompt as a last resort [Jamis Buck]
682
-
683
- * Use checkout --lightweight for bzr checkout, instead of branch [michiels]
684
-
685
- * Make sure bzr SCM works when revision is head (or unspecified) [michiels]
686
-
687
- * Support p4sync_flags and p4client_root variables for Perforce [gseidman]
688
-
689
- * Prepare for Net::SSH v2 by making sure Capistrano only tries to load Net::SSH versions less than 1.99.0 [Jamis Buck]
690
-
691
-
692
- ## 2.1.0 / October 14, 2007
693
-
694
- * Default to 0664 instead of 0660 on upload [Jamis Buck]
695
-
696
- * Fix deploy:pending to query SCM for the subsequent revision so that it does not include the last deployed change [Jamis Buck]
697
-
698
- * Prefer 'Last Changed Rev' over 'Revision' when querying latest revision via Subversion [Jamis Buck]
699
-
700
- * Explicitly require 'stringio' in copy_test [mislav]
701
-
702
- * When Subversion#query_revision fails, give a more sane error [Jamis Buck]
703
-
704
- * Don't run the upgrade:revisions task on non-release servers [Jamis Buck]
705
-
706
- * Fix cap shell to properly recognize sudo prompt [Mark Imbriaco, barnaby, Jamis Buck]
707
-
708
- * Git SCM module [Garry Dolley, Geoffrey Grosenbach, Scott Chacon]
709
-
710
- * Use the --password switch for subversion by default, but add :scm_prefer_prompt variable (defaults to false) [Jamis Buck]
711
-
712
-
713
- ## 2.0.100 (2.1 Preview 1) / September 1, 2007
714
-
715
- * capify-generated Capfile will autoload all recipes from vendor/plugins/*/recipes/*.rb [Graeme Mathieson]
716
-
717
- * Use sudo -p switch to set sudo password prompt to something predictable [Mike Bailey]
718
-
719
- * Allow independent configurations to require the same recipe file [Jamis Buck]
720
-
721
- * Set :shell to false to run a command without wrapping it in "sh -c" [Jamis Buck]
722
-
723
- * Don't request a pty by default [Jamis Buck]
724
-
725
- * Add a "match" remote dependency method [Adam Greene]
726
-
727
- * Allow auth-caching of subversion credentials to be enabled via :scm_auth_cache [tsmith]
728
-
729
- * Don't let a task trigger itself when used as the source for an "on" hook [Jamis Buck]
730
-
731
- * Avoid using the --password switch with subversion for security purposes [sentinel]
732
-
733
- * Add version_dir, current_dir, and shared_dir variables for naming the directories used in deployment [drinkingbird]
734
-
735
- * Use Windows-safe binary reads for reading file contents [Ladislav Martincik]
736
-
737
- * Add Accurev SCM support [Doug Barth]
738
-
739
- * Use the :runner variable to determine who to sudo as for deploy:restart [Graham Ashton]
740
-
741
- * Add Namespaces#top to always return a reference to the topmost namespace [Jamis Buck]
742
-
743
- * Change the "-h" output so that it does not say that "-q" is the default [Jamis Buck]
744
-
745
-
746
- ## 2.0.0 / July 21, 2007
747
-
748
- * Make the "no matching servers" error more sane [halorgium]
749
-
750
- * Make sure the invoke task gives a sane error when the COMMAND value is omitted [halorgium]
751
-
752
- * Make sure variables are conditionally set in the deploy recipes, so as not to clobber values set elsewhere [Jamis Buck]
753
-
754
- * Fix "input stream is empty" errors from HighLine on prompt [Jamis Buck]
755
-
756
- * Added "synchronous_connect" setting to try and work around SFTP hangs for certain users [Jamis Buck]
757
-
758
- * Auto-require the SSH shell service, to avoid race conditions [Jamis Buck]
759
-
760
- * Add a millisecond sleep in upload to reduce CPU impact [Jamis Buck]
761
-
762
- * Allow the logger to be set via Configuration#logger= [Jamis Buck]
763
-
764
- * Allow $CAPISTRANO:HOST$ to be used in filenames to the put command [Jamis Buck]
765
-
766
- * Allow execute_on_servers to be called without a current task again [Jamis Buck]
767
-
768
- * Put $stdout in sync mode, so that Net::SSH prompts are displayed [Jamis Buck]
769
-
770
- * Make sure deploy:check aborts if it fails [Jamis Buck]
771
-
772
- * Spelling corrections in docs [Tim Carey-Smith, Giles Bowkett]
773
-
774
-
775
- ## 1.99.3 (2.0 Preview 4) / June 28, 2007
776
-
777
- * Don't break task descriptions on a period that appears in the middle of a sentence [Jamis Buck]
778
-
779
- * Added support for :on_error => :continue in task definitions, allowing tasks to effectively ignore connection and execution errors that occur as they run [Rob Holland]
780
-
781
- * Use correct parameters for Logger constructor in the SCM and Strategy base initializers [Jamis Buck]
782
-
783
- * Set LC_ALL=C before querying the revision, to make sure the output is in a predictable locale and can be parsed predictably [via Leandro Nunes dos Santos]
784
-
785
- * Add :copy_remote_dir variable for the :copy strategy, to indicate where the archive should be copied to on the remote servers [Jamis Buck]
786
-
787
- * Make the awk use in the dependencies code work with POSIX awk [mcornick]
788
-
789
- * Make variable accesses thread safe [via Adrian Danieli]
790
-
791
- * Make user input for yes/no prompts work correctly in the Mercurial module [Matthew Elder]
792
-
793
- * Use single quotes to escape semicolon in find command, instead of a backslash [via michael.italia@gmail.com]
794
-
795
- * Better quoting of reserved characters in commands [Jamis Buck]
796
-
797
- * Make sure Net::SSH versions prior to 1.1.0 still work [Jamis Buck]
798
-
799
- * Allow the :hosts and :roles keys to accept lambdas, which will be evaluated lazily to allow runtime selection of hosts and roles in tasks [Jamis Buck]
800
-
801
- * Use `which' to test whether a command exists in the remote path, instead of `test -p' [Jamis Buck]
802
-
803
- * Make sure the connection factory is established synchronously, to avoid multiple gateway instances being spawned [Jamis Buck]
804
-
805
- * Make sure symlink and finalize_update tasks reference the most recent release when called by themselves [Jamis Buck]
806
-
807
-
808
- ## 1.99.2 (2.0 Preview 3) / June 15, 2007
809
-
810
- * CVS SCM module [Brian Phillips]
811
-
812
- * Fix typo in Perforce SCM module [Chris Bailey]
813
-
814
- * ssh_options < server options when connecting [Jamis Buck]
815
-
816
- * Logger defaults to $stderr instead of STDERR [lhartley]
817
-
818
- * Use cp -RPp instead of -a in the remote cache strategy
819
-
820
- * Make the UploadError exception include an array of the hosts that failed [rob@inversepath.com]
821
-
822
- * Allow "empty" roles to be declared [Jamis Buck]
823
-
824
- * Mercurial SCM module [Tobias Luetke, Matthew Elder]
825
-
826
- * Invoke all commands via sh (customizable via :default_shell) [Jamis Buck]
827
-
828
- * Make sure all directories exist on each deploy which are necessary for subsequent commands to succeed, since some SCM's won't save empty directories [Matthew Elder]
829
-
830
- * Add :default_environment variable, which is applied to every command
831
-
832
-
833
- ## 1.99.1 (2.0 Preview 2) / May 10, 2007
834
-
835
- * Fix some documentation typos [eventualbuddha]
836
-
837
- * Don't retry failed connections if an explicit auth_methods list is given [Chris Farms]
838
-
839
- * Added support for load and exit callbacks, which get invoked when all recipes have been loaded and when all requested tasks have been executed [Jamis Buck]
840
-
841
- * Added support for start and finish callbacks, which get invoked when any task is called via the command-line [Jamis Buck]
842
-
843
- * Make `capify' understand simple command-line switches [Jamis Buck]
844
-
845
- * Make the server definition itself available to SSH channels, rather than just the host name [Jamis Buck]
846
-
847
- * Identify servers by their complete credentials in logs, rather than simply by hostname [Jamis Buck]
848
-
849
- * Uniquely identify servers based on hostname, port, and username, instead of merely on hostname [Jamis Buck]
850
-
851
- * Allow (e.g.) scm_command and local_scm_command to be set in the event of different paths to the scm command on local vs. remote hosts. [Jamis Buck]
852
-
853
- * Kill the "deploy:app" namespace and move those tasks into deploy, directly. [Jamis Buck]
854
-
855
- * Make sure 'desc' applies to the next defined task, in any namespace. [Jamis Buck]
856
-
857
- * Fix shell so that servers for a task are correctly discovered. [Jamis Buck]
858
-
859
- * Added before(), after(), and on() callback creation methods. [Jamis Buck]
860
-
861
- * Fix broken check! method for some deployment strategies. [Jamis Buck]
862
-
863
- * deploy:cold should also run migrations before starting the app [Jamis Buck]
864
-
865
- * Make the copy strategy check out to a temporary directory [Jamis Buck]
866
-
867
-
868
- ## 1.99.0 (2.0 Preview 1) / April 24, 2007
869
-
870
- * Add `capify' script to make it easier to prepare a project for deployment using cap [Jamis Buck]
871
-
872
- * Make sure the sudo helper understands the SuSE dialect of the sudo password prompt [Steven Wisener]
873
-
874
- * Fix synchronization issue with Gateway initialization [Doug Barth]
875
-
876
- * Added opt-in "compat" and "upgrade" recipes for tasks to aid in the upgrade process to Capistrano 2 [Jamis Buck]
877
-
878
- * The deployment recipes are now opt-in. Just do 'load "deploy"' in your recipe script. [Jamis Buck]
879
-
880
- * Added $CAPISTRANO:HOST$ placeholder in commands, which will be replaced with the name of the host on which the command is executing [Jamis Buck]
881
-
882
- * Added -e switch to explain specific task. Added -X to extend -x. Made -h much briefer. Added -T to list known tasks. [Jamis Buck]
883
-
884
- * Added namespaces for tasks [Jamis Buck]
885
-
886
- * Merged the Configuration and Actor classes, performed various other massive refactorings of the code [Jamis Buck]
887
-
888
-
889
- ## 1.4.1 / February 24, 2007
890
-
891
- * Use the no-auth-cache option with subversion so that username/password tokens do not get cached by capistrano usage [jonathan]
892
-
893
- * Deprecated upper-cased variables [Jamis Buck]
894
-
895
- * Make sure Actor#get does not close the SFTP channel (so subsequent SFTP operations work) [Dov Murik]
896
-
897
- * Add :env option to 'run' (and friends) so that you can specify environment variables to be injected into the new process' environment [Mathieu Lajugie]
898
-
899
-
900
- ## 1.4.0 / February 3, 2007
901
-
902
- * Use the auth info for subversion more consistently [Jamis Buck]
903
-
904
- * Add a "capture" helper, for capturing the stdout of a remote command and returning it as a string [Jamis Buck]
905
-
906
- * Add a "get" helper, to pull a file from a remote server to the localhost [bmihelac]
907
-
908
- * Fix gateway to actually increment local_port if a port is in use, so that multiple capistrano instances can run at the same time [Mark Imbriaco]
909
-
910
- * Refactor the permissions tweaking in update_code to a separate task so that people on shared hosts can override it as necessary [jaw6]
911
-
912
- * Set umask during the setup task, so that intermediate directories are created with the proper permissions [NeilW]
913
-
914
- * Removed -c/--caprc switch, since the new load order renders it meaningless (just use -f now) [Mike Bailey]
915
-
916
- * Make sure the standard recipe loads first, so that .caprc and friends can override what it defines. [Mike Bailey]
917
-
918
- * Add support for a system-wide capistrano config file [Mike Bailey]
919
-
920
- * Make cold_deploy call update instead of deploy (to avoid invoking the restart task).
921
-
922
- * Make the touch command run by update_code set the TZ to UTC, for consistent setting of asset timestamps. [NeilW]
923
-
924
- * Fix off-by-one bug in show_tasks width-computation [NeilW]
925
-
926
-
927
- ## 1.3.1 / January 5, 2007
928
-
929
- * Fix connection problems when using gateways [Ezra Zygmuntowicz]
930
-
931
-
932
- ## 1.3.0 / December 23, 2006
933
-
934
- * Deprecate rake integration in favor of invoking `cap' directly [Jamis Buck]
935
-
936
- * Make sure the CVS module references the repository explicitly in cvs_log [weyus@att.net]
937
-
938
- * Remove trace messages when loading a file [Jamis Buck]
939
-
940
- * Cleaner error messages for authentication failures and command errors [Jamis Buck]
941
-
942
- * Added support for ~/.caprc, also -x and -c switches. [Jamis Buck]
943
-
944
- * Updated migrate action to use db:migrate task in Rails instead of the deprecated migrate task [DHH]
945
-
946
- * Allow SSH user and port to be encoded in the hostname strings [Ezra Zygmuntowicz]
947
-
948
- * Fixed that new checkouts were not group-writable [DHH, Jamis Buck]
949
-
950
- * Fixed that cap setup would use 755 on the deploy_to and shared directory roots instead of 775 [DHH]
951
-
952
- * Don't run the cleanup task on servers marked no_release [Jamis Buck]
953
-
954
- * Fix typo in default_io_proc so it correctly checks the stream parameter to see if it is the error stream [Stephen Haberman]
955
-
956
- * Make sure assets in images, javascripts, and stylesheets are touched after updating the code, to ensure the asset timestamping feature of rails works correctly [Jamis Buck]
957
-
958
- * Added warning if password is prompted for and termios is not installed [John Labovitz]
959
-
960
- * Added :as option to sudo, so you can specify who the command is executed as [Mark Imbriaco]
961
-
962
-
963
- ## 1.2.0 / September 14, 2006
964
-
965
- * Add experimental 'shell' task [Jamis Buck]
966
-
967
- * Display file for external configurations, rather than inspected proc. [Jamis Buck]
968
-
969
- * Connect to multiple servers in parallel, rather than serially. [Jamis Buck]
970
-
971
- * Add SCM module for Mercurial (closes #4150) [Matthew Elder]
972
-
973
- * Remove unused line in SCM::Base (closes #5619) [chris@seagul.co.uk]
974
-
975
- * More efficient "svn log" usage (closes #5620) [Anatol Pomozov]
976
-
977
- * Better support for key passphrases in the SVN module (closes #5920) [llasram@gmail.com]
978
-
979
- * Fix missing default for :local in cvs.rb (closes #3645) [jeremy@hinegardner.org]
980
-
981
- * Fix awkward spacing in gemspec file (closes #3888) [grant@antiflux.org]
982
-
983
- * Add support for :sudo variable to specify path to sudo (closes #4578) [timothee.peignier@tryphon.org]
984
-
985
- * Make previous_release return nil if there are no previous releases (closes #4959) [bdabney@cavoksolutions.com]
986
-
987
- * Uncache releases list after update_code is called so that newly released dir is included (closes #3766) [Jamis Buck]
988
-
989
- * Allow the subversion scm to accept HTTPS certificates (closes #4792) [Jamis Buck]
990
-
991
- * Make sure rollbacks occur within the scope of the task that triggered them [Jamis Buck]
992
-
993
- * Fixed the default recipe to work with setups that haven't yet gone pids [DHH]
994
-
995
- * Symlink and setup for shared/pids to tmp/pids [DHH]
996
-
997
- * Fix some incorrect usage text (closes #4507) [gerry_shaw@yahoo.com]
998
-
999
- * Added Actor#stream method that makes it easy to create cross-server streams [DHH]. Example:
1000
-
1001
- desc "Run a tail on multiple log files at the same time"
1002
- task :tail_fcgi, :roles => :app do
1003
- stream "tail -f #{shared_path}/log/fastcgi.crash.log"
1004
- end
1005
-
1006
- * Make update_code and symlink a macro task under the name "update" for easy of deploy to servers that does not run fcgis [DHH]
1007
-
1008
- * Changed setup, update_code, rollback_code, and symlink to work on all servers instead of only those in the :app, :web, and :db roles. A server can opt out of being part of the release deployment by setting :no_release => true [DHH]
1009
-
1010
- * Added support for :except on task declarations as the opposite of :only [DHH]. Example:
1011
-
1012
- role :app, "192.168.0.2"
1013
- role :file, "192.168.0.3", :no_release => true
1014
-
1015
- task :symlink, :except => { :no_release => true } do
1016
- on_rollback { run "ln -nfs #{previous_release} #{current_path}" }
1017
- run "ln -nfs #{current_release} #{current_path}"
1018
- end
1019
-
1020
- cap symlink # will not run on 192.168.0.3
1021
-
1022
- * Deprecate the -r/--recipe switch in favor of -f/--file (for more make/rake-like semantics) [Jamis Buck]
1023
-
1024
- * Fix gemspec to include a dependency on rake 0.7 [Jamis Buck]
1025
-
1026
- * Added respect for ENV["HOSTS"] that'll be used instead of the roles specified in the task definition [DHH]. Example:
1027
-
1028
- HOSTS=192.168.0.1 cap setup # one-off setup for that server, doesn't need to be prespecified in the recipes file
1029
-
1030
- * Added respect for ENV["ROLES"] that'll be used instead of the roles specified in the task definition [DHH]. Example:
1031
-
1032
- task :setup, :roles => [ :app, :web, :db ]
1033
- # normally this would run every where
1034
- end
1035
-
1036
- ROLES=app cap setup # this will only run for the app role, overwritting the default declaration
1037
-
1038
- * Added :hosts option to task definition that allows you to specify cross-cutting tasks [DHH]. Example:
1039
-
1040
- task :setup, :hosts => [ "06.example.com", "01.example.com" ] do
1041
- # this task will happen on 06 and 01 regardless of which roles they belong to
1042
- end
1043
-
1044
- * Fix operator precedence problem in script for touching the revisions.log #3223 [jason.garber@emu.edu]
1045
-
1046
-
1047
- ## 1.1.0 / March 6th, 2006
1048
-
1049
- * Simplify the generated capistrano.rake file, and make it easier to customize
1050
-
1051
- * Use rake-like command-line semantics ("cap deploy", in addition to "cap -a deploy")
1052
-
1053
- * Rename to capistrano
1054
-
1055
- * Make the generated capistrano.rake file use rake namespaces, and include all default tasks
1056
-
1057
- * Look for config/deploy.rb, capfile, and Capfile by default
1058
-
1059
-
1060
- ## 1.0.1 / February 20th, 2006
1061
-
1062
- * Fix broken switchtower_invoke function in switchtower.rake (missing require statement)
1063
-
1064
-
1065
- ## 1.0.0 / Feburary 18th, 2006
1066
-
1067
- * Make CVS module's :local value default to "."
1068
-
1069
- * Add "invoke" task for executing one-off commands
1070
-
1071
- * Make port selection smarter for gateway connections
1072
-
1073
- * Add extension mechanism for custom ST operations and third-party task libraries
1074
-
1075
- * Make ST rails rake tasks more configurable
1076
-
1077
- * Add Actor#current_task and simplify Task#servers
1078
-
1079
- * Add Actor#connect! method for working around lazy connection establishing
1080
-
1081
- * Make sure IO::TRUNC is specified for Net::SFTP uploads (#3510)
1082
-
1083
- * Add branch support to CVS [jeremy@hinegardner.org] (#3596)
1084
-
1085
- * Add bazaar-ng SCM module [Damien Merenne]
1086
-
1087
- * Add optional :svn_username and :svn_password variables
1088
-
1089
- * Allow Proc-valued variables to be set more conveniently (set(:foo) { "bar" })
1090
-
1091
- * Add perforce SCM module [Richard McMahon]
1092
-
1093
- * Add bazaar (v1) SCM module [Edd Dumbill] (#3533)
1094
-
1095
- * Fix stftime format string used in CVS module to be Windows-compatible (fixes #3383)
1096
-
1097
- * Add an better error when a task is run and no servers match the required conditions
1098
-
1099
- * Add default spinner and cold_deploy tasks, and spinner_user variable
1100
-
1101
- * Changed restart_via variable to (boolean) use_sudo
1102
-
1103
- * Only chmod when the revisions.log file is first created
1104
-
1105
- * Make UPPERCASE variables work
1106
-
1107
- * Added rails_env variable (defaults to production) for use by tasks that employ the RAILS_ENV environment variable
1108
-
1109
- * Added Actor.default_io_proc
1110
-
1111
- * Set :actor key on SSH channel instances
1112
-
1113
-
1114
- ## 0.10.0 / January 2nd, 2006
1115
-
1116
- * Handle ssh password prompts like "someone's password:"
1117
-
1118
- * Make CLI#echo available as a class method.
1119
-
1120
- * Add CLI#with_echo.
1121
-
1122
- * Make the default password prompt available as a class method.
1123
-
1124
- # Add documentation for the CLI class.
1125
-
1126
- * Add a sanity check to make sure the correct versions of Net::SSH and Net::SFTP are installed.
1127
-
1128
- * Added a cleanup task to remove unused releases from the deployment directory
1129
-
1130
- * Allow password to be reentered on sudo if it was entered incorrectly
1131
-
1132
- * Use && as the command separator for the checkouts, so that errors are caught early.
1133
-
1134
- * Ping each SSH connection every 1s during command processing so that long-running commands don't cause the connection to timeout.
1135
-
1136
- * Add a 0.01s sleep during the command loop so that the CPU doesn't go ballistic while ST is doing its thing.
1137
-
1138
- * Add :restart_via variable for specifying whether restart ought to use :sudo (default, use sudo)
1139
-
1140
- * Use SFTP for file transfers (if available).
1141
-
1142
- * Add an "update_current" task that will do an svn up on the current release
1143
-
1144
- * Use the :checkout variable to determine what operation to use for svn checkouts (instead of co, like "export").
1145
-
1146
- * The Rails rake tasks now load ST directly, instead of invoking it via system
1147
-
1148
- * Added ssh_options variable to configure the SSH connection parameters #2734 [jerrett@bravenet.com]
1149
-
1150
- * Require Net::SSH 1.0.5
1151
-
1152
-
1153
- ## 0.9.0 / October 18th, 2005
1154
-
1155
- * Use process reaper instead of custom reap script for restarting
1156
-
1157
- * Use -S switch to set variables before reading recipe files #2242
1158
-
1159
- * Have setup.rb create a switchtower.cmd file on Win32 platforms #2402
1160
-
1161
- * Add diff_from_last_deploy to the rails switchtower rakefile template
1162
-
1163
- * Add diff_from_last_deploy task (currently only works with subversion)
1164
-
1165
- * Add deploy_with_migrations task.
1166
-
1167
- * Make the migrate task more customizable.
1168
-
1169
- * If no password is given with the -p switch, prompt for password immediately.
1170
-
1171
- * Do not install a switchtower stub in the script directory. Assume the switchtower executable is in the path.
1172
-
1173
- * Remove trailing newlines from commands to prevent trailing backslash #2141
1174
-
1175
- * Default parameters work correctly with the generator #2218 [Scott Barron]
1176
-
1177
- * Attempt to require 'rubygems' explicitly when running the switchtower utility #2134
1178
-
1179
- * Make default tasks work only on app/db/web roles, so that additional roles may be created for boxes with specific needs without needing to (for instance) deploy the app to those boxes
1180
-
1181
- * Default the application name to "Application" when using --apply-to
1182
-
1183
- * Show the help screen instead of an error when no arguments are given
1184
-
1185
- * Make SwitchTower easier to invoke programmatically via SwitchTower::CLI
1186
-
1187
- * Specify the revision to release via the :revision variable (defaults to latest revision)
1188
-
1189
- * Allow variables to be set via the cli using the -s switch
1190
-
1191
- * Log checkouts to a "revisions.log" file
1192
-
1193
- * Changed behavior of checkout to use the timestamp as the release name, instead of the revision number
1194
-
1195
- * Added CVS module (very very experimental!)
1196
-
1197
- * Works with public keys now, for passwordless deployment
1198
-
1199
- * Subversion module recognizes the password prompt for HTTP authentication
1200
-
1201
- * Preserve +x on scripts when using darcs #1929 [Scott Barron]
1202
-
1203
- * When executing multiline commands, use a backslash to escape the newline