knife-changelog 1.5.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ac82fb7552ead5bf08e8d7340883adab40185d5098c60ab3944472b3d51555b8
4
- data.tar.gz: 22f9713b7df19b7a332a1a275e3a69db6dfa0d9d59abd815d7728c22b6d7c006
3
+ metadata.gz: 33f9c5c8b0d5cec6a862af4f16c6ba10ad50d0ec63d52c66ae6f78ad57e5edf5
4
+ data.tar.gz: 9122a7dc32a956d2301799efddbabe6f90f581c3d03b7bf4e9baea94aca7a3ec
5
5
  SHA512:
6
- metadata.gz: 64bed7f1436c1d8536d479673d92d7749e7a8e9d16c271f81bbeac380c24b1f305300ff77bd4e17f7698746b2545b7773897923c7cb27dd68f6266f50ae5888a
7
- data.tar.gz: e7939f44aefd0b409a9e5d2a12f7bdf1cd4ad9671c6ec906b1a650f51aaddb3cd72985ec3f220a5b8f96f532ddd1735d3bf7c9948927ac3905fc2f6dfb8e97c3
6
+ metadata.gz: bbe30f69038cacfc6da33eb097122daea229c01532a579100c47a21e3f97bd20c449f070164457f82433df42f3bd6bbdfdd76f8425375e9336145d7d64941801
7
+ data.tar.gz: b568f75c320ba3e6016d1e2cfa72d8d81489e2764c8e8d763c8833aa3681f73bf7085bd3c6d93c14ec3c503f54164c0e62646093e34a8a5961ed2e7f98bace7b
@@ -10,9 +10,9 @@ jobs:
10
10
  - uses: ruby/setup-ruby@v1
11
11
  with:
12
12
  ruby-version: 2.7
13
- - run: |
14
- install -D -m 600 <(echo -e "---\n:rubygems_api_key: ${RUBYGEMS_API_KEY}") $HOME/.gem/credentials
15
- gem build *.gemspec
16
- gem push *.gem
13
+ - name: Build
14
+ run: gem build *.gemspec
15
+ - name: Push on Rubygems
16
+ run: gem push *.gem
17
17
  env:
18
- RUBYGEMS_API_KEY: ${{secrets.RUBYGEMS_API_KEY}}
18
+ GEM_HOST_API_KEY: ${{secrets.RUBYGEMS_API_KEY}}
data/Gemfile CHANGED
@@ -1,3 +1,5 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
+
5
+ gem 'chef', '14.7.17' # Pin for now as recent Chef version does not provide knife
@@ -5,7 +5,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = 'knife-changelog'
8
- spec.version = '1.5.0'
8
+ spec.version = '2.0.0'
9
9
  spec.authors = ['Gregoire Seux']
10
10
  spec.email = ['kamaradclimber@gmail.com']
11
11
  spec.summary = 'Facilitate access to cookbooks changelog'
@@ -26,7 +26,7 @@ Gem::Specification.new do |spec|
26
26
 
27
27
  spec.add_dependency 'berkshelf'
28
28
  spec.add_dependency 'chef'
29
- spec.add_dependency 'chef-dk'
29
+ spec.add_dependency 'chef-cli'
30
30
  spec.add_dependency 'deep_merge'
31
31
  spec.add_dependency 'git'
32
32
  spec.add_dependency 'mixlib-shellout'
@@ -18,7 +18,7 @@ class KnifeChangelog
18
18
  end
19
19
  end
20
20
 
21
- def initialize(config)
21
+ def initialize(config = {})
22
22
  @tmp_prefix = 'knife-changelog'
23
23
  @config = config
24
24
  @tmp_dirs = []
@@ -177,7 +177,7 @@ class KnifeChangelog
177
177
  if !url.end_with?('.git')
178
178
  url = "#{url}.git"
179
179
  end
