capistrano 3.4.0 → 3.17.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.circleci/config.yml +129 -0
- data/.github/issue_template.md +19 -0
- data/.github/pull_request_template.md +22 -0
- data/.github/release-drafter.yml +17 -0
- data/.github/workflows/push.yml +12 -0
- data/.gitignore +8 -5
- data/.rubocop.yml +62 -0
- data/CHANGELOG.md +1 -307
- data/CONTRIBUTING.md +63 -93
- data/DEVELOPMENT.md +127 -0
- data/Dangerfile +1 -0
- data/Gemfile +40 -3
- data/LICENSE.txt +1 -1
- data/README.md +127 -44
- data/RELEASING.md +17 -0
- data/Rakefile +13 -2
- data/UPGRADING-3.7.md +86 -0
- data/bin/cap +1 -1
- data/capistrano.gemspec +21 -24
- data/features/deploy.feature +35 -1
- data/features/doctor.feature +11 -0
- data/features/installation.feature +8 -3
- data/features/stage_failure.feature +9 -0
- data/features/step_definitions/assertions.rb +51 -18
- data/features/step_definitions/cap_commands.rb +9 -0
- data/features/step_definitions/setup.rb +53 -9
- data/features/subdirectory.feature +9 -0
- data/features/support/env.rb +5 -5
- data/features/support/remote_command_helpers.rb +12 -6
- data/features/support/vagrant_helpers.rb +17 -11
- data/lib/Capfile +1 -1
- data/lib/capistrano/all.rb +10 -10
- data/lib/capistrano/application.rb +47 -34
- data/lib/capistrano/configuration/empty_filter.rb +9 -0
- data/lib/capistrano/configuration/filter.rb +17 -47
- data/lib/capistrano/configuration/host_filter.rb +29 -0
- data/lib/capistrano/configuration/null_filter.rb +9 -0
- data/lib/capistrano/configuration/plugin_installer.rb +51 -0
- data/lib/capistrano/configuration/question.rb +31 -9
- data/lib/capistrano/configuration/role_filter.rb +29 -0
- data/lib/capistrano/configuration/scm_resolver.rb +149 -0
- data/lib/capistrano/configuration/server.rb +29 -23
- data/lib/capistrano/configuration/servers.rb +21 -14
- data/lib/capistrano/configuration/validated_variables.rb +110 -0
- data/lib/capistrano/configuration/variables.rb +112 -0
- data/lib/capistrano/configuration.rb +91 -44
- data/lib/capistrano/defaults.rb +26 -4
- data/lib/capistrano/deploy.rb +1 -1
- data/lib/capistrano/doctor/environment_doctor.rb +19 -0
- data/lib/capistrano/doctor/gems_doctor.rb +45 -0
- data/lib/capistrano/doctor/output_helpers.rb +79 -0
- data/lib/capistrano/doctor/servers_doctor.rb +105 -0
- data/lib/capistrano/doctor/variables_doctor.rb +74 -0
- data/lib/capistrano/doctor.rb +6 -0
- data/lib/capistrano/dotfile.rb +1 -2
- data/lib/capistrano/dsl/env.rb +9 -47
- data/lib/capistrano/dsl/paths.rb +11 -25
- data/lib/capistrano/dsl/stages.rb +14 -2
- data/lib/capistrano/dsl/task_enhancements.rb +7 -12
- data/lib/capistrano/dsl.rb +47 -16
- data/lib/capistrano/framework.rb +1 -1
- data/lib/capistrano/i18n.rb +32 -24
- data/lib/capistrano/immutable_task.rb +30 -0
- data/lib/capistrano/install.rb +1 -1
- data/lib/capistrano/plugin.rb +95 -0
- data/lib/capistrano/proc_helpers.rb +13 -0
- data/lib/capistrano/scm/git.rb +100 -0
- data/lib/capistrano/scm/hg.rb +55 -0
- data/lib/capistrano/scm/plugin.rb +13 -0
- data/lib/capistrano/scm/svn.rb +56 -0
- data/lib/capistrano/scm/tasks/git.rake +73 -0
- data/lib/capistrano/scm/tasks/hg.rake +53 -0
- data/lib/capistrano/scm/tasks/svn.rake +53 -0
- data/lib/capistrano/scm.rb +7 -20
- data/lib/capistrano/setup.rb +20 -6
- data/lib/capistrano/tasks/console.rake +4 -8
- data/lib/capistrano/tasks/deploy.rake +105 -73
- data/lib/capistrano/tasks/doctor.rake +24 -0
- data/lib/capistrano/tasks/framework.rake +13 -14
- data/lib/capistrano/tasks/install.rake +14 -15
- data/lib/capistrano/templates/Capfile +21 -10
- data/lib/capistrano/templates/deploy.rb.erb +17 -26
- data/lib/capistrano/templates/stage.rb.erb +9 -9
- data/lib/capistrano/upload_task.rb +1 -1
- data/lib/capistrano/version.rb +1 -1
- data/lib/capistrano/version_validator.rb +5 -10
- data/spec/integration/dsl_spec.rb +289 -240
- data/spec/integration_spec_helper.rb +3 -5
- data/spec/lib/capistrano/application_spec.rb +23 -39
- data/spec/lib/capistrano/configuration/empty_filter_spec.rb +17 -0
- data/spec/lib/capistrano/configuration/filter_spec.rb +83 -85
- data/spec/lib/capistrano/configuration/host_filter_spec.rb +71 -0
- data/spec/lib/capistrano/configuration/null_filter_spec.rb +17 -0
- data/spec/lib/capistrano/configuration/plugin_installer_spec.rb +98 -0
- data/spec/lib/capistrano/configuration/question_spec.rb +58 -26
- data/spec/lib/capistrano/configuration/role_filter_spec.rb +80 -0
- data/spec/lib/capistrano/configuration/scm_resolver_spec.rb +55 -0
- data/spec/lib/capistrano/configuration/server_spec.rb +106 -113
- data/spec/lib/capistrano/configuration/servers_spec.rb +129 -145
- data/spec/lib/capistrano/configuration_spec.rb +224 -63
- data/spec/lib/capistrano/doctor/environment_doctor_spec.rb +44 -0
- data/spec/lib/capistrano/doctor/gems_doctor_spec.rb +67 -0
- data/spec/lib/capistrano/doctor/output_helpers_spec.rb +47 -0
- data/spec/lib/capistrano/doctor/servers_doctor_spec.rb +86 -0
- data/spec/lib/capistrano/doctor/variables_doctor_spec.rb +89 -0
- data/spec/lib/capistrano/dsl/paths_spec.rb +97 -59
- data/spec/lib/capistrano/dsl/task_enhancements_spec.rb +57 -37
- data/spec/lib/capistrano/dsl_spec.rb +84 -11
- data/spec/lib/capistrano/immutable_task_spec.rb +31 -0
- data/spec/lib/capistrano/plugin_spec.rb +84 -0
- data/spec/lib/capistrano/scm/git_spec.rb +184 -0
- data/spec/lib/capistrano/scm/hg_spec.rb +109 -0
- data/spec/lib/capistrano/scm/svn_spec.rb +137 -0
- data/spec/lib/capistrano/scm_spec.rb +7 -8
- data/spec/lib/capistrano/upload_task_spec.rb +7 -7
- data/spec/lib/capistrano/version_validator_spec.rb +61 -46
- data/spec/lib/capistrano_spec.rb +2 -3
- data/spec/spec_helper.rb +21 -8
- data/spec/support/Vagrantfile +9 -10
- data/spec/support/tasks/database.rake +3 -3
- data/spec/support/tasks/fail.rake +4 -3
- data/spec/support/tasks/failed.rake +2 -2
- data/spec/support/tasks/plugin.rake +6 -0
- data/spec/support/tasks/root.rake +4 -4
- data/spec/support/test_app.rb +64 -39
- metadata +100 -55
- data/.travis.yml +0 -13
- data/features/remote_file_task.feature +0 -14
- data/lib/capistrano/git.rb +0 -46
- data/lib/capistrano/hg.rb +0 -43
- data/lib/capistrano/svn.rb +0 -38
- data/lib/capistrano/tasks/git.rake +0 -81
- data/lib/capistrano/tasks/hg.rake +0 -52
- data/lib/capistrano/tasks/svn.rake +0 -52
- data/spec/lib/capistrano/git_spec.rb +0 -81
- data/spec/lib/capistrano/hg_spec.rb +0 -81
- data/spec/lib/capistrano/svn_spec.rb +0 -79
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: d1c38f58d2aa91116526937329147c2a8800623bf11d3354f1d3c2582fad602d
|
4
|
+
data.tar.gz: 5595af026c2fc6deef47413bc5dd094436193a51bebb655109f6510f12ebd250
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2822f52ebf86408b876aeb4fd9f8bcc791d64c987661d7ad33b71fb36f3abf0c7b1ab782e59cddca65cd7816b963266b3964030fbe9bed327c8b300501e07e34
|
7
|
+
data.tar.gz: fd6f100932f0a35404c3d332c7a6f18c3d06bf968301f71f56b38ccd9455e45abad3da40901e8ec3c41a81c3316e01b3af17f21db5b49898a65168bbc4a14db7
|
@@ -0,0 +1,129 @@
|
|
1
|
+
version: 2.1
|
2
|
+
|
3
|
+
executors:
|
4
|
+
ruby:
|
5
|
+
parameters:
|
6
|
+
version:
|
7
|
+
description: "Ruby version number"
|
8
|
+
default: "3.1"
|
9
|
+
type: string
|
10
|
+
docker:
|
11
|
+
- image: ruby:<< parameters.version >>
|
12
|
+
|
13
|
+
commands:
|
14
|
+
bundle_install:
|
15
|
+
description: Install Ruby dependencies with Bundler
|
16
|
+
parameters:
|
17
|
+
version:
|
18
|
+
description: "Ruby version number"
|
19
|
+
default: "3.1"
|
20
|
+
type: string
|
21
|
+
steps:
|
22
|
+
- restore_cache:
|
23
|
+
keys:
|
24
|
+
- bundle-v1-{{ arch }}-<< parameters.version >>
|
25
|
+
- run:
|
26
|
+
name: Install Ruby Dependencies
|
27
|
+
command: |
|
28
|
+
gem install bundler --conservative --no-document || gem install bundler -v '< 2' --no-document
|
29
|
+
bundle config --local path vendor/bundle
|
30
|
+
bundle check || (bundle install --jobs=4 --retry=3 && bundle clean)
|
31
|
+
- save_cache:
|
32
|
+
paths:
|
33
|
+
- ./vendor/bundle
|
34
|
+
key: bundle-v1-{{ arch }}-<< parameters.version >>-{{ checksum "Gemfile.lock" }}
|
35
|
+
update_ssh_client:
|
36
|
+
description: Install recent SSH client for compatibility with GitHub
|
37
|
+
steps:
|
38
|
+
- run:
|
39
|
+
name: Install OpenSSH 8.1p1 if necessary
|
40
|
+
command: |
|
41
|
+
if $(ssh -V 2>&1 | grep -q -v OpenSSH_8); then
|
42
|
+
apt-get update
|
43
|
+
apt-get install -y libssl-dev
|
44
|
+
mkdir ~/tempdownload
|
45
|
+
cd ~/tempdownload
|
46
|
+
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.1p1.tar.gz
|
47
|
+
tar zxvf openssh-8.1p1.tar.gz
|
48
|
+
cd openssh-8.1p1 && ./configure --prefix=/usr && make ssh && make install
|
49
|
+
fi
|
50
|
+
|
51
|
+
jobs:
|
52
|
+
danger:
|
53
|
+
executor: ruby
|
54
|
+
steps:
|
55
|
+
- checkout
|
56
|
+
- bundle_install
|
57
|
+
- run: bundle exec danger
|
58
|
+
|
59
|
+
rubocop:
|
60
|
+
executor: ruby
|
61
|
+
steps:
|
62
|
+
- checkout
|
63
|
+
- bundle_install
|
64
|
+
- run: bundle exec rubocop
|
65
|
+
|
66
|
+
spec:
|
67
|
+
parameters:
|
68
|
+
version:
|
69
|
+
description: "Ruby version number"
|
70
|
+
default: "3.1"
|
71
|
+
type: string
|
72
|
+
executor:
|
73
|
+
name: ruby
|
74
|
+
version: << parameters.version >>
|
75
|
+
steps:
|
76
|
+
- update_ssh_client
|
77
|
+
- checkout
|
78
|
+
- bundle_install:
|
79
|
+
version: << parameters.version >>
|
80
|
+
- run: bundle exec rake spec
|
81
|
+
|
82
|
+
workflows:
|
83
|
+
version: 2
|
84
|
+
commit-workflow:
|
85
|
+
jobs:
|
86
|
+
- danger
|
87
|
+
- rubocop
|
88
|
+
- spec:
|
89
|
+
matrix:
|
90
|
+
parameters:
|
91
|
+
version:
|
92
|
+
[
|
93
|
+
"2.0",
|
94
|
+
"2.1",
|
95
|
+
"2.2",
|
96
|
+
"2.3",
|
97
|
+
"2.4",
|
98
|
+
"2.5",
|
99
|
+
"2.6",
|
100
|
+
"2.7",
|
101
|
+
"3.0",
|
102
|
+
"3.1",
|
103
|
+
]
|
104
|
+
cron-workflow:
|
105
|
+
jobs:
|
106
|
+
- rubocop
|
107
|
+
- spec:
|
108
|
+
matrix:
|
109
|
+
parameters:
|
110
|
+
version:
|
111
|
+
[
|
112
|
+
"2.0",
|
113
|
+
"2.1",
|
114
|
+
"2.2",
|
115
|
+
"2.3",
|
116
|
+
"2.4",
|
117
|
+
"2.5",
|
118
|
+
"2.6",
|
119
|
+
"2.7",
|
120
|
+
"3.0",
|
121
|
+
"3.1",
|
122
|
+
]
|
123
|
+
triggers:
|
124
|
+
- schedule:
|
125
|
+
cron: "0 13 * * 6"
|
126
|
+
filters:
|
127
|
+
branches:
|
128
|
+
only:
|
129
|
+
- master
|
@@ -0,0 +1,19 @@
|
|
1
|
+
**Important:** GitHub issues are for feature requests or bug reports. The Capistrano team recommends you use [Stack Overflow](http://stackoverflow.com/questions/tagged/capistrano) for general questions. For more details, please see our [contribution policy](https://github.com/capistrano/capistrano/blob/master/CONTRIBUTING.md).
|
2
|
+
|
3
|
+
---
|
4
|
+
|
5
|
+
### Steps to reproduce
|
6
|
+
If reasonable, you can help by creating a Capistrano skeleton example project which reproduces the issue you are seeing. You can then upload the individual files to a GitHub Gist or a GitHub project. Others can simply modify the configuration to point at a test server/repository of their own. Often times, an issue is resolved simply by making this test case.
|
7
|
+
|
8
|
+
An example test case is here: https://gist.github.com/will-in-wi/527327e31af30b3eae2068e2965be05b
|
9
|
+
|
10
|
+
### Expected behavior
|
11
|
+
Tell us what should happen
|
12
|
+
|
13
|
+
### Actual behavior
|
14
|
+
Tell us what happens instead
|
15
|
+
|
16
|
+
### System configuration
|
17
|
+
Please link to the output of `cap <stage> doctor` in a GitHub Gist.
|
18
|
+
|
19
|
+
Thanks for helping improve Capistrano!
|
@@ -0,0 +1,22 @@
|
|
1
|
+
### Summary
|
2
|
+
|
3
|
+
(Guidelines for creating a bug report are available
|
4
|
+
here: https://github.com/capistrano/capistrano/blob/master/DEVELOPMENT.md)
|
5
|
+
|
6
|
+
Provide a general description of the code changes in your pull
|
7
|
+
request... were there any bugs you had fixed? If so, mention them. If
|
8
|
+
these bugs have open GitHub issues, be sure to tag them here as well,
|
9
|
+
to keep the conversation linked together.
|
10
|
+
|
11
|
+
### Short checklist
|
12
|
+
|
13
|
+
- [ ] Did you run `bundle exec rubocop -a` to fix linter issues?
|
14
|
+
- [ ] If relevant, did you create a test?
|
15
|
+
- [ ] Did you confirm that the RSpec tests pass?
|
16
|
+
|
17
|
+
### Other Information
|
18
|
+
|
19
|
+
If there's anything else that's important and relevant to your pull
|
20
|
+
request, mention that information here.
|
21
|
+
|
22
|
+
Thanks for helping improve Capistrano!
|
@@ -0,0 +1,17 @@
|
|
1
|
+
name-template: "$NEXT_PATCH_VERSION"
|
2
|
+
tag-template: "v$NEXT_PATCH_VERSION"
|
3
|
+
categories:
|
4
|
+
- title: "⚠️ Breaking Changes"
|
5
|
+
label: "⚠️ Breaking"
|
6
|
+
- title: "✨ New Features"
|
7
|
+
label: "✨ Feature"
|
8
|
+
- title: "🐛 Bug Fixes"
|
9
|
+
label: "🐛 Bug Fix"
|
10
|
+
- title: "📚 Documentation"
|
11
|
+
label: "📚 Docs"
|
12
|
+
- title: "🏠 Housekeeping"
|
13
|
+
label: "🏠 Housekeeping"
|
14
|
+
change-template: "- $TITLE (#$NUMBER) @$AUTHOR"
|
15
|
+
no-changes-template: "- No changes"
|
16
|
+
template: |
|
17
|
+
$CHANGES
|
data/.gitignore
CHANGED
@@ -1,10 +1,15 @@
|
|
1
1
|
*.gem
|
2
2
|
*.rbc
|
3
|
+
*.swp
|
3
4
|
.bundle
|
4
5
|
.config
|
6
|
+
.rspec
|
7
|
+
.rspec-local
|
8
|
+
.ruby-version
|
5
9
|
.yardoc
|
6
10
|
Gemfile.lock
|
7
11
|
InstalledFiles
|
12
|
+
_site
|
8
13
|
_yardoc
|
9
14
|
coverage
|
10
15
|
doc/
|
@@ -12,11 +17,9 @@ lib/bundler/man
|
|
12
17
|
pkg
|
13
18
|
rdoc
|
14
19
|
spec/reports
|
20
|
+
tags
|
15
21
|
test/tmp
|
16
22
|
test/version_tmp
|
17
23
|
tmp
|
18
|
-
|
19
|
-
|
20
|
-
_site
|
21
|
-
.rspec
|
22
|
-
*.swp
|
24
|
+
/docs/_site/
|
25
|
+
vendor/
|
data/.rubocop.yml
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
AllCops:
|
2
|
+
DisplayCopNames: true
|
3
|
+
DisplayStyleGuide: true
|
4
|
+
TargetRubyVersion: 2.0
|
5
|
+
|
6
|
+
Lint/AmbiguousBlockAssociation:
|
7
|
+
Enabled:
|
8
|
+
false
|
9
|
+
Metrics/BlockLength:
|
10
|
+
Exclude:
|
11
|
+
- "*.gemspec"
|
12
|
+
- "spec/**/*"
|
13
|
+
- "lib/**/*.rake"
|
14
|
+
Style/BarePercentLiterals:
|
15
|
+
EnforcedStyle: percent_q
|
16
|
+
Style/ClassAndModuleChildren:
|
17
|
+
Enabled: false
|
18
|
+
Style/DoubleNegation:
|
19
|
+
Enabled: false
|
20
|
+
Style/FileName:
|
21
|
+
Exclude:
|
22
|
+
- "Dangerfile"
|
23
|
+
Style/IndentHeredoc:
|
24
|
+
Enabled: false
|
25
|
+
Style/SpaceAroundEqualsInParameterDefault:
|
26
|
+
EnforcedStyle: no_space
|
27
|
+
Style/StringLiterals:
|
28
|
+
EnforcedStyle: double_quotes
|
29
|
+
Style/TrivialAccessors:
|
30
|
+
AllowPredicates: true
|
31
|
+
Style/PercentLiteralDelimiters:
|
32
|
+
Enabled: false
|
33
|
+
Style/SingleLineBlockParams:
|
34
|
+
Enabled: false
|
35
|
+
Style/ModuleFunction:
|
36
|
+
Enabled: false
|
37
|
+
|
38
|
+
# Enable someday
|
39
|
+
Style/Documentation:
|
40
|
+
Enabled: false
|
41
|
+
|
42
|
+
# Needs refactors
|
43
|
+
Metrics/PerceivedComplexity:
|
44
|
+
Enabled: false
|
45
|
+
Metrics/CyclomaticComplexity:
|
46
|
+
Enabled: false
|
47
|
+
Metrics/MethodLength:
|
48
|
+
Enabled: false
|
49
|
+
Style/PredicateName:
|
50
|
+
Enabled: false
|
51
|
+
Metrics/LineLength:
|
52
|
+
Enabled: false
|
53
|
+
Metrics/AbcSize:
|
54
|
+
Enabled: false
|
55
|
+
Style/PerlBackrefs:
|
56
|
+
Enabled: false
|
57
|
+
Metrics/ClassLength:
|
58
|
+
Enabled: false
|
59
|
+
Metrics/ModuleLength:
|
60
|
+
Enabled: false
|
61
|
+
Style/AccessorMethodName:
|
62
|
+
Enabled: false
|
data/CHANGELOG.md
CHANGED
@@ -1,307 +1 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
Reverse Chronological Order:
|
4
|
-
|
5
|
-
## master
|
6
|
-
|
7
|
-
https://github.com/capistrano/capistrano/compare/v3.4.0...HEAD
|
8
|
-
|
9
|
-
## `3.4.0`
|
10
|
-
|
11
|
-
https://github.com/capistrano/capistrano/compare/v3.3.5...v3.4.0
|
12
|
-
|
13
|
-
* Fixed fetch revision for annotated git tags. (@igorsokolov)
|
14
|
-
* Fixed updating roles when custom user or port is specified. (@ayastreb)
|
15
|
-
* Disables statistics collection.
|
16
|
-
|
17
|
-
* `bin/` is not suggested to be in `linked_dirs` anymore (@kirs)
|
18
|
-
* bin/ is often checked out into repo
|
19
|
-
* https://github.com/capistrano/bundler/issues/45#issuecomment-69349237
|
20
|
-
|
21
|
-
* Bugfix:
|
22
|
-
* release_roles did not honour additional property filtering (@townsen)
|
23
|
-
* Refactored and simplified property filtering code (@townsen)
|
24
|
-
|
25
|
-
* Breaking Changes
|
26
|
-
* Hosts with the same name are now consolidated into one irrespective of the
|
27
|
-
user and port. This allows multiple declarations of a server to be made safely.
|
28
|
-
The last declared properties will win. See capistrnorb.com Properties documentation
|
29
|
-
for details.
|
30
|
-
* Inside the on() block the host variable is now a copy of the host, so changes can be
|
31
|
-
made within the block (such as dynamically overriding the user) that will not persist.
|
32
|
-
This is very convenient for switching the SSH user temporarily to 'root' for example.
|
33
|
-
|
34
|
-
* Minor changes
|
35
|
-
* Add role_properties() method (see capistrano.github.io PR for doc) (@townsen)
|
36
|
-
* Add equality syntax ( eg. port: 1234) for property filtering (@townsen)
|
37
|
-
* Add documentation regarding property filtering (@townsen)
|
38
|
-
* Clarify wording and recommendation in stage template. (@Kriechi)
|
39
|
-
* Both available syntaxes provide similar functionality, do not use both for the same server+role combination.
|
40
|
-
* Allow specification of repo_path using stage variable
|
41
|
-
default is as before (@townsen)
|
42
|
-
|
43
|
-
## `3.3.5`
|
44
|
-
|
45
|
-
https://github.com/capistrano/capistrano/compare/v3.3.4...v3.3.5
|
46
|
-
|
47
|
-
* Fixed setting properties twice when creating new server. See [issue
|
48
|
-
#1214](https://github.com/capistrano/capistrano/issues/1214) (@ayastreb)
|
49
|
-
|
50
|
-
## `3.3.4`
|
51
|
-
|
52
|
-
https://github.com/capistrano/capistrano/compare/v3.3.3...v3.3.4
|
53
|
-
|
54
|
-
* Minor changes:
|
55
|
-
* Rely on a newer version of capistrano-stats with better privacy (@leehambley)
|
56
|
-
* Fix cucumber spec for loading tasks from stage configs (@sponomarev)
|
57
|
-
* Minor documentation fixes (@deeeki, @seuros, @andresilveira)
|
58
|
-
* Spec improvements (@dimitrid, @sponomarev)
|
59
|
-
* Fix to CLI flags for git-ls-remote (@dimitrid)
|
60
|
-
|
61
|
-
## `3.3.3`
|
62
|
-
|
63
|
-
https://github.com/capistrano/capistrano/compare/v3.2.1...v3.3.3
|
64
|
-
|
65
|
-
* Enhancement (@townsen)
|
66
|
-
* Added the variable `:repo_tree` which allows the specification of a sub-tree that
|
67
|
-
will be extracted from the repository. This is useful when deploying a project
|
68
|
-
that lives in a subdirectory of a larger repository.
|
69
|
-
Implemented only for git and hg.
|
70
|
-
If not defined then the behaviour is as previously and the whole repository is
|
71
|
-
extracted (subject to git-archive `.gitattributes` of course).
|
72
|
-
|
73
|
-
* Enhancement (@townsen): Remove unnecessary entries from default backtrace
|
74
|
-
|
75
|
-
When the `--backtrace` (or `--trace`) command line option is not supplied
|
76
|
-
Rake lowers the noise level in exception backtraces by building
|
77
|
-
a regular expression containing all the system library paths and
|
78
|
-
using it to exclude backtrace entries that match.
|
79
|
-
|
80
|
-
This does not always go far enough, particularly in RVM environments when
|
81
|
-
many gem paths are added. This commit reverses that approach and _only_
|
82
|
-
include backtrace entries that fall within the Capfile and list of tasks
|
83
|
-
imported thereafter. This makes reading exceptions much easier on the eye.
|
84
|
-
|
85
|
-
If the full unexpurgated backtrace is required then the --backtrace
|
86
|
-
and --trace options supply it as before.
|
87
|
-
|
88
|
-
* Disable loading stages configs on `cap -T` (@sponomarev)
|
89
|
-
|
90
|
-
* Enhancements (@townsen)
|
91
|
-
* Fix matching on hosts with custom ports or users set
|
92
|
-
* Previously filtering would affect any generated configuration files so that
|
93
|
-
files newly deployed would not be the same as those on the hosts previously
|
94
|
-
deployed (and now excluded by filters). This is almost certainly not what is
|
95
|
-
wanted: the filters should apply only to the on() method and thus any
|
96
|
-
configuration files deployed will be identical across the set of servers
|
97
|
-
making up the stage.
|
98
|
-
* Host and Role filtering now affects only `on()` commands
|
99
|
-
and not the `roles()`, `release_roles()` and `primary()` methods.
|
100
|
-
* This applies to filters defined via the command line, the environment
|
101
|
-
and the :filter variable.
|
102
|
-
* Filtering now supports Regular expressions
|
103
|
-
* This change _could_ cause existing scripts that use filtering and depend on
|
104
|
-
the old behaviour to fail, though it is unlikely. Users who rely on
|
105
|
-
filtering should check that generated configuration files are correct, and
|
106
|
-
where not introduce server properties to do the filtering. For example, if a
|
107
|
-
filter was used to specify an active subset of servers (by hostname), it should
|
108
|
-
be removed and replaced with an 'active' property (set to true or false) on the
|
109
|
-
server definitions. This keeps the stage file as the canonical model of the
|
110
|
-
deployment environment.
|
111
|
-
|
112
|
-
* See the documentation in the README.md file
|
113
|
-
|
114
|
-
* Enhancements (@townsen)
|
115
|
-
* Added set_if_empty method to DSL to allow conditional setting
|
116
|
-
* Altered standard Capistrano defaults so that they are not set
|
117
|
-
at the start of a stage if they have been previously set. This
|
118
|
-
allows variables like :default_env to be set in deploy.rb.
|
119
|
-
* Deep copy properties added using the 'roles' keyword
|
120
|
-
* If a property exists on a server when another definition is
|
121
|
-
encountered and is an Array, Set or Hash then add the new values
|
122
|
-
|
123
|
-
This allows roles to specify properties common to all servers and
|
124
|
-
then for individual servers to modify them, keeping things DRY
|
125
|
-
|
126
|
-
Breaking Changes:
|
127
|
-
* By using Ruby's noecho method introduced in Ruby version 1.9.3, we dropped support for Ruby versions prior to 1.9.3. See [issue #878](https://github.com/capistrano/capistrano/issues/878) and [PR #1112](https://github.com/capistrano/capistrano/pull/1112) for more information. (@kaikuchn)
|
128
|
-
* Track (anonymous) statistics, see https://github.com/capistrano/stats. This breaks automated deployment on continuous integration servers until the `.capistrano/metrics` file is created (with content `full` to simulate a "yes") via the interactive prompt or manually.
|
129
|
-
|
130
|
-
* Bug Fixes:
|
131
|
-
* Fixed compatibility with FreeBSD tar (@robbertkl)
|
132
|
-
* remote_file can be used inside a namespace (@mikz)
|
133
|
-
|
134
|
-
* Minor Changes
|
135
|
-
* Remove -v flag from mkdir call. (@caligo-mentis)
|
136
|
-
* Capistrano now allows to customize `local_user` for revision log. (@sauliusgrigaitis)
|
137
|
-
* Added tests for after/before hooks features (@juanibiapina, @miry)
|
138
|
-
* Added `--force` flag to `svn export` command to fix errors when the release directory already exists.
|
139
|
-
* Improved the output of `cap --help`. (@mbrictson)
|
140
|
-
* Cucumber suite now runs on the latest version of Vagrant (@tpett)
|
141
|
-
* The `ask` method now supports the `echo: false` option. (@mbrictson, @kaikuchn)
|
142
|
-
* Cucumber scenario improvements (@bruno-)
|
143
|
-
* Added suggestion to Capfile to use 'capistrano-passenger' gem, replacing suggestion in config/deploy.rb to re-implement 'deploy:restart' (@betesh)
|
144
|
-
* Updated svn fetch_revision method to use `svnversion`
|
145
|
-
* `cap install` no longer overwrites existing files. (@dmarkow)
|
146
|
-
|
147
|
-
## `3.2.1`
|
148
|
-
|
149
|
-
https://github.com/capistrano/capistrano/compare/v3.2.0...v3.2.1
|
150
|
-
|
151
|
-
* Bug Fixes:
|
152
|
-
* 3.2.0 introduced some behaviour to modify the way before/after hooks were called, to allow the optional
|
153
|
-
preservation of arguments to be passed to tasks. This release reverts that commit in order to restore
|
154
|
-
original functionality, and fix (fairly serious) bugs introduced by the refactoring.
|
155
|
-
|
156
|
-
* Minor changes:
|
157
|
-
* Update dsl#local_user method and add test for it. (@bruno-)
|
158
|
-
* Revert short sha1 revision with git. (@blaugueux)
|
159
|
-
* Changed asking question to more standard format (like common unix commandline tools) (@sponomarev)
|
160
|
-
* Fixed typos in the README. (@sponomarev)
|
161
|
-
* Added `keys` method to Configuration to allow introspection of configuration options. (@juanibiapina)
|
162
|
-
* Improve error message when git:check fails (raise instead of silently `exit 1`) (@mbrictson)
|
163
|
-
|
164
|
-
## `3.2.0`
|
165
|
-
|
166
|
-
The changelog entries here are incomplete, because many authors choose not to
|
167
|
-
be credited for their work, check the tag comparison link for Github.
|
168
|
-
|
169
|
-
https://github.com/capistrano/capistrano/compare/v3.1.0...v3.2.0
|
170
|
-
|
171
|
-
* Minor changes:
|
172
|
-
* Added `keys` method to Server properties to allow introspection of automatically added
|
173
|
-
properties.
|
174
|
-
* Compatibility with Rake 10.2.0 - `ensure_task` is now added to `@top_level_tasks` as a string. (@dmarkow)
|
175
|
-
* Amended the git check command, "ls-remote", to use "-h", limiting the list to refs/heads
|
176
|
-
|
177
|
-
## `3.1.0`
|
178
|
-
|
179
|
-
https://github.com/capistrano/capistrano/compare/v3.0.1...v3.1.0
|
180
|
-
|
181
|
-
Breaking changes:
|
182
|
-
|
183
|
-
* `deploy:restart` task **is no longer run by default**.
|
184
|
-
From this version, developers who restart the app on each deploy need to declare it in their deploy flow (eg `after 'deploy:publishing', 'deploy:restart'`)
|
185
|
-
or, for passenger applications, use the capistrano-passenger gem.
|
186
|
-
|
187
|
-
Please, check https://github.com/capistrano/capistrano/commit/4e6523e1f50707499cf75eb53dce37a89528a9b0 for more information. (@kirs)
|
188
|
-
|
189
|
-
* Minor changes
|
190
|
-
* Tasks that used `linked_dirs` and `linked_files` now run on all roles, not just app roles (@mikespokefire)
|
191
|
-
* Tasks `deploy:linked_dirs`, `deploy:make_linked_dirs`, `deploy:linked_files`, `deploy:cleanup_rollback`,
|
192
|
-
`deploy:log_revision` and `deploy:revert_release` now use `release_roles()` not `roles()` meaning that they
|
193
|
-
will only run on servers where the `no_release` property is not falsy. (@leehambley)
|
194
|
-
* Fixed bug when `deploy:cleanup` was executed twice by default (@kirs)
|
195
|
-
* Config location can now be changed with `deploy_config_path` and `stage_config_path` options (@seenmyfate)
|
196
|
-
* `no_release` option is now available (@seenmyfate)
|
197
|
-
* Raise an error if developer tries to define `:all` role, which is reserved (@kirs)
|
198
|
-
* `deploy:failed` hook was added to add some custom behaviour on failed deploy (@seenmyfate)
|
199
|
-
* Correctly infer namespace in task enhancements (@seenmyfate)
|
200
|
-
* Add SHA to revision log (@blackxored)
|
201
|
-
* Allow configuration of multiple servers with same hostname but different ports (@rsslldnphy)
|
202
|
-
* Add command line option to control role filtering (@andytinycat)
|
203
|
-
* Make use of recent changes in Rake to over-ride the application name (@shime)
|
204
|
-
* Readme corrections (@nathanstitt)
|
205
|
-
* Allow roles to be fetched with a variable containing an array (@seenmyfate)
|
206
|
-
* Improve console (@jage)
|
207
|
-
* Add ability to filter tasks to specific servers (host filtering). (@andytinycat)
|
208
|
-
* Add a command line option to control role filter (`--roles`) (@andytinycat)
|
209
|
-
* Use an SCM object with a pluggable strategy (@coffeeaddict)
|
210
|
-
|
211
|
-
Big thanks to @Kriechi for his help.
|
212
|
-
|
213
|
-
## `3.0.1`
|
214
|
-
|
215
|
-
https://github.com/capistrano/capistrano/compare/v3.0.0...v3.0.1
|
216
|
-
|
217
|
-
* `capify` not listed as executable (@leehambley)
|
218
|
-
* Confirm license as MIT (@leehambley)
|
219
|
-
* Move the git ssh helper to application path (@mpapis)
|
220
|
-
|
221
|
-
## `3.0.0`
|
222
|
-
|
223
|
-
https://github.com/capistrano/capistrano/compare/2.15.5...v3.0.0
|
224
|
-
|
225
|
-
If you are coming here to wonder why your Capfile doesn't work anymore, please
|
226
|
-
vendor lock your Capistrano at 2.x, whichever version was working for you
|
227
|
-
until today.
|
228
|
-
|
229
|
-
Capistrano 3 is a ground-up rewrite with modularity, stability, speed and
|
230
|
-
future proofing in mind. It's a big change, but now the code is 10x smaller,
|
231
|
-
runs faster, is easier to read, and quicker to extend. In the reduction we've
|
232
|
-
come up with a great gem based modular system for plugins and we're really
|
233
|
-
proud of this release.
|
234
|
-
|
235
|
-
The 3.0.0 release contains 38 patches from the following amazing people:
|
236
|
-
|
237
|
-
* Tom `seenmyfate` Clements: more than 28 patches including cucumber integration tests! Not to
|
238
|
-
mention Rails asset pipeline code, and bundler integrations.
|
239
|
-
* Lee Hambley: Small changes around compatibility and log formatting
|
240
|
-
* Kir Shatrov: for improvements in the core to make it easier to write extensions, for
|
241
|
-
improving documentation, and for effectively building the chruby, rvm and rbenv integrations.
|
242
|
-
* Michael Nikitochkin: Fixing a bug around linked files and directories.
|
243
|
-
* Jack Thorne: for improvements to the default `Capfile` to fix some bad example syntax.
|
244
|
-
* Erik Hetzner: for (what looks like great) work on the Mercurial (Hg) support. The Hg and Git
|
245
|
-
source control mechanisms do not work the same way, but rather lean on the strengths of the
|
246
|
-
underlying tools.
|
247
|
-
|
248
|
-
(If I missed anyone, I'm sorry, your contributions have been awesome)
|
249
|
-
|
250
|
-
The 2.x branch of code is now no longer maintained. Towards the end of it's
|
251
|
-
useful life there were an increasing number of features and pieces of code
|
252
|
-
which didn't make sense for certain groups of people, in certain situations,
|
253
|
-
leading a to a ping-pong tennis effect with pull requests every few weeks
|
254
|
-
"fixing" a use-case which had already been "fixed" shortly before. As many of
|
255
|
-
the use-cases are outside the scope of the testing environments I (and by
|
256
|
-
extension the trusted contributors and IRC regulars) were able to test for.
|
257
|
-
|
258
|
-
There's a more extensive post about my failure to be able to keep up with the
|
259
|
-
demands of maintaining v2 whilst trying to build something which is appropriate
|
260
|
-
for the current landscape. If you are affected by the unsupported 2 branch,
|
261
|
-
please contact me (Lee Hambley) to discuss how my company can help support you.
|
262
|
-
Otherwise, please try v3, we're sure you'll like it, and the code is designed
|
263
|
-
to be so simple that anyone can work on it.
|
264
|
-
|
265
|
-
## `3.0.0.pre14`
|
266
|
-
|
267
|
-
* Thanks to numerous contributors, in particular (@teohm) for a series of improvements.
|
268
|
-
|
269
|
-
## `3.0.0.pre13`
|
270
|
-
|
271
|
-
* Fixed typos in the Capfile. (@teohm)
|
272
|
-
* Allow setting SSH options globally. (@korin)
|
273
|
-
* Change the flow (and hooks) see http://www.capistranorb.com/documentation/getting-started/flow/ for more information. Requires min SSHKit 0.0.34 (@teohm)
|
274
|
-
* Fix sorting releases in lexicographical order (@teohm)
|
275
|
-
|
276
|
-
## `3.0.0.pre12`
|
277
|
-
|
278
|
-
* `capistrano/bundler` now runs bundle on all roles, this addresses the same
|
279
|
-
issue as the related changes in `pre11`. (@leehambley)
|
280
|
-
|
281
|
-
## `3.0.0.pre11`
|
282
|
-
|
283
|
-
* Some deploy.rake tasks now apply to all servers, not expecting a
|
284
|
-
primary(:app) server which may not exist in all deploy environments.
|
285
|
-
(@leehambley).
|
286
|
-
|
287
|
-
## `3.0.0.pre10`
|
288
|
-
|
289
|
-
* Fixes pre9.
|
290
|
-
|
291
|
-
## `3.0.0.pre9`
|
292
|
-
|
293
|
-
* Fixes a syntax error introduced with filtering (with tests) introduced in
|
294
|
-
`pre8`. (@leehambley)
|
295
|
-
|
296
|
-
## `3.0.0.pre8`
|
297
|
-
|
298
|
-
* Fixed a syntax where `roles(:foo, :bar)` was being mistaken as a filter
|
299
|
-
(roles(:foo, :bar => nil). The correct syntax to use is: roles([:foo,:bar])
|
300
|
-
(@leehambley)
|
301
|
-
|
302
|
-
## `3.0.0.pre7`
|
303
|
-
|
304
|
-
* Fix Git https authentication. (@leehambley)
|
305
|
-
* Capfile template fixes (repo/repo_url) (@teohm)
|
306
|
-
* Readme Fixes (@ffmike, @kejadlen, @dwickwire)
|
307
|
-
* Fix the positioning of the bundler hook, now immediately after finalize. (@teohm)
|
1
|
+
Release notes for this project are kept here: https://github.com/capistrano/capistrano/releases
|