chef-dk 0.12.0 → 0.13.21
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 +4 -4
- data/Gemfile +87 -30
- data/Gemfile.lock +721 -0
- data/Gemfile.windows +34 -0
- data/Gemfile.windows.lock +936 -0
- data/README.md +458 -307
- data/Rakefile +22 -29
- data/acceptance/.shared/kitchen_acceptance/.kitchen.ec2.yml +7 -3
- data/acceptance/Gemfile +10 -11
- data/acceptance/Gemfile.lock +242 -0
- data/chef-dk.gemspec +67 -64
- data/lib/chef-dk/builtin_commands.rb +60 -60
- data/lib/chef-dk/command/verify.rb +564 -534
- data/lib/chef-dk/commands_map.rb +115 -115
- data/lib/chef-dk/component_test.rb +198 -194
- data/lib/chef-dk/version.rb +20 -20
- data/lib/kitchen/provisioner/policyfile_zero.rb +3 -2
- data/omnibus_overrides.rb +11 -0
- data/spec/unit/command/verify_spec.rb +334 -325
- data/tasks/bin/bundle-platform +15 -0
- data/tasks/bin/bundle-platform.bat +2 -0
- data/tasks/bundle.rb +80 -0
- data/tasks/bundle_util.rb +93 -0
- data/tasks/dependencies.rb +175 -0
- data/tasks/gemfile_util.rb +99 -0
- data/tasks/github_changelog_generator.rb +31 -0
- data/tasks/version.rb +48 -0
- data/version_policy.rb +112 -0
- metadata +17 -3
@@ -0,0 +1,31 @@
|
|
1
|
+
#
|
2
|
+
# Copyright:: Copyright (c) 2016 Chef Software Inc.
|
3
|
+
# License:: Apache License, Version 2.0
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
#
|
17
|
+
|
18
|
+
begin
|
19
|
+
require "github_changelog_generator/task"
|
20
|
+
|
21
|
+
GitHubChangelogGenerator::RakeTask.new :changelog do |config|
|
22
|
+
config.user = "chef"
|
23
|
+
config.project = "chef-dk"
|
24
|
+
config.future_release = ChefDK::VERSION
|
25
|
+
config.enhancement_labels = "enhancement,Enhancement,New Feature,Feature".split(",")
|
26
|
+
config.bug_labels = "bug,Bug,Improvement,Upstream Bug".split(",")
|
27
|
+
config.exclude_labels = "duplicate,question,invalid,wontfix,no_changelog,Exclude From Changelog,Question,Discussion".split(",")
|
28
|
+
end
|
29
|
+
rescue LoadError
|
30
|
+
puts "github_changelog_generator is not available. gem install github_changelog_generator to generate changelogs"
|
31
|
+
end
|
data/tasks/version.rb
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
#
|
2
|
+
# Copyright:: Copyright (c) 2016 Chef Software Inc.
|
3
|
+
# License:: Apache License, Version 2.0
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
#
|
17
|
+
|
18
|
+
namespace :version do
|
19
|
+
desc "Bump patch version in lib/chef-dk/version.rb and update Gemfile*.lock conservatively to include the new version. If Gemfile has changed, this will update modified constraints as well."
|
20
|
+
task :bump => 'version:bump_patch' do
|
21
|
+
# We need to update our Gemfile.lock(s) to include the new version. But let's
|
22
|
+
# not upgrade other stuff at the same time ...
|
23
|
+
Rake.application.invoke_task("dependencies:update[conservative]")
|
24
|
+
end
|
25
|
+
|
26
|
+
desc "Show the current version."
|
27
|
+
task :show do
|
28
|
+
puts ChefDK::VERSION
|
29
|
+
end
|
30
|
+
|
31
|
+
def version_rb_path
|
32
|
+
File.expand_path("../../lib/chef-dk/version.rb", __FILE__)
|
33
|
+
end
|
34
|
+
|
35
|
+
# Add 1 to the current patch version in the VERSION file, and write it back out.
|
36
|
+
desc "Bump the patch version in lib/chef-dk/version.rb."
|
37
|
+
task :bump_patch do
|
38
|
+
current_version_file = IO.read(version_rb_path)
|
39
|
+
new_version = nil
|
40
|
+
new_version_file = current_version_file.sub(/^(\s*VERSION\s*=\s*")(\d+\.\d+\.)(\d+)/) do
|
41
|
+
new_version = "#{$2}#{$3.to_i + 1}"
|
42
|
+
"#{$1}#{new_version}"
|
43
|
+
end
|
44
|
+
puts "Updating version in #{version_rb_path} from #{ChefDK::VERSION} to #{new_version.chomp}"
|
45
|
+
IO.write(version_rb_path, new_version_file)
|
46
|
+
end
|
47
|
+
|
48
|
+
end
|
data/version_policy.rb
ADDED
@@ -0,0 +1,112 @@
|
|
1
|
+
#
|
2
|
+
# Copyright:: Copyright (c) 2016 Chef Software Inc.
|
3
|
+
# License:: Apache License, Version 2.0
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
#
|
17
|
+
|
18
|
+
# Explicit omnibus overrides.
|
19
|
+
OMNIBUS_OVERRIDES = {
|
20
|
+
# Lower level library pins
|
21
|
+
libedit: "20130712-3.1",
|
22
|
+
## according to comment in omnibus-sw, latest versions don't work on solaris
|
23
|
+
# https://github.com/chef/omnibus-software/blob/aefb7e79d29ca746c3f843673ef5e317fa3cba54/config/software/libtool.rb#L23
|
24
|
+
libtool: "2.4.2",
|
25
|
+
libxslt: "1.1.28",
|
26
|
+
makedepend: "1.0.5",
|
27
|
+
ruby: "2.1.8",
|
28
|
+
:"util-macros" => "1.19.0",
|
29
|
+
xproto: "7.0.28",
|
30
|
+
zlib: "1.2.8",
|
31
|
+
# libffi: "3.2.1",
|
32
|
+
# libiconv: "1.14",
|
33
|
+
# liblzma: "5.2.2",
|
34
|
+
# libxml2: "2.9.3",
|
35
|
+
# ncurses: "5.9",
|
36
|
+
# :"pkg-config-lite" => "0.28-1",
|
37
|
+
# libyaml: "0.1.6",
|
38
|
+
|
39
|
+
## These can float as they are frequently updated in a way that works for us
|
40
|
+
#override cacerts: "???",
|
41
|
+
#override openssl: "???",
|
42
|
+
}
|
43
|
+
|
44
|
+
#
|
45
|
+
# rake dependencies:update_omnibus_overrides (tasks/dependencies.rb) reads this
|
46
|
+
# and modifies omnibus_overrides.rb
|
47
|
+
#
|
48
|
+
# The left side is the software definition name, and the right side is the
|
49
|
+
# name of the rubygem (gem list -re <rubygem name> gets us the latest version).
|
50
|
+
#
|
51
|
+
OMNIBUS_RUBYGEMS_AT_LATEST_VERSION = {
|
52
|
+
rubygems: "rubygems-update",
|
53
|
+
bundler: "bundler"
|
54
|
+
}
|
55
|
+
|
56
|
+
#
|
57
|
+
# rake dependencies:check (tasks/dependencies.rb) uses this as a list of gems
|
58
|
+
# that are allowed to be outdated according to `bundle updated`
|
59
|
+
#
|
60
|
+
# Once you decide that the list of outdated gems is OK, you can just
|
61
|
+
# add gems to the output of bundle outdated here and we'll parse it to get the
|
62
|
+
# list of outdated gems.
|
63
|
+
#
|
64
|
+
# We're starting with debt here, but don't want it to get worse.
|
65
|
+
#
|
66
|
+
ACCEPTABLE_OUTDATED_GEMS = %w{
|
67
|
+
celluloid
|
68
|
+
celluloid-io
|
69
|
+
docker-api
|
70
|
+
fog-cloudatcost
|
71
|
+
fog-google
|
72
|
+
gherkin
|
73
|
+
google-api-client
|
74
|
+
jwt
|
75
|
+
mime-types
|
76
|
+
mini_portile2
|
77
|
+
retriable
|
78
|
+
rubocop
|
79
|
+
slop
|
80
|
+
timers
|
81
|
+
unicode-display_width
|
82
|
+
varia_model
|
83
|
+
}
|
84
|
+
|
85
|
+
#
|
86
|
+
# Some gems are part of our bundle (must be installed) but not important
|
87
|
+
# enough to lock. We allow `bundle install` in test-kitchen, berks, etc.
|
88
|
+
# to use their own versions of these.
|
89
|
+
#
|
90
|
+
# This mainly tells you which gems `chef verify` allows you to install and
|
91
|
+
# run.
|
92
|
+
#
|
93
|
+
GEMS_ALLOWED_TO_FLOAT = [
|
94
|
+
"rubocop", # different projects disagree in their dev dependencies
|
95
|
+
"unicode-display_width", # dep of rubocop
|
96
|
+
"powerpack", # dep of rubocop
|
97
|
+
]
|
98
|
+
|
99
|
+
#
|
100
|
+
# The list of groups we install without: this drives both the `bundle install`
|
101
|
+
# we do in chef-dk, and the `bundle check` we do to ensure installed gems don't
|
102
|
+
# have extra deps hiding in their Gemfiles.
|
103
|
+
#
|
104
|
+
INSTALL_WITHOUT_GROUPS = %w{
|
105
|
+
development
|
106
|
+
test
|
107
|
+
guard
|
108
|
+
maintenance
|
109
|
+
tools
|
110
|
+
integration
|
111
|
+
changelog
|
112
|
+
}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chef-dk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.13.21
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel DeLeo
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2016-
|
13
|
+
date: 2016-04-25 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: mixlib-cli
|
@@ -238,6 +238,9 @@ extra_rdoc_files: []
|
|
238
238
|
files:
|
239
239
|
- CONTRIBUTING.md
|
240
240
|
- Gemfile
|
241
|
+
- Gemfile.lock
|
242
|
+
- Gemfile.windows
|
243
|
+
- Gemfile.windows.lock
|
241
244
|
- LICENSE
|
242
245
|
- README.md
|
243
246
|
- Rakefile
|
@@ -247,6 +250,7 @@ files:
|
|
247
250
|
- acceptance/.shared/kitchen_acceptance/libraries/kitchen.rb
|
248
251
|
- acceptance/.shared/kitchen_acceptance/metadata.rb
|
249
252
|
- acceptance/Gemfile
|
253
|
+
- acceptance/Gemfile.lock
|
250
254
|
- acceptance/README.md
|
251
255
|
- acceptance/trivial/.acceptance/acceptance-cookbook/.gitignore
|
252
256
|
- acceptance/trivial/.acceptance/acceptance-cookbook/metadata.rb
|
@@ -402,6 +406,7 @@ files:
|
|
402
406
|
- lib/chef-dk/ui.rb
|
403
407
|
- lib/chef-dk/version.rb
|
404
408
|
- lib/kitchen/provisioner/policyfile_zero.rb
|
409
|
+
- omnibus_overrides.rb
|
405
410
|
- spec/shared/a_file_generator.rb
|
406
411
|
- spec/shared/a_generated_file.rb
|
407
412
|
- spec/shared/command_with_ui_object.rb
|
@@ -575,6 +580,15 @@ files:
|
|
575
580
|
- spec/unit/service_exception_inspectors/base_spec.rb
|
576
581
|
- spec/unit/service_exception_inspectors/http_spec.rb
|
577
582
|
- spec/unit/shell_out_spec.rb
|
583
|
+
- tasks/bin/bundle-platform
|
584
|
+
- tasks/bin/bundle-platform.bat
|
585
|
+
- tasks/bundle.rb
|
586
|
+
- tasks/bundle_util.rb
|
587
|
+
- tasks/dependencies.rb
|
588
|
+
- tasks/gemfile_util.rb
|
589
|
+
- tasks/github_changelog_generator.rb
|
590
|
+
- tasks/version.rb
|
591
|
+
- version_policy.rb
|
578
592
|
- warning.txt
|
579
593
|
homepage: https://www.chef.io/
|
580
594
|
licenses: []
|
@@ -604,7 +618,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
604
618
|
version: '0'
|
605
619
|
requirements: []
|
606
620
|
rubyforge_project:
|
607
|
-
rubygems_version: 2.
|
621
|
+
rubygems_version: 2.6.3
|
608
622
|
signing_key:
|
609
623
|
specification_version: 4
|
610
624
|
summary: A streamlined development and deployment workflow for Chef platform.
|