180
- location = Location.new(url, guess_version_for(name), 'master')
180
+ location = Location.new(url, guess_version_for(name), 'HEAD')
181
181
  handle_git(name, location)
182
182
  end
183
183
 
@@ -200,7 +200,7 @@ class KnifeChangelog
200
200
  subm_revision.error!
201
201
  revision = subm_revision.stdout.strip.split(' ').first
202
202
  revision.gsub!(/^\+/, '')
203
- loc = Location.new(url, revision, 'master')
203
+ loc = Location.new(url, revision, 'HEAD')
204
204
  handle_git(name, loc)
205
205
  end
206
206
 
@@ -0,0 +1,18 @@
1
+ # coding: utf-8
2
+ require 'chef/log'
3
+ require_relative 'changelog'
4
+
5
+ class KnifeChangelog
6
+ class GitSubmodule < Changelog
7
+
8
+ def run(submodules)
9
+ raise ::ArgumentError, "Submodules must be an Array instead of #{submodules.inspect}" unless submodules.is_a?(::Array)
10
+ submodules.map do |submodule|
11
+ Chef::Log.debug "Checking changelog for #{submodule} (submodule)"
12
+ format_changelog(submodule, *handle_submodule(submodule))
13
+ end.compact.join("\n")
14
+ ensure
15
+ clean
16
+ end
17
+ end
18
+ end
@@ -2,8 +2,8 @@
2
2
 
3
3
  require 'chef'
4
4
  require 'chef/knife'
5
- require 'chef-dk/command/update'
6
- require 'chef-dk/command/install'
5
+ require 'chef-cli/command/update'
6
+ require 'chef-cli/command/install'
7
7
  require 'deep_merge'
8
8
  require 'git'
9
9
  require 'json'
@@ -32,9 +32,9 @@ class PolicyChangelog
32
32
  def update_policyfile_lock
33
33
  backup_dir = Dir.mktmpdir
34
34
  FileUtils.cp(File.join(@policyfile_dir, 'Policyfile.lock.json'), backup_dir)
35
- installer = ChefDK::Command::Install.new
35
+ installer = ChefCLI::Command::Install.new
36
36
  raise "Cannot install Policyfile lock #{@policyfile_path}" unless installer.run([@policyfile_relative_path]).zero?
37
- updater = ChefDK::Command::Update.new
37
+ updater = ChefCLI::Command::Update.new
38
38
  raise "Error updating Policyfile lock #{@policyfile_path}" unless updater.run([@policyfile_path, @cookbooks_to_update].flatten).zero?
39
39
  updated_policyfile_lock = read_policyfile_lock(@policyfile_dir)
40
40
  FileUtils.cp(File.join(backup_dir, 'Policyfile.lock.json'), @policyfile_dir)
@@ -347,7 +347,7 @@ RSpec.describe PolicyChangelog do
347
347
  expect(changelog.generate_changelog).to eq(output)
348
348
  end
349
349
  it 'raises an exception' do
350
- allow(ChefDK::Command::Update).to receive(:new).and_return(fake_update)
350
+ allow(ChefCLI::Command::Update).to receive(:new).and_return(fake_update)
351
351
  allow(fake_update).to receive(:run).and_return(1)
352
352
  allow(changelog).to receive(:git_changelog)
353
353
  .and_return('e1b971a Add test commit message')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: knife-changelog
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gregoire Seux
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-12 00:00:00.000000000 Z
11
+ date: 2022-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry
@@ -109,7 +109,7 @@ dependencies:
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
- name: chef-dk
112
+ name: chef-cli
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - ">="
@@ -198,6 +198,7 @@ files:
198
198
  - lib/knife/changelog/berksfile.rb
199
199
  - lib/knife/changelog/changelog.rb
200
200
  - lib/knife/changelog/git.rb
201
+ - lib/knife/changelog/git_submodule.rb
201
202
  - lib/knife/changelog/policyfile.rb
202
203
  - resources/Berksfile
203
204
  - resources/Berksfile.lock