capistrano-bundler 1.6.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 780794935cf4421e6c6ca628207e7fa7fca0f42c8f856727b4ca26acc410246a
4
- data.tar.gz: d7bf7372a9def4a6d90525f2e09292908b0a1390303e1688ec69024e02ad832c
3
+ metadata.gz: b2afb67a369b2e8390dc9dc5d0459717d4b6e16f7ad8d6d635e308f39a6eee1f
4
+ data.tar.gz: ab6c306e5791441f65077bd3c5b8e5404e39544c85b5f39d25d206d786ffd3c1
5
5
  SHA512:
6
- metadata.gz: 03262ebc4a0d68aa83cc12cc42a620ac76c0872753d5625b37e854551b7776f4d1da575f9bec8407b7496c37b43ac73128fb4ed4ecf2220a4714ebfefe5dc09b
7
- data.tar.gz: 675812f770b249ce6e3c010796713b422d6f9bf9866dd2b1c7bb7af7fb9931cdde5720aa98cedd40b5efceccb2e06d8c68c0278797f61ad7ddfc42caeef0a88a
6
+ metadata.gz: 7829207f89b9b04b6f9ef37771615c5ef1f1e6152cf0b840f9f9bc2084eebc287f90aaa6c116d3e44b3deed0fbd5d21427a7206c67a20608edb21792d3bc8f80
7
+ data.tar.gz: 23ba2692c0004a7627ed580baea167c03770c298030fb3e2bba5b14640660b65219857a10bcc84db07839958ab6367feabf6ea76559926e25131c4f0137d6665
@@ -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
@@ -0,0 +1,14 @@
1
+ name: Release Drafter
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+
8
+ jobs:
9
+ update_release_draft:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: release-drafter/release-drafter@v5
13
+ env:
14
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -1,6 +1,9 @@
1
- sudo: false
1
+ ---
2
2
  language: ruby
3
+ cache: bundler
4
+ branches:
5
+ only:
6
+ - master
3
7
  rvm:
