chefspec 5.4.0 → 6.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 +4 -4
- data/.travis.yml +6 -2
- data/CHANGELOG.md +12 -1
- data/README.md +17 -3
- data/chefspec.gemspec +2 -3
- data/examples/apt_package/spec/install_spec.rb +1 -1
- data/examples/apt_package/spec/purge_spec.rb +1 -1
- data/examples/apt_package/spec/reconfig_spec.rb +1 -1
- data/examples/apt_package/spec/remove_spec.rb +1 -1
- data/examples/apt_package/spec/upgrade_spec.rb +1 -1
- data/examples/apt_repository/spec/add_spec.rb +1 -1
- data/examples/apt_repository/spec/remove_spec.rb +1 -1
- data/examples/apt_update/spec/periodic_spec.rb +1 -1
- data/examples/apt_update/spec/update_spec.rb +1 -1
- data/examples/batch/spec/run_spec.rb +1 -1
- data/examples/cab_package/recipes/install.rb +13 -0
- data/examples/cab_package/recipes/remove.rb +13 -0
- data/examples/cab_package/spec/install_spec.rb +26 -0
- data/examples/cab_package/spec/remove_spec.rb +22 -0
- data/examples/chocolatey_package/spec/install_spec.rb +1 -1
- data/examples/chocolatey_package/spec/remove_spec.rb +1 -1
- data/examples/chocolatey_package/spec/upgrade_spec.rb +1 -1
- data/examples/dnf_package/recipes/install.rb +13 -0
- data/examples/dnf_package/recipes/purge.rb +13 -0
- data/examples/dnf_package/recipes/remove.rb +13 -0
- data/examples/dnf_package/recipes/upgrade.rb +13 -0
- data/examples/dnf_package/spec/install_spec.rb +26 -0
- data/examples/dnf_package/spec/purge_spec.rb +22 -0
- data/examples/dnf_package/spec/remove_spec.rb +22 -0
- data/examples/dnf_package/spec/upgrade_spec.rb +22 -0
- data/examples/dpkg_package/spec/install_spec.rb +1 -1
- data/examples/dpkg_package/spec/purge_spec.rb +1 -1
- data/examples/dpkg_package/spec/remove_spec.rb +1 -1
- data/examples/dsc_resource/spec/run_spec.rb +4 -4
- data/examples/dsc_script/spec/run_spec.rb +1 -1
- data/examples/env/spec/create_spec.rb +1 -1
- data/examples/env/spec/delete_spec.rb +1 -1
- data/examples/env/spec/modify_spec.rb +1 -1
- data/examples/freebsd_package/spec/install_spec.rb +1 -1
- data/examples/freebsd_package/spec/remove_spec.rb +1 -1
- data/examples/ips_package/spec/install_spec.rb +1 -1
- data/examples/ips_package/spec/remove_spec.rb +1 -1
- data/examples/ips_package/spec/upgrade_spec.rb +1 -1
- data/examples/msu_package/recipes/install.rb +13 -0
- data/examples/msu_package/recipes/remove.rb +13 -0
- data/examples/msu_package/spec/install_spec.rb +26 -0
- data/examples/msu_package/spec/remove_spec.rb +22 -0
- data/examples/pacman_package/spec/install_spec.rb +1 -1
- data/examples/pacman_package/spec/purge_spec.rb +1 -1
- data/examples/pacman_package/spec/remove_spec.rb +1 -1
- data/examples/pacman_package/spec/upgrade_spec.rb +1 -1
- data/examples/portage_package/spec/install_spec.rb +1 -1
- data/examples/portage_package/spec/purge_spec.rb +1 -1
- data/examples/portage_package/spec/remove_spec.rb +1 -1
- data/examples/portage_package/spec/upgrade_spec.rb +1 -1
- data/examples/powershell_script/spec/run_spec.rb +1 -1
- data/examples/registry_key/spec/create_if_missing_spec.rb +1 -1
- data/examples/registry_key/spec/create_spec.rb +1 -1
- data/examples/registry_key/spec/delete_key_spec.rb +1 -1
- data/examples/registry_key/spec/delete_spec.rb +1 -1
- data/examples/roles/roles/role.rb +2 -2
- data/examples/rpm_package/spec/install_spec.rb +1 -1
- data/examples/rpm_package/spec/remove_spec.rb +1 -1
- data/examples/rpm_package/spec/upgrade_spec.rb +1 -1
- data/examples/server/spec/data_bag_spec.rb +9 -11
- data/examples/smartos_package/spec/install_spec.rb +1 -1
- data/examples/smartos_package/spec/remove_spec.rb +1 -1
- data/examples/smartos_package/spec/upgrade_spec.rb +1 -1
- data/examples/solaris_package/spec/install_spec.rb +1 -1
- data/examples/solaris_package/spec/remove_spec.rb +1 -1
- data/examples/step_into/spec/default_spec.rb +2 -2
- data/examples/use_inline_resources/spec/default_spec.rb +1 -1
- data/examples/windows_package/spec/install_spec.rb +1 -1
- data/examples/windows_package/spec/remove_spec.rb +1 -1
- data/examples/windows_service/spec/configure_startup_spec.rb +1 -1
- data/examples/windows_service/spec/disable_spec.rb +1 -1
- data/examples/windows_service/spec/enable_spec.rb +1 -1
- data/examples/windows_service/spec/reload_spec.rb +1 -1
- data/examples/windows_service/spec/restart_spec.rb +1 -1
- data/examples/windows_service/spec/start_spec.rb +1 -1
- data/examples/windows_service/spec/stop_spec.rb +1 -1
- data/examples/yum_package/spec/install_spec.rb +1 -1
- data/examples/yum_package/spec/purge_spec.rb +1 -1
- data/examples/yum_package/spec/remove_spec.rb +1 -1
- data/examples/yum_package/spec/upgrade_spec.rb +1 -1
- data/examples/yum_repository/spec/add_spec.rb +1 -1
- data/examples/yum_repository/spec/create_spec.rb +1 -1
- data/examples/yum_repository/spec/delete_spec.rb +1 -1
- data/examples/yum_repository/spec/makecache_spec.rb +1 -1
- data/examples/yum_repository/spec/remove_spec.rb +1 -1
- data/features/cab_package.feature +21 -0
- data/features/dnf_package.feature +26 -0
- data/features/msu_package.feature +23 -0
- data/features/support/env.rb +8 -0
- data/lib/chefspec.rb +0 -1
- data/lib/chefspec/api.rb +3 -0
- data/lib/chefspec/api/cab_package.rb +80 -0
- data/lib/chefspec/api/dnf_package.rb +154 -0
- data/lib/chefspec/api/msu_package.rb +81 -0
- data/lib/chefspec/rspec.rb +1 -0
- data/lib/chefspec/server_methods.rb +4 -35
- data/lib/chefspec/server_runner.rb +2 -42
- data/lib/chefspec/version.rb +1 -1
- data/lib/chefspec/zero_server.rb +139 -0
- metadata +31 -6
- data/lib/chefspec/chef_backwards_compat.rb +0 -79
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: chefspec
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 6.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Andrew Crump
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2017-02-
|
|
12
|
+
date: 2017-02-23 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: chef
|
|
@@ -59,14 +59,14 @@ dependencies:
|
|
|
59
59
|
requirements:
|
|
60
60
|
- - "<"
|
|
61
61
|
- !ruby/object:Gem::Version
|
|
62
|
-
version: '
|
|
62
|
+
version: '13.0'
|
|
63
63
|
type: :development
|
|
64
64
|
prerelease: false
|
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
|
66
66
|
requirements:
|
|
67
67
|
- - "<"
|
|
68
68
|
- !ruby/object:Gem::Version
|
|
69
|
-
version: '
|
|
69
|
+
version: '13.0'
|
|
70
70
|
- !ruby/object:Gem::Dependency
|
|
71
71
|
name: redcarpet
|
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -160,6 +160,10 @@ files:
|
|
|
160
160
|
- examples/bff_package/spec/purge_spec.rb
|
|
161
161
|
- examples/bff_package/spec/remove_spec.rb
|
|
162
162
|
- examples/bff_package/spec/upgrade_spec.rb
|
|
163
|
+
- examples/cab_package/recipes/install.rb
|
|
164
|
+
- examples/cab_package/recipes/remove.rb
|
|
165
|
+
- examples/cab_package/spec/install_spec.rb
|
|
166
|
+
- examples/cab_package/spec/remove_spec.rb
|
|
163
167
|
- examples/cached/recipes/default.rb
|
|
164
168
|
- examples/cached/spec/default_spec.rb
|
|
165
169
|
- examples/chef_gem/recipes/install.rb
|
|
@@ -209,6 +213,14 @@ files:
|
|
|
209
213
|
- examples/directory/recipes/delete.rb
|
|
210
214
|
- examples/directory/spec/create_spec.rb
|
|
211
215
|
- examples/directory/spec/delete_spec.rb
|
|
216
|
+
- examples/dnf_package/recipes/install.rb
|
|
217
|
+
- examples/dnf_package/recipes/purge.rb
|
|
218
|
+
- examples/dnf_package/recipes/remove.rb
|
|
219
|
+
- examples/dnf_package/recipes/upgrade.rb
|
|
220
|
+
- examples/dnf_package/spec/install_spec.rb
|
|
221
|
+
- examples/dnf_package/spec/purge_spec.rb
|
|
222
|
+
- examples/dnf_package/spec/remove_spec.rb
|
|
223
|
+
- examples/dnf_package/spec/upgrade_spec.rb
|
|
212
224
|
- examples/do_nothing/recipes/default.rb
|
|
213
225
|
- examples/do_nothing/spec/default_spec.rb
|
|
214
226
|
- examples/dpkg_package/recipes/install.rb
|
|
@@ -367,6 +379,10 @@ files:
|
|
|
367
379
|
- examples/mount/spec/mount_spec.rb
|
|
368
380
|
- examples/mount/spec/remount_spec.rb
|
|
369
381
|
- examples/mount/spec/umount_spec.rb
|
|
382
|
+
- examples/msu_package/recipes/install.rb
|
|
383
|
+
- examples/msu_package/recipes/remove.rb
|
|
384
|
+
- examples/msu_package/spec/install_spec.rb
|
|
385
|
+
- examples/msu_package/spec/remove_spec.rb
|
|
370
386
|
- examples/multiple_actions/recipes/default.rb
|
|
371
387
|
- examples/multiple_actions/recipes/sequential.rb
|
|
372
388
|
- examples/multiple_actions/spec/default_spec.rb
|
|
@@ -678,6 +694,7 @@ files:
|
|
|
678
694
|
- features/attributes.feature
|
|
679
695
|
- features/batch.feature
|
|
680
696
|
- features/bff_package.feature
|
|
697
|
+
- features/cab_package.feature
|
|
681
698
|
- features/cached.feature
|
|
682
699
|
- features/chef_gem.feature
|
|
683
700
|
- features/chocolatey_package.feature
|
|
@@ -687,6 +704,7 @@ files:
|
|
|
687
704
|
- features/custom_matcher.feature
|
|
688
705
|
- features/deploy.feature
|
|
689
706
|
- features/directory.feature
|
|
707
|
+
- features/dnf_package.feature
|
|
690
708
|
- features/do_nothing.feature
|
|
691
709
|
- features/dpkg_package.feature
|
|
692
710
|
- features/dsc_resource.feature
|
|
@@ -714,6 +732,7 @@ files:
|
|
|
714
732
|
- features/macports_package.feature
|
|
715
733
|
- features/mdadm.feature
|
|
716
734
|
- features/mount.feature
|
|
735
|
+
- features/msu_package.feature
|
|
717
736
|
- features/multiple_actions.feature
|
|
718
737
|
- features/multiple_run_action.feature
|
|
719
738
|
- features/notifications.feature
|
|
@@ -770,12 +789,14 @@ files:
|
|
|
770
789
|
- lib/chefspec/api/apt_update.rb
|
|
771
790
|
- lib/chefspec/api/batch.rb
|
|
772
791
|
- lib/chefspec/api/bff_package.rb
|
|
792
|
+
- lib/chefspec/api/cab_package.rb
|
|
773
793
|
- lib/chefspec/api/chef_gem.rb
|
|
774
794
|
- lib/chefspec/api/chocolatey_package.rb
|
|
775
795
|
- lib/chefspec/api/cookbook_file.rb
|
|
776
796
|
- lib/chefspec/api/cron.rb
|
|
777
797
|
- lib/chefspec/api/deploy.rb
|
|
778
798
|
- lib/chefspec/api/directory.rb
|
|
799
|
+
- lib/chefspec/api/dnf_package.rb
|
|
779
800
|
- lib/chefspec/api/do_nothing.rb
|
|
780
801
|
- lib/chefspec/api/dpkg_package.rb
|
|
781
802
|
- lib/chefspec/api/dsc_resource.rb
|
|
@@ -800,6 +821,7 @@ files:
|
|
|
800
821
|
- lib/chefspec/api/macports_package.rb
|
|
801
822
|
- lib/chefspec/api/mdadm.rb
|
|
802
823
|
- lib/chefspec/api/mount.rb
|
|
824
|
+
- lib/chefspec/api/msu_package.rb
|
|
803
825
|
- lib/chefspec/api/notifications.rb
|
|
804
826
|
- lib/chefspec/api/ohai.rb
|
|
805
827
|
- lib/chefspec/api/openbsd_package.rb
|
|
@@ -834,7 +856,6 @@ files:
|
|
|
834
856
|
- lib/chefspec/api/zypper_package.rb
|
|
835
857
|
- lib/chefspec/berkshelf.rb
|
|
836
858
|
- lib/chefspec/cacher.rb
|
|
837
|
-
- lib/chefspec/chef_backwards_compat.rb
|
|
838
859
|
- lib/chefspec/coverage.rb
|
|
839
860
|
- lib/chefspec/coverage/filters.rb
|
|
840
861
|
- lib/chefspec/deprecations.rb
|
|
@@ -881,6 +902,7 @@ files:
|
|
|
881
902
|
- lib/chefspec/stubs/stub.rb
|
|
882
903
|
- lib/chefspec/util.rb
|
|
883
904
|
- lib/chefspec/version.rb
|
|
905
|
+
- lib/chefspec/zero_server.rb
|
|
884
906
|
- spec/spec_helper.rb
|
|
885
907
|
- spec/support/hash.rb
|
|
886
908
|
- spec/unit/api_spec.rb
|
|
@@ -934,7 +956,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
934
956
|
requirements:
|
|
935
957
|
- - ">="
|
|
936
958
|
- !ruby/object:Gem::Version
|
|
937
|
-
version: '2.
|
|
959
|
+
version: '2.2'
|
|
938
960
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
939
961
|
requirements:
|
|
940
962
|
- - ">="
|
|
@@ -953,6 +975,7 @@ test_files:
|
|
|
953
975
|
- features/attributes.feature
|
|
954
976
|
- features/batch.feature
|
|
955
977
|
- features/bff_package.feature
|
|
978
|
+
- features/cab_package.feature
|
|
956
979
|
- features/cached.feature
|
|
957
980
|
- features/chef_gem.feature
|
|
958
981
|
- features/chocolatey_package.feature
|
|
@@ -962,6 +985,7 @@ test_files:
|
|
|
962
985
|
- features/custom_matcher.feature
|
|
963
986
|
- features/deploy.feature
|
|
964
987
|
- features/directory.feature
|
|
988
|
+
- features/dnf_package.feature
|
|
965
989
|
- features/do_nothing.feature
|
|
966
990
|
- features/dpkg_package.feature
|
|
967
991
|
- features/dsc_resource.feature
|
|
@@ -989,6 +1013,7 @@ test_files:
|
|
|
989
1013
|
- features/macports_package.feature
|
|
990
1014
|
- features/mdadm.feature
|
|
991
1015
|
- features/mount.feature
|
|
1016
|
+
- features/msu_package.feature
|
|
992
1017
|
- features/multiple_actions.feature
|
|
993
1018
|
- features/multiple_run_action.feature
|
|
994
1019
|
- features/notifications.feature
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
#
|
|
2
|
-
# This file contains the backwards compatible hacks required to make ChefSpec
|
|
3
|
-
# work with the previous version of Chef. ChefSpec only promises to be backwards
|
|
4
|
-
# compatible with the last major release of Chef, but it may work with earlier
|
|
5
|
-
# versions.
|
|
6
|
-
#
|
|
7
|
-
# The hacks are kept in this file so as to avoid a bunch of branching logic
|
|
8
|
-
# throughout the codebase. It also makes dropping backwards compatability much
|
|
9
|
-
# easier without the risk of breaking things.
|
|
10
|
-
#
|
|
11
|
-
# This file must be loaded AFTER the rest of ChefSpec has been initialized!
|
|
12
|
-
#
|
|
13
|
-
|
|
14
|
-
module ChefSpec
|
|
15
|
-
class ServerRunner
|
|
16
|
-
#
|
|
17
|
-
# The method airty for the Chef::CookbookUploader used to accept a list of
|
|
18
|
-
# cookbook paths. This restores that behavior.
|
|
19
|
-
#
|
|
20
|
-
def cookbook_uploader_for(loader)
|
|
21
|
-
Chef::CookbookUploader.new(loader.cookbooks, loader.cookbook_paths)
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
module RemoveExistingLWRP
|
|
26
|
-
def self.extended(klass)
|
|
27
|
-
class << klass
|
|
28
|
-
alias_method :build_from_file_without_removal, :build_from_file
|
|
29
|
-
alias_method :build_from_file, :build_from_file_with_removal
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
#
|
|
34
|
-
# Override Chef provider to remove any existing LWRPs to suppress constant
|
|
35
|
-
# re-definition warnings.
|
|
36
|
-
#
|
|
37
|
-
# @param [String] cookbook_name
|
|
38
|
-
# the name of the cookbook
|
|
39
|
-
# @param [String] filename
|
|
40
|
-
# file to load as a LWRP
|
|
41
|
-
# @param [Chef::RunContext] run_context
|
|
42
|
-
# context of a Chef Run
|
|
43
|
-
#
|
|
44
|
-
# @return [Chef::Provider]
|
|
45
|
-
#
|
|
46
|
-
def build_from_file_with_removal(cookbook_name, filename, run_context)
|
|
47
|
-
provider_name = filename_to_qualified_string(cookbook_name, filename)
|
|
48
|
-
class_name = convert_to_class_name(provider_name)
|
|
49
|
-
|
|
50
|
-
remove_existing_lwrp(class_name)
|
|
51
|
-
build_from_file_without_removal(cookbook_name, filename, run_context)
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
#
|
|
55
|
-
# Remove any existing Chef provider or resource with the specified name.
|
|
56
|
-
#
|
|
57
|
-
# @param [String] class_name
|
|
58
|
-
# The class name. Must be a valid constant name.
|
|
59
|
-
#
|
|
60
|
-
def remove_existing_lwrp(class_name)
|
|
61
|
-
[self, superclass].each do |resource_holder|
|
|
62
|
-
look_in_parents = false
|
|
63
|
-
if resource_holder.const_defined?(class_name, look_in_parents)
|
|
64
|
-
old_class = resource_holder.send(:remove_const, class_name)
|
|
65
|
-
|
|
66
|
-
if resource_holder.respond_to?(:resource_classes)
|
|
67
|
-
resource_holder.resource_classes.delete(old_class)
|
|
68
|
-
end
|
|
69
|
-
end
|
|
70
|
-
end
|
|
71
|
-
end
|
|
72
|
-
end
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
# Only remove existing LWRPs for older versions of Chef. Newer versions of
|
|
77
|
-
# Chef do not break things as much...
|
|
78
|
-
Chef::Provider::LWRPBase.extend(ChefSpec::RemoveExistingLWRP)
|
|
79
|
-
Chef::Resource::LWRPBase.extend(ChefSpec::RemoveExistingLWRP)
|