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