4
- - 2.3.3
5
- before_install: gem install bundler -v '~> 1.14' --conservative
6
- before_script: bundle exec danger
8
+ - 2.7.1
9
+ script: bundle exec danger
@@ -1,89 +1 @@
1
- # [Unreleased][] (master)
2
-
3
- * Your contribution here!
4
-
5
- # [1.6.0][] (2 Jul 2019)
6
-
7
- * Added `bundle_check_before_install` option to allow bypassing the `bundle install test` in the `bundler:install` task.
8
-
9
- # [1.5.0][] (23 Dec 2018)
10
-
11
- Changes to default behavior
12
-
13
- * Set `bundle_jobs` default to `4` @Tensho
14
-
15
- Breaking changes
16
-
17
- * None
18
-
19
- # [1.4.0][] (21 Oct 2018)
20
-
21
- Breaking changes
22
-
23
- * None
24
-
25
- Added
26
-
27
- * When "bundle install" is skipped due to a Gemfile's dependencies are being satisfied, print a message to the log instead of silently skipping
28
-
29
- # [1.3.0][] (22 Sep 2017)
30
-
31
- Breaking changes
32
-
33
- * None
34
-
35
- Added
36
-
37
- * Set all variables in `load:defaults` task so they are recognised as valid Capistrano settings when using `doctor:variables` and ensure defaults for `bundle_env_variables` and `bundle_clean_options` are set once in the same place as the other defaults.
38
-
39
- # [1.2.0][] (1 Oct 2016)
40
-
41
- Breaking changes
42
-
43
- * None
44
-
45
- Added
46
-
47
- * A `bundle clean` task. There are no default hooks for it.
48
- * Use `bundle check` to check if we can skip `bundle install`
49
- * Run `bundle:install` on rollback (`deploy:reverted`)
50
- * You can now `require "capistrano/bundler/tasks"` to load the tasks only without the hooks
51
-
52
- # 1.1.4 (22 Jan 2015)
53
-
54
- * Don’t generate binstubs by default (#61)
55
-
56
- # 1.1.3 (4 Aug 2014)
57
-
58
- * Honor `:no_release` flag by using `release_roles` in Capistrano 3.1
59
- * capistrano-bundler now requires Capistrano 3.1 or higher (~> 3.1)
60
- * Added `:bundle_jobs` option for specifying number of parallel jobs
61
-
62
- # 1.1.2 (8 Feb 2014)
63
-
64
- * Added `bundle_env_variables` option for specifying environment variables that should be set when running `bundle`.
65
- * The `bundle_dir` option is now named `bundle_path`
66
- * Use `bundle install` instead of `bundle`
67
- * All options are now optional and can be excluded from the final bundle command by setting them to `nil`
68
- * Bundler looks for a `Gemfile` by default, so there is no need to specify it.
69
-
70
- # 1.1.1
71
-
72
- * ruby is not prefixed with `bundle exec` anymore by default
73
- * prefix rails with `bundle exec` by default
74
-
75
- # 1.1.0
76
-
77
- * Switching to new command map (https://github.com/capistrano/sshkit/pull/45)
78
- Thanks to new command map, now this integration adds `bundle exec` to global executables (gem, ruby, rake). The list of executable can be tweaked by `bundle_bins`.
79
-
80
- # 1.0.0
81
-
82
- Initial release
83
-
84
- [Unreleased]: https://github.com/capistrano/bundler/compare/v1.6.0...HEAD
85
- [1.6.0]: https://github.com/capistrano/bundler/compare/v1.5.0...v1.6.0
86
- [1.5.0]: https://github.com/capistrano/bundler/compare/v1.4.0...v1.5.0
87
- [1.4.0]: https://github.com/capistrano/bundler/compare/v1.3.0...v1.4.0
88
- [1.3.0]: https://github.com/capistrano/bundler/compare/v1.2.0...v1.3.0
89
- [1.2.0]: https://github.com/capistrano/bundler/compare/v1.1.4...v1.2.0
1
+ Release notes for this project are kept here: https://github.com/capistrano/bundler/releases
data/Dangerfile CHANGED
@@ -1 +1 @@
1
- danger.import_dangerfile(github: "capistrano/danger")
1
+ danger.import_dangerfile(github: "capistrano/danger", branch: "no-changelog")
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2016 Capistrano, your one stop deployment shop.
3
+ Copyright (c) 2020 Capistrano, your one stop deployment shop.
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy of
6
6
  this software and associated documentation files (the "Software"), to deal in
data/README.md CHANGED
@@ -14,7 +14,7 @@ Add these lines to your application's Gemfile **[Recommended]**:
14
14
 
15
15
  ```ruby
16
16
  gem 'capistrano', '~> 3.6'
17
- gem 'capistrano-bundler', '~> 1.6'
17
+ gem 'capistrano-bundler', '~> 2.0'
18
18
  ```
19
19
 
20
20
  And then execute:
@@ -72,12 +72,13 @@ Configurable options:
72
72
 
73
73
  ```ruby
74
74
  set :bundle_roles, :all # this is default
75
+ set :bundle_config, { deployment: true } # this is default
75
76
  set :bundle_servers, -> { release_roles(fetch(:bundle_roles)) } # this is default
76
77
  set :bundle_binstubs, -> { shared_path.join('bin') } # default: nil
77
78
  set :bundle_gemfile, -> { release_path.join('MyGemfile') } # default: nil
78
- set :bundle_path, -> { shared_path.join('bundle') } # this is default. set it to nil for skipping the --path flag.
79
+ set :bundle_path, -> { shared_path.join('bundle') } # this is default. set it to nil to use bundler's default path
79
80
  set :bundle_without, %w{development test}.join(' ') # this is default
80
- set :bundle_flags, '--deployment --quiet' # this is default
81
+ set :bundle_flags, '--quiet' # this is default
81
82
  set :bundle_env_variables, {} # this is default
82
83
  set :bundle_clean_options, "" # this is default. Use "--dry-run" if you just want to know what gems would be deleted, without actually deleting them
83
84
  set :bundle_check_before_install, true # default: true. Set this to false to bypass running `bundle check` before executing `bundle install`
@@ -96,19 +97,18 @@ To generate binstubs on each deploy, set `:bundle_binstubs` path:
96
97
  set :bundle_binstubs, -> { shared_path.join('bin') }
97
98
  ```
98
99
 
99
- In the result this would execute the following bundle command on all servers
100
+ In the result this would execute the following bundle commands on all servers
100
101
  (actual paths depend on the real deploy directory):
101
102
 
102
103
  ```sh
103
- $ bundle install \
104
- --binstubs /my_app/shared/bin \
105
- --gemfile /my_app/releases/20130623094732/MyGemfile \
106
- --path /my_app/shared/bundle \
107
- --without development test \
108
- --deployment --quiet
104
+ $ bundle config --local deployment true
105
+ $ bundle config --local gemfile /my_app/releases/20130623094732/MyGemfile
106
+ $ bundle config --local path /my_app/shared/bundle
107
+ $ bundle config --local without "development test"
108
+ $ bundle install --quiet --binstubs /my_app/shared/bin
109
109
  ```
110
110
 
111
- If any option is set to `nil` it will be excluded from the final bundle command.
111
+ If any option is set to `nil` it will be excluded from the final bundle commands.
112
112
 
113
113
  If you want to clean up gems after a successful deploy, add `after 'deploy:published', 'bundler:clean'` to config/deploy.rb.
114
114
 
data/Rakefile CHANGED
@@ -2,3 +2,8 @@ require "bundler/gem_tasks"
2
2
 
3
3
  # Do nothing by default
4
4
  task :default
5
+
6
+ Rake::Task["release"].enhance do
7
+ puts "Don't forget to publish the release on GitHub!"
8
+ system "open https://github.com/capistrano/bundler/releases"
9
+ end
@@ -4,13 +4,16 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = 'capistrano-bundler'
7
- spec.version = '1.6.0'
7
+ spec.version = '2.0.0'
8
+ spec.license = 'MIT'
8
9
  spec.authors = ['Tom Clements', 'Lee Hambley', 'Kir Shatrov']
9
10
  spec.email = ['seenmyfate@gmail.com', 'lee.hambley@gmail.com', 'shatrov@me.com']
10
11
  spec.description = %q{Bundler support for Capistrano 3.x}
11
12
  spec.summary = %q{Bundler support for Capistrano 3.x}
12
13
  spec.homepage = 'https://github.com/capistrano/bundler'
13
- spec.license = 'MIT'
14
+ spec.metadata = {
15
+ "changelog_uri" => "https://github.com/capistrano/bundler/releases"
16
+ }
14
17
 
15
18
  spec.files = `git ls-files`.split($/)
16
19
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
@@ -19,7 +22,7 @@ Gem::Specification.new do |spec|
19
22
 
20
23
  spec.add_dependency 'capistrano', '~> 3.1'
21
24
 
22
- spec.add_development_dependency 'bundler', '~> 1.3'
25
+ spec.add_development_dependency 'bundler', '~> 2.1'
23
26
  spec.add_development_dependency 'danger'
24
27
  spec.add_development_dependency 'rake'
25
28
  end
@@ -1,9 +1,39 @@
1
+ require "shellwords"
2
+
1
3
  namespace :bundler do
2
4
  desc <<-DESC
3
- Install the current Bundler environment. By default, gems will be \
4
- installed to the shared/bundle path. Gems in the development and \
5
- test group will not be installed. The install command is executed \
6
- with the --deployment and --quiet flags.
5
+ Configure the Bundler environment for the release so that subequent
6
+ `bundle check`, `bundle install`, `bundle clean`, and `bundle exec`
7
+ commands all behave consistently. The following settings will be
8
+ turned into the appropriate `bundle config` executions:
9
+
10
+ :bundle_config
11
+ :bundle_gemfile
12
+ :bundle_path
13
+ :bundle_without
14
+ DESC
15
+ task :config do
16
+ on fetch(:bundle_servers) do
17
+ within release_path do
18
+ with fetch(:bundle_env_variables) do
19
+ configuration = fetch(:bundle_config).dup || {}
20
+ configuration[:gemfile] = fetch(:bundle_gemfile)
21
+ configuration[:path] = fetch(:bundle_path)
22
+ configuration[:without] = fetch(:bundle_without)
23
+
24
+ configuration.each do |key, value|
25
+ execute :bundle, "config", "--local", key, value.to_s.shellescape unless value.nil?
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+
32
+ desc <<-DESC
33
+ Install the current Bundler environment. By default, gems will be
34
+ installed to the shared/bundle path. Gems in the development and
35
+ test group will not be installed. The install command is executed
36
+ with the --quiet and --jobs=4 flags.
7
37
 
8
38
  By default, bundler will not be run on servers with no_release: true.
9
39
 
@@ -11,30 +41,27 @@ namespace :bundler do
11
41
 
12
42
  set :bundle_roles, :all
13
43
 
44
+ set :bundle_config, { deployment: true }
14
45
  set :bundle_servers, -> { release_roles(fetch(:bundle_roles)) }
15
- set :bundle_binstubs, -> { shared_path.join('bin') }
46
+ set :bundle_binstubs, nil
16
47
  set :bundle_gemfile, -> { release_path.join('Gemfile') }
17
48
  set :bundle_path, -> { shared_path.join('bundle') }
18
49
  set :bundle_without, %w{development test}.join(' ')
19
- set :bundle_flags, '--deployment --quiet'
20
- set :bundle_jobs, nil
50
+ set :bundle_flags, '--quiet'
51
+ set :bundle_jobs, 4
21
52
  set :bundle_env_variables, {}
22
53
  set :bundle_clean_options, ""
23
54
  DESC
24
- task :install do
55
+ task install: :config do
25
56
  on fetch(:bundle_servers) do
26
57
  within release_path do
27
58
  with fetch(:bundle_env_variables) do
28
- options = []
29
- options << "--gemfile #{fetch(:bundle_gemfile)}" if fetch(:bundle_gemfile)
30
- options << "--path #{fetch(:bundle_path)}" if fetch(:bundle_path)
31
-
32
- if fetch(:bundle_check_before_install) && test(:bundle, :check, *options)
59
+ if fetch(:bundle_check_before_install) && test(:bundle, :check)
33
60
  info "The Gemfile's dependencies are satisfied, skipping installation"
34
61
  else
62
+ options = []
35
63
  options << "--binstubs #{fetch(:bundle_binstubs)}" if fetch(:bundle_binstubs)
36
64
  options << "--jobs #{fetch(:bundle_jobs)}" if fetch(:bundle_jobs)
37
- options << "--without #{fetch(:bundle_without)}" if fetch(:bundle_without)
38
65
  options << "#{fetch(:bundle_flags)}" if fetch(:bundle_flags)
39
66
  execute :bundle, :install, *options
40
67
  end
@@ -56,7 +83,7 @@ namespace :bundler do
56
83
  end
57
84
 
58
85
  desc "Remove unused gems installed by bundler"
59
- task :clean do
86
+ task clean: :config do
60
87
  on fetch(:bundle_servers) do
61
88
  within release_path do
62
89
  with fetch(:bundle_env_variables) do
@@ -76,12 +103,14 @@ namespace :load do
76
103
  set :bundle_bins, %w{gem rake rails}
77
104
 
78
105
  set :bundle_roles, :all
106
+
107
+ set :bundle_config, { deployment: true }
79
108
  set :bundle_servers, -> { release_roles(fetch(:bundle_roles)) }
80
109
  set :bundle_binstubs, nil
81
110
  set :bundle_gemfile, nil
82
111
  set :bundle_path, -> { shared_path.join('bundle') }
83
112
  set :bundle_without, %w{development test}.join(' ')
84
- set :bundle_flags, '--deployment --quiet'
113
+ set :bundle_flags, '--quiet'
85
114
  set :bundle_jobs, 4
86
115
  set :bundle_env_variables, {}
87
116
  set :bundle_clean_options, ""
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capistrano-bundler
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tom Clements
8
8
  - Lee Hambley
9
9
  - Kir Shatrov
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2019-07-02 00:00:00.000000000 Z
13
+ date: 2020-07-11 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: capistrano
@@ -32,14 +32,14 @@ dependencies:
32
32
  requirements:
33
33
  - - "~>"
34
34
  - !ruby/object:Gem::Version
35
- version: '1.3'
35
+ version: '2.1'
36
36
  type: :development
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - "~>"
41
41
  - !ruby/object:Gem::Version
42
- version: '1.3'
42
+ version: '2.1'
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: danger
45
45
  requirement: !ruby/object:Gem::Requirement
@@ -77,6 +77,8 @@ executables: []
77
77
  extensions: []
78
78
  extra_rdoc_files: []
79
79
  files:
80
+ - ".github/release-drafter.yml"
81
+ - ".github/workflows/push.yml"
80
82
  - ".gitignore"
81
83
  - ".travis.yml"
82
84
  - CHANGELOG.md
@@ -95,8 +97,9 @@ files:
95
97
  homepage: https://github.com/capistrano/bundler
96
98
  licenses:
97
99
  - MIT
98
- metadata: {}
99
- post_install_message:
100
+ metadata:
101
+ changelog_uri: https://github.com/capistrano/bundler/releases
102
+ post_install_message:
100
103
  rdoc_options: []
101
104
  require_paths:
102
105
  - lib
@@ -111,8 +114,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
111
114
  - !ruby/object:Gem::Version
112
115
  version: '0'
113
116
  requirements: []
114
- rubygems_version: 3.0.4
115
- signing_key:
117
+ rubygems_version: 3.1.4
118
+ signing_key:
116
119
  specification_version: 4
117
120
  summary: Bundler support for Capistrano 3.x
118
121
  test_files: []