chef-dk 1.2.22 → 1.3.40
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 +8 -12
- data/Gemfile.lock +120 -116
- data/README.md +4 -3
- data/Rakefile +54 -0
- data/acceptance/Gemfile.lock +36 -47
- data/bin/chef +1 -1
- data/chef-dk.gemspec +9 -9
- data/lib/chef-dk/authenticated_http.rb +6 -7
- data/lib/chef-dk/builtin_commands.rb +3 -4
- data/lib/chef-dk/chef_runner.rb +7 -8
- data/lib/chef-dk/cli.rb +11 -11
- data/lib/chef-dk/command/base.rb +4 -4
- data/lib/chef-dk/command/clean_policy_cookbooks.rb +4 -5
- data/lib/chef-dk/command/clean_policy_revisions.rb +4 -6
- data/lib/chef-dk/command/delete_policy.rb +4 -6
- data/lib/chef-dk/command/delete_policy_group.rb +6 -8
- data/lib/chef-dk/command/diff.rb +9 -10
- data/lib/chef-dk/command/env.rb +26 -27
- data/lib/chef-dk/command/exec.rb +5 -6
- data/lib/chef-dk/command/export.rb +8 -10
- data/lib/chef-dk/command/gem.rb +5 -5
- data/lib/chef-dk/command/generate.rb +19 -19
- data/lib/chef-dk/command/generator_commands.rb +8 -8
- data/lib/chef-dk/command/generator_commands/app.rb +2 -3
- data/lib/chef-dk/command/generator_commands/attribute.rb +2 -3
- data/lib/chef-dk/command/generator_commands/base.rb +13 -13
- data/lib/chef-dk/command/generator_commands/build_cookbook.rb +2 -2
- data/lib/chef-dk/command/generator_commands/chef_exts/generator_desc_resource.rb +2 -2
- data/lib/chef-dk/command/generator_commands/chef_exts/quieter_doc_formatter.rb +1 -2
- data/lib/chef-dk/command/generator_commands/chef_exts/recipe_dsl_ext.rb +1 -2
- data/lib/chef-dk/command/generator_commands/cookbook.rb +2 -2
- data/lib/chef-dk/command/generator_commands/cookbook_code_file.rb +3 -3
- data/lib/chef-dk/command/generator_commands/cookbook_file.rb +2 -2
- data/lib/chef-dk/command/generator_commands/generator_generator.rb +4 -7
- data/lib/chef-dk/command/generator_commands/lwrp.rb +2 -2
- data/lib/chef-dk/command/generator_commands/policyfile.rb +2 -3
- data/lib/chef-dk/command/generator_commands/recipe.rb +2 -2
- data/lib/chef-dk/command/generator_commands/repo.rb +1 -3
- data/lib/chef-dk/command/generator_commands/template.rb +2 -2
- data/lib/chef-dk/command/install.rb +4 -5
- data/lib/chef-dk/command/provision.rb +12 -14
- data/lib/chef-dk/command/push.rb +5 -6
- data/lib/chef-dk/command/push_archive.rb +4 -5
- data/lib/chef-dk/command/shell_init.rb +15 -16
- data/lib/chef-dk/command/show_policy.rb +5 -7
- data/lib/chef-dk/command/undelete.rb +6 -7
- data/lib/chef-dk/command/update.rb +5 -6
- data/lib/chef-dk/command/verify.rb +30 -31
- data/lib/chef-dk/commands_map.rb +1 -3
- data/lib/chef-dk/component_test.rb +13 -13
- data/lib/chef-dk/configurable.rb +2 -2
- data/lib/chef-dk/cookbook_metadata.rb +2 -2
- data/lib/chef-dk/cookbook_omnifetch.rb +7 -8
- data/lib/chef-dk/cookbook_profiler/git.rb +8 -8
- data/lib/chef-dk/cookbook_profiler/identifiers.rb +7 -7
- data/lib/chef-dk/cookbook_profiler/null_scm.rb +0 -1
- data/lib/chef-dk/exceptions.rb +1 -1
- data/lib/chef-dk/generator.rb +9 -7
- data/lib/chef-dk/helpers.rb +15 -15
- data/lib/chef-dk/pager.rb +2 -3
- data/lib/chef-dk/policyfile/chef_repo_cookbook_source.rb +4 -4
- data/lib/chef-dk/policyfile/chef_server_cookbook_source.rb +6 -6
- data/lib/chef-dk/policyfile/community_cookbook_source.rb +4 -5
- data/lib/chef-dk/policyfile/comparison_base.rb +3 -4
- data/lib/chef-dk/policyfile/cookbook_location_specification.rb +6 -6
- data/lib/chef-dk/policyfile/cookbook_locks.rb +11 -11
- data/lib/chef-dk/policyfile/cookbook_sources.rb +5 -5
- data/lib/chef-dk/policyfile/delivery_supermarket_source.rb +8 -9
- data/lib/chef-dk/policyfile/differ.rb +7 -10
- data/lib/chef-dk/policyfile/dsl.rb +10 -11
- data/lib/chef-dk/policyfile/lister.rb +3 -6
- data/lib/chef-dk/policyfile/null_cookbook_source.rb +3 -3
- data/lib/chef-dk/policyfile/read_cookbook_for_compat_mode_upload.rb +3 -3
- data/lib/chef-dk/policyfile/reports/install.rb +3 -4
- data/lib/chef-dk/policyfile/reports/table_printer.rb +0 -1
- data/lib/chef-dk/policyfile/reports/upload.rb +4 -4
- data/lib/chef-dk/policyfile/solution_dependencies.rb +22 -22
- data/lib/chef-dk/policyfile/source_uri.rb +2 -2
- data/lib/chef-dk/policyfile/storage_config.rb +4 -5
- data/lib/chef-dk/policyfile/undo_record.rb +6 -9
- data/lib/chef-dk/policyfile/undo_stack.rb +5 -7
- data/lib/chef-dk/policyfile/uploader.rb +8 -8
- data/lib/chef-dk/policyfile_compiler.rb +16 -20
- data/lib/chef-dk/policyfile_lock.rb +10 -11
- data/lib/chef-dk/policyfile_services/clean_policies.rb +3 -3
- data/lib/chef-dk/policyfile_services/clean_policy_cookbooks.rb +3 -5
- data/lib/chef-dk/policyfile_services/export_repo.rb +13 -14
- data/lib/chef-dk/policyfile_services/install.rb +6 -6
- data/lib/chef-dk/policyfile_services/push.rb +6 -8
- data/lib/chef-dk/policyfile_services/push_archive.rb +6 -10
- data/lib/chef-dk/policyfile_services/rm_policy.rb +4 -5
- data/lib/chef-dk/policyfile_services/rm_policy_group.rb +4 -5
- data/lib/chef-dk/policyfile_services/show_policy.rb +5 -6
- data/lib/chef-dk/policyfile_services/undelete.rb +3 -3
- data/lib/chef-dk/policyfile_services/update_attributes.rb +4 -6
- data/lib/chef-dk/service_exception_inspectors.rb +2 -3
- data/lib/chef-dk/service_exception_inspectors/base.rb +0 -1
- data/lib/chef-dk/service_exception_inspectors/http.rb +1 -3
- data/lib/chef-dk/service_exceptions.rb +1 -2
- data/lib/chef-dk/shell_out.rb +1 -1
- data/lib/chef-dk/skeletons/code_generator/files/default/build_cookbook/.kitchen.yml +2 -2
- data/lib/chef-dk/skeletons/code_generator/files/default/build_cookbook/README.md +2 -2
- data/lib/chef-dk/skeletons/code_generator/files/default/build_cookbook/test-fixture-recipe.rb +1 -0
- data/lib/chef-dk/skeletons/code_generator/files/default/repo/cookbooks/example/attributes/default.rb +1 -1
- data/lib/chef-dk/skeletons/code_generator/files/default/repo/cookbooks/example/recipes/default.rb +1 -1
- data/lib/chef-dk/skeletons/code_generator/metadata.rb +0 -1
- data/lib/chef-dk/skeletons/code_generator/recipes/app.rb +6 -6
- data/lib/chef-dk/skeletons/code_generator/recipes/attribute.rb +3 -3
- data/lib/chef-dk/skeletons/code_generator/recipes/build_cookbook.rb +43 -39
- data/lib/chef-dk/skeletons/code_generator/recipes/cookbook.rb +31 -22
- data/lib/chef-dk/skeletons/code_generator/recipes/cookbook_file.rb +5 -5
- data/lib/chef-dk/skeletons/code_generator/recipes/lwrp.rb +4 -4
- data/lib/chef-dk/skeletons/code_generator/recipes/policyfile.rb +1 -1
- data/lib/chef-dk/skeletons/code_generator/recipes/recipe.rb +8 -8
- data/lib/chef-dk/skeletons/code_generator/recipes/repo.rb +15 -15
- data/lib/chef-dk/skeletons/code_generator/recipes/template.rb +6 -6
- data/lib/chef-dk/skeletons/code_generator/templates/default/build_cookbook/Berksfile.erb +0 -2
- data/lib/chef-dk/skeletons/code_generator/templates/default/build_cookbook/metadata.rb.erb +1 -0
- data/lib/chef-dk/skeletons/code_generator/templates/default/inspec_default_test.rb.erb +4 -4
- data/lib/chef-dk/skeletons/code_generator/templates/default/kitchen.yml.erb +1 -1
- data/lib/chef-dk/skeletons/code_generator/templates/default/kitchen_policyfile.yml.erb +1 -1
- data/lib/chef-dk/skeletons/code_generator/templates/default/metadata.rb.erb +4 -3
- data/lib/chef-dk/skeletons/code_generator/templates/default/recipe_spec.rb.erb +4 -2
- data/lib/chef-dk/ui.rb +0 -1
- data/lib/chef-dk/version.rb +1 -1
- data/lib/kitchen/provisioner/policyfile_zero.rb +7 -7
- data/omnibus_overrides.rb +3 -3
- data/spec/shared/a_file_generator.rb +3 -3
- data/spec/shared/custom_generator_cookbook.rb +6 -6
- data/spec/shared/fixture_cookbook_checksums.rb +2 -3
- data/spec/shared/setup_git_committer_config.rb +1 -1
- data/spec/shared/setup_git_cookbooks.rb +2 -2
- data/spec/spec_helper.rb +5 -5
- data/spec/test_helpers.rb +2 -2
- data/spec/unit/chef_runner_spec.rb +5 -7
- data/spec/unit/cli_spec.rb +36 -37
- data/spec/unit/command/base_spec.rb +4 -5
- data/spec/unit/command/clean_policy_cookbooks_spec.rb +8 -9
- data/spec/unit/command/clean_policy_revisions_spec.rb +8 -9
- data/spec/unit/command/delete_policy_group_spec.rb +11 -12
- data/spec/unit/command/delete_policy_spec.rb +11 -12
- data/spec/unit/command/diff_spec.rb +5 -6
- data/spec/unit/command/env_spec.rb +5 -5
- data/spec/unit/command/exec_spec.rb +18 -19
- data/spec/unit/command/export_spec.rb +5 -6
- data/spec/unit/command/generate_spec.rb +10 -10
- data/spec/unit/command/generator_commands/app_spec.rb +6 -6
- data/spec/unit/command/generator_commands/attribute_spec.rb +3 -4
- data/spec/unit/command/generator_commands/base_spec.rb +46 -46
- data/spec/unit/command/generator_commands/build_cookbook_spec.rb +50 -16
- data/spec/unit/command/generator_commands/chef_exts/generator_desc_resource_spec.rb +9 -9
- data/spec/unit/command/generator_commands/chef_exts/recipe_dsl_ext_spec.rb +16 -16
- data/spec/unit/command/generator_commands/cookbook_file_spec.rb +3 -4
- data/spec/unit/command/generator_commands/cookbook_spec.rb +23 -26
- data/spec/unit/command/generator_commands/generator_generator_spec.rb +4 -6
- data/spec/unit/command/generator_commands/lwrp_spec.rb +3 -4
- data/spec/unit/command/generator_commands/policyfile_spec.rb +3 -5
- data/spec/unit/command/generator_commands/recipe_spec.rb +4 -4
- data/spec/unit/command/generator_commands/repo_spec.rb +11 -11
- data/spec/unit/command/generator_commands/template_spec.rb +3 -4
- data/spec/unit/command/install_spec.rb +6 -6
- data/spec/unit/command/provision_spec.rb +27 -30
- data/spec/unit/command/push_archive_spec.rb +3 -3
- data/spec/unit/command/push_spec.rb +5 -6
- data/spec/unit/command/shell_init_spec.rb +17 -19
- data/spec/unit/command/show_policy_spec.rb +11 -12
- data/spec/unit/command/undelete_spec.rb +12 -14
- data/spec/unit/command/update_spec.rb +8 -8
- data/spec/unit/command/verify_spec.rb +10 -10
- data/spec/unit/commands_map_spec.rb +4 -4
- data/spec/unit/component_test_spec.rb +3 -3
- data/spec/unit/configurable_spec.rb +7 -7
- data/spec/unit/cookbook_metadata_spec.rb +5 -7
- data/spec/unit/cookbook_profiler/git_spec.rb +6 -7
- data/spec/unit/cookbook_profiler/identifiers_spec.rb +5 -7
- data/spec/unit/fixtures/command/cli_test_command.rb +2 -2
- data/spec/unit/fixtures/configurable/test_configurable.rb +1 -1
- data/spec/unit/fixtures/cookbooks_api/update_fixtures.rb +13 -16
- data/spec/unit/fixtures/eg_omnibus_dir/valid/embedded/apps/berkshelf/verify_me +1 -1
- data/spec/unit/gemfile_util_spec.rb +4 -4
- data/spec/unit/generator_spec.rb +10 -10
- data/spec/unit/helpers_spec.rb +31 -31
- data/spec/unit/pager_spec.rb +5 -7
- data/spec/unit/policyfile/chef_repo_cookbook_source_spec.rb +11 -11
- data/spec/unit/policyfile/chef_server_cookbook_source_spec.rb +13 -13
- data/spec/unit/policyfile/community_cookbook_source_spec.rb +3 -4
- data/spec/unit/policyfile/comparison_base_spec.rb +3 -6
- data/spec/unit/policyfile/cookbook_location_specification_spec.rb +3 -3
- data/spec/unit/policyfile/cookbook_locks_spec.rb +7 -9
- data/spec/unit/policyfile/delivery_supermarket_source_spec.rb +16 -17
- data/spec/unit/policyfile/differ_spec.rb +4 -5
- data/spec/unit/policyfile/lister_spec.rb +31 -35
- data/spec/unit/policyfile/null_cookbook_source_spec.rb +2 -3
- data/spec/unit/policyfile/read_cookbook_for_compat_mode_upload_spec.rb +3 -3
- data/spec/unit/policyfile/reports/install_spec.rb +4 -5
- data/spec/unit/policyfile/reports/upload_spec.rb +4 -6
- data/spec/unit/policyfile/solution_dependencies_spec.rb +13 -13
- data/spec/unit/policyfile/source_uri_spec.rb +5 -5
- data/spec/unit/policyfile/storage_config_spec.rb +3 -7
- data/spec/unit/policyfile/undo_record_spec.rb +21 -23
- data/spec/unit/policyfile/undo_stack_spec.rb +5 -6
- data/spec/unit/policyfile/uploader_spec.rb +73 -75
- data/spec/unit/policyfile_demands_spec.rb +93 -99
- data/spec/unit/policyfile_evaluation_spec.rb +14 -14
- data/spec/unit/policyfile_lock_build_spec.rb +64 -65
- data/spec/unit/policyfile_lock_install_spec.rb +5 -6
- data/spec/unit/policyfile_lock_serialization_spec.rb +14 -15
- data/spec/unit/policyfile_lock_validation_spec.rb +17 -20
- data/spec/unit/policyfile_services/clean_policies_spec.rb +16 -16
- data/spec/unit/policyfile_services/clean_policy_cookbooks_spec.rb +26 -29
- data/spec/unit/policyfile_services/export_repo_spec.rb +3 -6
- data/spec/unit/policyfile_services/install_spec.rb +5 -7
- data/spec/unit/policyfile_services/push_archive_spec.rb +4 -8
- data/spec/unit/policyfile_services/push_spec.rb +3 -3
- data/spec/unit/policyfile_services/rm_policy_group_spec.rb +16 -20
- data/spec/unit/policyfile_services/rm_policy_spec.rb +14 -17
- data/spec/unit/policyfile_services/show_policy_spec.rb +78 -80
- data/spec/unit/policyfile_services/undelete_spec.rb +5 -7
- data/spec/unit/policyfile_services/update_attributes_spec.rb +34 -35
- data/spec/unit/service_exception_inspectors/base_spec.rb +2 -4
- data/spec/unit/service_exception_inspectors/http_spec.rb +9 -11
- data/spec/unit/shell_out_spec.rb +2 -2
- data/spec/unit/tasks/helpers_spec.rb +2 -2
- data/tasks/bin/bundle-platform +1 -1
- data/tasks/bundle_util.rb +1 -1
- data/tasks/dependencies.rb +21 -7
- data/tasks/gemfile_util.rb +1 -1
- data/tasks/helpers.rb +2 -2
- data/tasks/version.rb +26 -1
- data/version_policy.rb +6 -6
- metadata +3 -3
|
@@ -15,9 +15,9 @@
|
|
|
15
15
|
# limitations under the License.
|
|
16
16
|
#
|
|
17
17
|
|
|
18
|
-
require
|
|
18
|
+
require "spec_helper"
|
|
19
19
|
|
|
20
|
-
require
|
|
20
|
+
require "chef-dk/policyfile/null_cookbook_source"
|
|
21
21
|
|
|
22
22
|
describe ChefDK::Policyfile::NullCookbookSource do
|
|
23
23
|
|
|
@@ -32,4 +32,3 @@ describe ChefDK::Policyfile::NullCookbookSource do
|
|
|
32
32
|
end
|
|
33
33
|
|
|
34
34
|
end
|
|
35
|
-
|
|
@@ -15,9 +15,9 @@
|
|
|
15
15
|
# limitations under the License.
|
|
16
16
|
#
|
|
17
17
|
|
|
18
|
-
require
|
|
19
|
-
require
|
|
20
|
-
require
|
|
18
|
+
require "spec_helper"
|
|
19
|
+
require "chef-dk/policyfile/read_cookbook_for_compat_mode_upload"
|
|
20
|
+
require "chef-dk/helpers"
|
|
21
21
|
|
|
22
22
|
describe ChefDK::Policyfile::ReadCookbookForCompatModeUpload do
|
|
23
23
|
|
|
@@ -15,12 +15,12 @@
|
|
|
15
15
|
# limitations under the License.
|
|
16
16
|
#
|
|
17
17
|
|
|
18
|
-
require
|
|
19
|
-
require
|
|
18
|
+
require "spec_helper"
|
|
19
|
+
require "chef-dk/policyfile/reports/install"
|
|
20
20
|
|
|
21
21
|
# Used for verifying doubles
|
|
22
|
-
require
|
|
23
|
-
require
|
|
22
|
+
require "chef-dk/policyfile_compiler"
|
|
23
|
+
require "chef-dk/policyfile/cookbook_location_specification"
|
|
24
24
|
|
|
25
25
|
describe ChefDK::Policyfile::Reports::Install do
|
|
26
26
|
|
|
@@ -112,4 +112,3 @@ describe ChefDK::Policyfile::Reports::Install do
|
|
|
112
112
|
|
|
113
113
|
end
|
|
114
114
|
end
|
|
115
|
-
|
|
@@ -15,14 +15,14 @@
|
|
|
15
15
|
# limitations under the License.
|
|
16
16
|
#
|
|
17
17
|
|
|
18
|
-
require
|
|
19
|
-
require
|
|
18
|
+
require "spec_helper"
|
|
19
|
+
require "chef-dk/policyfile/reports/upload"
|
|
20
20
|
|
|
21
21
|
# For the LockedCookbookForUpload class:
|
|
22
|
-
require
|
|
22
|
+
require "chef-dk/policyfile/uploader"
|
|
23
23
|
|
|
24
24
|
# Used for verifying doubles
|
|
25
|
-
require
|
|
25
|
+
require "chef-dk/policyfile/cookbook_locks"
|
|
26
26
|
|
|
27
27
|
describe ChefDK::Policyfile::Reports::Upload do
|
|
28
28
|
|
|
@@ -92,5 +92,3 @@ E
|
|
|
92
92
|
end
|
|
93
93
|
|
|
94
94
|
end
|
|
95
|
-
|
|
96
|
-
|
|
@@ -15,12 +15,12 @@
|
|
|
15
15
|
# limitations under the License.
|
|
16
16
|
#
|
|
17
17
|
|
|
18
|
-
require
|
|
19
|
-
require
|
|
18
|
+
require "spec_helper"
|
|
19
|
+
require "chef-dk/policyfile/solution_dependencies"
|
|
20
20
|
|
|
21
21
|
describe ChefDK::Policyfile::SolutionDependencies do
|
|
22
22
|
|
|
23
|
-
let(:dependency_data) { {"Policyfile" => [], "dependencies" => {}} }
|
|
23
|
+
let(:dependency_data) { { "Policyfile" => [], "dependencies" => {} } }
|
|
24
24
|
|
|
25
25
|
let(:solution_dependencies) do
|
|
26
26
|
s = described_class.new
|
|
@@ -47,8 +47,8 @@ describe ChefDK::Policyfile::SolutionDependencies do
|
|
|
47
47
|
"nginx (1.2.3)" => [ ["apt", "~> 2.3"], ["yum", "~>3.4"] ],
|
|
48
48
|
"apt (2.5.6)" => [],
|
|
49
49
|
"yum (3.4.1)" => [],
|
|
50
|
-
"postgresql (5.0.0)" => []
|
|
51
|
-
}
|
|
50
|
+
"postgresql (5.0.0)" => [],
|
|
51
|
+
},
|
|
52
52
|
}
|
|
53
53
|
end
|
|
54
54
|
|
|
@@ -62,7 +62,7 @@ describe ChefDK::Policyfile::SolutionDependencies do
|
|
|
62
62
|
"nginx (1.2.3)" => [ ["apt", "~> 2.3"], ["yum", "~> 3.4"] ],
|
|
63
63
|
"apt (2.5.6)" => [],
|
|
64
64
|
"yum (3.4.1)" => [],
|
|
65
|
-
"postgresql (5.0.0)" => []
|
|
65
|
+
"postgresql (5.0.0)" => [],
|
|
66
66
|
}
|
|
67
67
|
expect(solution_dependencies.cookbook_deps_for_lock).to eq(expected)
|
|
68
68
|
end
|
|
@@ -76,7 +76,7 @@ describe ChefDK::Policyfile::SolutionDependencies do
|
|
|
76
76
|
"nginx (1.2.3)" => [ ["apt", "~> 2.3"], ["yum", "~> 3.4"] ],
|
|
77
77
|
"apt (2.5.6)" => [],
|
|
78
78
|
"yum (3.4.1)" => [],
|
|
79
|
-
"postgresql (5.0.0)" => []
|
|
79
|
+
"postgresql (5.0.0)" => [],
|
|
80
80
|
}
|
|
81
81
|
end
|
|
82
82
|
|
|
@@ -102,7 +102,7 @@ describe ChefDK::Policyfile::SolutionDependencies do
|
|
|
102
102
|
end
|
|
103
103
|
|
|
104
104
|
it "generates lock info containing both policyfile and cookbook dependencies" do
|
|
105
|
-
expected = {"Policyfile" => expected_policyfile_deps_for_lock, "dependencies" => expected_deps_for_lock}
|
|
105
|
+
expected = { "Policyfile" => expected_policyfile_deps_for_lock, "dependencies" => expected_deps_for_lock }
|
|
106
106
|
expect(solution_dependencies.to_lock).to eq(expected)
|
|
107
107
|
end
|
|
108
108
|
|
|
@@ -110,33 +110,33 @@ describe ChefDK::Policyfile::SolutionDependencies do
|
|
|
110
110
|
|
|
111
111
|
it "does not raise if a cookbook that's in the dependency set with a different version doesn't conflict" do
|
|
112
112
|
solution_dependencies.update_cookbook_dep("yum", "3.5.0", [ ])
|
|
113
|
-
expect(solution_dependencies.test_conflict!(
|
|
113
|
+
expect(solution_dependencies.test_conflict!("yum", "3.5.0")).to be(false)
|
|
114
114
|
end
|
|
115
115
|
|
|
116
116
|
it "raises if a cookbook is not in the current solution set" do
|
|
117
117
|
expected_message = "Cookbook foo (1.0.0) not in the working set, cannot test for conflicts"
|
|
118
|
-
expect { solution_dependencies.test_conflict!(
|
|
118
|
+
expect { solution_dependencies.test_conflict!("foo", "1.0.0") }.to raise_error(ChefDK::CookbookNotInWorkingSet, expected_message)
|
|
119
119
|
end
|
|
120
120
|
|
|
121
121
|
it "raises when a cookbook conflicts with a Policyfile constraint" do
|
|
122
122
|
solution_dependencies.update_cookbook_dep("nginx", "2.0.0", [])
|
|
123
123
|
|
|
124
124
|
expected_message = "Cookbook nginx (2.0.0) conflicts with other dependencies:\nPolicyfile depends on nginx ~> 1.0"
|
|
125
|
-
expect { solution_dependencies.test_conflict!(
|
|
125
|
+
expect { solution_dependencies.test_conflict!("nginx", "2.0.0") }.to raise_error(ChefDK::DependencyConflict, expected_message)
|
|
126
126
|
end
|
|
127
127
|
|
|
128
128
|
it "raises when a cookbook conflicts with another cookbook's dependency constraint" do
|
|
129
129
|
solution_dependencies.update_cookbook_dep("apt", "3.0.0", [])
|
|
130
130
|
|
|
131
131
|
expected_message = "Cookbook apt (3.0.0) conflicts with other dependencies:\nnginx (1.2.3) depends on apt ~> 2.3"
|
|
132
|
-
expect { solution_dependencies.test_conflict!(
|
|
132
|
+
expect { solution_dependencies.test_conflict!("apt", "3.0.0") }.to raise_error(ChefDK::DependencyConflict, expected_message)
|
|
133
133
|
end
|
|
134
134
|
|
|
135
135
|
it "raises when a cookbook's dependencies are no longer satisfiable" do
|
|
136
136
|
solution_dependencies.update_cookbook_dep("nginx", "1.2.3", [ [ "apt", "~> 3.0" ] ])
|
|
137
137
|
expected_message = "Cookbook nginx (1.2.3) has dependency constraints that cannot be met by the existing cookbook set:\n" +
|
|
138
138
|
"Dependency on apt ~> 3.0 conflicts with existing version apt (2.5.6)"
|
|
139
|
-
expect { solution_dependencies.test_conflict!(
|
|
139
|
+
expect { solution_dependencies.test_conflict!("nginx", "1.2.3") }.to raise_error(ChefDK::DependencyConflict, expected_message)
|
|
140
140
|
end
|
|
141
141
|
|
|
142
142
|
end
|
|
@@ -15,18 +15,18 @@
|
|
|
15
15
|
# limitations under the License.
|
|
16
16
|
#
|
|
17
17
|
|
|
18
|
-
require
|
|
18
|
+
require "spec_helper"
|
|
19
19
|
|
|
20
|
-
require
|
|
20
|
+
require "chef-dk/policyfile/source_uri"
|
|
21
21
|
|
|
22
22
|
describe ChefDK::Policyfile::SourceURI do
|
|
23
23
|
subject { described_class.parse(source_uri) }
|
|
24
24
|
|
|
25
25
|
describe '#validate' do
|
|
26
|
-
context
|
|
27
|
-
let(:source_uri) {
|
|
26
|
+
context "when the scheme is not https" do
|
|
27
|
+
let(:source_uri) { "ftp://chef.example.com" }
|
|
28
28
|
|
|
29
|
-
it
|
|
29
|
+
it "raises ChefDK::InvalidPolicyfileSourceURI" do
|
|
30
30
|
expect do
|
|
31
31
|
subject.validate
|
|
32
32
|
end.to raise_error(ChefDK::InvalidPolicyfileSourceURI)
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
# limitations under the License.
|
|
16
16
|
#
|
|
17
17
|
|
|
18
|
-
require
|
|
19
|
-
require
|
|
18
|
+
require "spec_helper"
|
|
19
|
+
require "chef-dk/policyfile/storage_config"
|
|
20
20
|
|
|
21
21
|
describe ChefDK::Policyfile::StorageConfig do
|
|
22
22
|
|
|
@@ -79,7 +79,7 @@ describe ChefDK::Policyfile::StorageConfig do
|
|
|
79
79
|
end
|
|
80
80
|
|
|
81
81
|
it "gives the expanded path to the policyfile" do
|
|
82
|
-
expect(storage_config.policyfile_expanded_path).to eq(File.expand_path(
|
|
82
|
+
expect(storage_config.policyfile_expanded_path).to eq(File.expand_path("/path/to/Policyfile.rb"))
|
|
83
83
|
end
|
|
84
84
|
|
|
85
85
|
context "when the policyfile is given as a relative path" do
|
|
@@ -129,7 +129,6 @@ describe ChefDK::Policyfile::StorageConfig do
|
|
|
129
129
|
|
|
130
130
|
end
|
|
131
131
|
|
|
132
|
-
|
|
133
132
|
describe "updating storage config for policyfile lock location" do
|
|
134
133
|
|
|
135
134
|
before do
|
|
@@ -174,11 +173,8 @@ describe ChefDK::Policyfile::StorageConfig do
|
|
|
174
173
|
expect(storage_config.policyfile_lock_expanded_path).to eq(File.expand_path("Policyfile.lock.json", "."))
|
|
175
174
|
end
|
|
176
175
|
|
|
177
|
-
|
|
178
176
|
end
|
|
179
177
|
|
|
180
178
|
end
|
|
181
179
|
|
|
182
|
-
|
|
183
180
|
end
|
|
184
|
-
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
# limitations under the License.
|
|
16
16
|
#
|
|
17
17
|
|
|
18
|
-
require
|
|
19
|
-
require
|
|
18
|
+
require "spec_helper"
|
|
19
|
+
require "chef-dk/policyfile/undo_record"
|
|
20
20
|
|
|
21
21
|
describe ChefDK::Policyfile::UndoRecord do
|
|
22
22
|
|
|
@@ -25,7 +25,7 @@ describe ChefDK::Policyfile::UndoRecord do
|
|
|
25
25
|
let(:policy_revision) do
|
|
26
26
|
{
|
|
27
27
|
"name" => "appserver",
|
|
28
|
-
"revision_id" => "1111111111111111111111111111111111111111111111111111111111111111"
|
|
28
|
+
"revision_id" => "1111111111111111111111111111111111111111111111111111111111111111",
|
|
29
29
|
}
|
|
30
30
|
end
|
|
31
31
|
|
|
@@ -49,8 +49,8 @@ describe ChefDK::Policyfile::UndoRecord do
|
|
|
49
49
|
"description" => "",
|
|
50
50
|
"backup_data" => {
|
|
51
51
|
"policy_groups" => [],
|
|
52
|
-
"policy_revisions" => []
|
|
53
|
-
}
|
|
52
|
+
"policy_revisions" => [],
|
|
53
|
+
},
|
|
54
54
|
}
|
|
55
55
|
expect(undo_record.for_serialization).to eq(expected)
|
|
56
56
|
end
|
|
@@ -90,10 +90,10 @@ describe ChefDK::Policyfile::UndoRecord do
|
|
|
90
90
|
{
|
|
91
91
|
"policy_name" => "appserver",
|
|
92
92
|
"policy_group" => "preprod",
|
|
93
|
-
"data" => policy_revision
|
|
94
|
-
}
|
|
95
|
-
]
|
|
96
|
-
}
|
|
93
|
+
"data" => policy_revision,
|
|
94
|
+
},
|
|
95
|
+
],
|
|
96
|
+
},
|
|
97
97
|
}
|
|
98
98
|
expect(undo_record.for_serialization).to eq(expected)
|
|
99
99
|
end
|
|
@@ -130,7 +130,7 @@ describe ChefDK::Policyfile::UndoRecord do
|
|
|
130
130
|
{
|
|
131
131
|
"format_version" => 1,
|
|
132
132
|
"description" => "delete-policy-group preprod",
|
|
133
|
-
"backup_data" => []
|
|
133
|
+
"backup_data" => [],
|
|
134
134
|
}
|
|
135
135
|
end
|
|
136
136
|
|
|
@@ -146,7 +146,7 @@ describe ChefDK::Policyfile::UndoRecord do
|
|
|
146
146
|
{
|
|
147
147
|
"format_version" => 1,
|
|
148
148
|
"description" => "delete-policy-group preprod",
|
|
149
|
-
"backup_data" => {}
|
|
149
|
+
"backup_data" => {},
|
|
150
150
|
}
|
|
151
151
|
end
|
|
152
152
|
|
|
@@ -164,8 +164,8 @@ describe ChefDK::Policyfile::UndoRecord do
|
|
|
164
164
|
"description" => "delete-policy-group preprod",
|
|
165
165
|
"backup_data" => {
|
|
166
166
|
"policy_groups" => nil,
|
|
167
|
-
"policy_revisions" => []
|
|
168
|
-
}
|
|
167
|
+
"policy_revisions" => [],
|
|
168
|
+
},
|
|
169
169
|
}
|
|
170
170
|
end
|
|
171
171
|
|
|
@@ -183,8 +183,8 @@ describe ChefDK::Policyfile::UndoRecord do
|
|
|
183
183
|
"description" => "delete-policy-group preprod",
|
|
184
184
|
"backup_data" => {
|
|
185
185
|
"policy_groups" => [],
|
|
186
|
-
"policy_revisions" => nil
|
|
187
|
-
}
|
|
186
|
+
"policy_revisions" => nil,
|
|
187
|
+
},
|
|
188
188
|
}
|
|
189
189
|
end
|
|
190
190
|
|
|
@@ -202,8 +202,8 @@ describe ChefDK::Policyfile::UndoRecord do
|
|
|
202
202
|
"description" => "delete-policy-group preprod",
|
|
203
203
|
"backup_data" => {
|
|
204
204
|
"policy_groups" => [],
|
|
205
|
-
"policy_revisions" => [ nil ]
|
|
206
|
-
}
|
|
205
|
+
"policy_revisions" => [ nil ],
|
|
206
|
+
},
|
|
207
207
|
}
|
|
208
208
|
end
|
|
209
209
|
|
|
@@ -225,10 +225,10 @@ describe ChefDK::Policyfile::UndoRecord do
|
|
|
225
225
|
{
|
|
226
226
|
"policy_name" => "appserver",
|
|
227
227
|
"policy_group" => "preprod",
|
|
228
|
-
"data" => policy_revision
|
|
229
|
-
}
|
|
230
|
-
]
|
|
231
|
-
}
|
|
228
|
+
"data" => policy_revision,
|
|
229
|
+
},
|
|
230
|
+
],
|
|
231
|
+
},
|
|
232
232
|
}
|
|
233
233
|
end
|
|
234
234
|
|
|
@@ -252,9 +252,7 @@ describe ChefDK::Policyfile::UndoRecord do
|
|
|
252
252
|
expect(undo_record.for_serialization).to eq(serialized_data)
|
|
253
253
|
end
|
|
254
254
|
|
|
255
|
-
|
|
256
255
|
end
|
|
257
256
|
end
|
|
258
257
|
|
|
259
258
|
end
|
|
260
|
-
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
# limitations under the License.
|
|
16
16
|
#
|
|
17
17
|
|
|
18
|
-
require
|
|
19
|
-
require
|
|
18
|
+
require "spec_helper"
|
|
19
|
+
require "chef-dk/policyfile/undo_stack"
|
|
20
20
|
|
|
21
21
|
describe ChefDK::Policyfile::UndoStack do
|
|
22
22
|
|
|
@@ -25,7 +25,7 @@ describe ChefDK::Policyfile::UndoStack do
|
|
|
25
25
|
let(:policy_revision) do
|
|
26
26
|
{
|
|
27
27
|
"name" => "appserver",
|
|
28
|
-
"revision_id" => "1111111111111111111111111111111111111111111111111111111111111111"
|
|
28
|
+
"revision_id" => "1111111111111111111111111111111111111111111111111111111111111111",
|
|
29
29
|
}
|
|
30
30
|
end
|
|
31
31
|
|
|
@@ -180,7 +180,6 @@ describe ChefDK::Policyfile::UndoStack do
|
|
|
180
180
|
|
|
181
181
|
end
|
|
182
182
|
|
|
183
|
-
|
|
184
183
|
context "when the stack is at the maximum configured size" do
|
|
185
184
|
# `Time.new` is stubbed later on, need to force it to be evaluated before
|
|
186
185
|
# then.
|
|
@@ -196,7 +195,7 @@ describe ChefDK::Policyfile::UndoStack do
|
|
|
196
195
|
def incremented_undo_record(i)
|
|
197
196
|
record = {
|
|
198
197
|
"name" => "appserver",
|
|
199
|
-
"revision_id" => i.to_s * 64
|
|
198
|
+
"revision_id" => i.to_s * 64,
|
|
200
199
|
}
|
|
201
200
|
|
|
202
201
|
ChefDK::Policyfile::UndoRecord.new.tap do |undo_record|
|
|
@@ -241,7 +240,7 @@ describe ChefDK::Policyfile::UndoStack do
|
|
|
241
240
|
|
|
242
241
|
before do
|
|
243
242
|
FileUtils.touch(older_record_path)
|
|
244
|
-
|
|
243
|
+
expect(undo_stack_files.size).to eq(11)
|
|
245
244
|
end
|
|
246
245
|
|
|
247
246
|
describe "pushing a new undo record" do
|
|
@@ -15,33 +15,33 @@
|
|
|
15
15
|
# limitations under the License.
|
|
16
16
|
#
|
|
17
17
|
|
|
18
|
-
require
|
|
19
|
-
require
|
|
18
|
+
require "spec_helper"
|
|
19
|
+
require "chef-dk/policyfile/uploader"
|
|
20
20
|
|
|
21
21
|
# We load this here to ensure we get the "verifying doubles" behavior from
|
|
22
22
|
# RSpec. It's not used by Policyfile::Uploader, but it's a collaborator.
|
|
23
|
-
require
|
|
23
|
+
require "chef-dk/authenticated_http"
|
|
24
24
|
|
|
25
25
|
describe ChefDK::Policyfile::Uploader do
|
|
26
26
|
|
|
27
27
|
let(:policyfile_lock_data) do
|
|
28
28
|
{
|
|
29
|
-
"name"=> "example",
|
|
30
|
-
"run_list"=> [ "recipe[omnibus::default]" ],
|
|
31
|
-
"cookbook_locks"=> {
|
|
32
|
-
"omnibus"=> {
|
|
33
|
-
"version"=> "2.2.0",
|
|
34
|
-
"identifier"=> "64b3e64306cff223206348e46af545b19032b170",
|
|
35
|
-
"dotted_decimal_identifier"=> "28345299219435506.9887234981653237.76628930769264",
|
|
36
|
-
"cache_key"=> "omnibus-2cf98f9797cacce9c8688fc4e74858b858e2bc14",
|
|
37
|
-
"origin"=> "git@github.com:opscode-cookbooks/omnibus.git",
|
|
38
|
-
"source_options"=> {
|
|
39
|
-
"git"=> "git@github.com:opscode-cookbooks/omnibus.git",
|
|
40
|
-
"revision"=> "2cf98f9797cacce9c8688fc4e74858b858e2bc14",
|
|
41
|
-
"branch"=> "master"
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
29
|
+
"name" => "example",
|
|
30
|
+
"run_list" => [ "recipe[omnibus::default]" ],
|
|
31
|
+
"cookbook_locks" => {
|
|
32
|
+
"omnibus" => {
|
|
33
|
+
"version" => "2.2.0",
|
|
34
|
+
"identifier" => "64b3e64306cff223206348e46af545b19032b170",
|
|
35
|
+
"dotted_decimal_identifier" => "28345299219435506.9887234981653237.76628930769264",
|
|
36
|
+
"cache_key" => "omnibus-2cf98f9797cacce9c8688fc4e74858b858e2bc14",
|
|
37
|
+
"origin" => "git@github.com:opscode-cookbooks/omnibus.git",
|
|
38
|
+
"source_options" => {
|
|
39
|
+
"git" => "git@github.com:opscode-cookbooks/omnibus.git",
|
|
40
|
+
"revision" => "2cf98f9797cacce9c8688fc4e74858b858e2bc14",
|
|
41
|
+
"branch" => "master",
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
45
|
}
|
|
46
46
|
end
|
|
47
47
|
|
|
@@ -66,7 +66,7 @@ describe ChefDK::Policyfile::Uploader do
|
|
|
66
66
|
policyfile_as_data_bag_item = {
|
|
67
67
|
"id" => "example-unit-test",
|
|
68
68
|
"name" => "data_bag_item_policyfiles_example-unit-test",
|
|
69
|
-
"data_bag" => "policyfiles"
|
|
69
|
+
"data_bag" => "policyfiles",
|
|
70
70
|
}
|
|
71
71
|
policyfile_as_data_bag_item["raw_data"] = policyfile_lock_data.dup
|
|
72
72
|
policyfile_as_data_bag_item["raw_data"]["id"] = "example-unit-test"
|
|
@@ -210,7 +210,7 @@ describe ChefDK::Policyfile::Uploader do
|
|
|
210
210
|
let(:expected_cookbooks_for_upload) do
|
|
211
211
|
[
|
|
212
212
|
cookbook_versions["my_apache2"],
|
|
213
|
-
cookbook_versions["my_jenkins"]
|
|
213
|
+
cookbook_versions["my_jenkins"],
|
|
214
214
|
]
|
|
215
215
|
end
|
|
216
216
|
|
|
@@ -218,7 +218,6 @@ describe ChefDK::Policyfile::Uploader do
|
|
|
218
218
|
expect(policyfile_lock).to receive(:validate_cookbooks!)
|
|
219
219
|
expect(http_client).to receive(:get).with(list_cookbooks_url).and_return(existing_cookbook_on_remote)
|
|
220
220
|
|
|
221
|
-
|
|
222
221
|
expect(uploader.cookbook_versions_to_upload).to eq(expected_cookbooks_for_upload)
|
|
223
222
|
end
|
|
224
223
|
|
|
@@ -273,35 +272,35 @@ describe ChefDK::Policyfile::Uploader do
|
|
|
273
272
|
|
|
274
273
|
context "when configured for policy document compat mode" do
|
|
275
274
|
|
|
276
|
-
let(:policyfiles_data_bag) { {"name" => "policyfiles" } }
|
|
275
|
+
let(:policyfiles_data_bag) { { "name" => "policyfiles" } }
|
|
277
276
|
|
|
278
|
-
let(:list_cookbooks_url) {
|
|
277
|
+
let(:list_cookbooks_url) { "cookbooks?num_versions=all" }
|
|
279
278
|
|
|
280
279
|
let(:existing_cookbook_on_remote) do
|
|
281
|
-
{"apt"=>
|
|
282
|
-
{"url"=>"http://localhost:8889/cookbooks/apt",
|
|
283
|
-
|
|
284
|
-
[{"url"=>
|
|
280
|
+
{ "apt" =>
|
|
281
|
+
{ "url" => "http://localhost:8889/cookbooks/apt",
|
|
282
|
+
"versions" =>
|
|
283
|
+
[{ "url" =>
|
|
285
284
|
"http://localhost:8889/cookbooks/apt/46097674477573307.43471642740453733.243606720748315",
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
{"url"=>"http://localhost:8889/cookbooks/build-essential",
|
|
289
|
-
|
|
290
|
-
[{"url"=>
|
|
285
|
+
"version" => "46097674477573307.43471642740453733.243606720748315" }] },
|
|
286
|
+
"build-essential" =>
|
|
287
|
+
{ "url" => "http://localhost:8889/cookbooks/build-essential",
|
|
288
|
+
"versions" =>
|
|
289
|
+
[{ "url" =>
|
|
291
290
|
"http://localhost:8889/cookbooks/build-essential/67369247788170534.26353953100055918.55660493423796",
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
{"url"=>"http://localhost:8889/cookbooks/java",
|
|
295
|
-
|
|
296
|
-
[{"url"=>
|
|
291
|
+
"version" => "67369247788170534.26353953100055918.55660493423796" }] },
|
|
292
|
+
"java" =>
|
|
293
|
+
{ "url" => "http://localhost:8889/cookbooks/java",
|
|
294
|
+
"versions" =>
|
|
295
|
+
[{ "url" =>
|
|
297
296
|
"http://localhost:8889/cookbooks/java/5664982062912610.52588194571203830.6215746262253",
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
{"url"=>"http://localhost:8889/cookbooks/jenkins",
|
|
301
|
-
|
|
302
|
-
[{"url"=>
|
|
297
|
+
"version" => "5664982062912610.52588194571203830.6215746262253" }] },
|
|
298
|
+
"jenkins" =>
|
|
299
|
+
{ "url" => "http://localhost:8889/cookbooks/jenkins",
|
|
300
|
+
"versions" =>
|
|
301
|
+
[{ "url" =>
|
|
303
302
|
"http://localhost:8889/cookbooks/jenkins/69194928762630300.30177357398946006.269829039948647",
|
|
304
|
-
|
|
303
|
+
"version" => "69194928762630300.30177357398946006.269829039948647" }] },
|
|
305
304
|
}
|
|
306
305
|
end
|
|
307
306
|
|
|
@@ -311,14 +310,14 @@ describe ChefDK::Policyfile::Uploader do
|
|
|
311
310
|
end
|
|
312
311
|
|
|
313
312
|
it "ensures a data bag named 'policyfiles' exists" do
|
|
314
|
-
expect(http_client).to receive(:post).with(
|
|
313
|
+
expect(http_client).to receive(:post).with("data", policyfiles_data_bag)
|
|
315
314
|
uploader.data_bag_create
|
|
316
315
|
end
|
|
317
316
|
|
|
318
317
|
it "does not error when the 'policyfiles' data bag exists" do
|
|
319
318
|
response = double("Net::HTTP response", code: "409")
|
|
320
319
|
error = Net::HTTPServerException.new("conflict", response)
|
|
321
|
-
expect(http_client).to receive(:post).with(
|
|
320
|
+
expect(http_client).to receive(:post).with("data", { "name" => "policyfiles" }).and_raise(error)
|
|
322
321
|
expect { uploader.data_bag_create }.to_not raise_error
|
|
323
322
|
end
|
|
324
323
|
|
|
@@ -326,24 +325,24 @@ describe ChefDK::Policyfile::Uploader do
|
|
|
326
325
|
response = double("Net::HTTP response", code: "404")
|
|
327
326
|
error = Net::HTTPServerException.new("Not Found", response)
|
|
328
327
|
expect(http_client).to receive(:put).
|
|
329
|
-
with(
|
|
328
|
+
with("data/policyfiles/example-unit-test", policyfile_as_data_bag_item).
|
|
330
329
|
and_raise(error)
|
|
331
330
|
expect(http_client).to receive(:post).
|
|
332
|
-
with(
|
|
331
|
+
with("data/policyfiles", policyfile_as_data_bag_item)
|
|
333
332
|
|
|
334
333
|
uploader.data_bag_item_create
|
|
335
334
|
end
|
|
336
335
|
|
|
337
336
|
it "replaces an existing policyfile on the server if it exists" do
|
|
338
337
|
expect(http_client).to receive(:put).
|
|
339
|
-
with(
|
|
338
|
+
with("data/policyfiles/example-unit-test", policyfile_as_data_bag_item)
|
|
340
339
|
uploader.data_bag_item_create
|
|
341
340
|
end
|
|
342
341
|
|
|
343
342
|
it "creates the data bag and item to upload the policy" do
|
|
344
|
-
expect(http_client).to receive(:post).with(
|
|
343
|
+
expect(http_client).to receive(:post).with("data", policyfiles_data_bag)
|
|
345
344
|
expect(http_client).to receive(:put).
|
|
346
|
-
with(
|
|
345
|
+
with("data/policyfiles/example-unit-test", policyfile_as_data_bag_item)
|
|
347
346
|
uploader.upload_policy
|
|
348
347
|
end
|
|
349
348
|
|
|
@@ -355,38 +354,38 @@ describe ChefDK::Policyfile::Uploader do
|
|
|
355
354
|
|
|
356
355
|
let(:policy_document_native_api) { true }
|
|
357
356
|
|
|
358
|
-
let(:list_cookbooks_url) {
|
|
357
|
+
let(:list_cookbooks_url) { "cookbook_artifacts?num_versions=all" }
|
|
359
358
|
|
|
360
359
|
let(:existing_cookbook_on_remote) do
|
|
361
|
-
{"apt"=>
|
|
362
|
-
{"url"=>"http://localhost:8889/cookbook_artifacts/apt",
|
|
363
|
-
|
|
364
|
-
[{"url"=>
|
|
360
|
+
{ "apt" =>
|
|
361
|
+
{ "url" => "http://localhost:8889/cookbook_artifacts/apt",
|
|
362
|
+
"versions" =>
|
|
363
|
+
[{ "url" =>
|
|
365
364
|
"http://localhost:8889/cookbook_artifacts/apt/5f7045a8aeaf6ccda3b3594258df9ee982b3a023",
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
{"url"=>"http://localhost:8889/cookbook_artifacts/build-essential",
|
|
369
|
-
|
|
370
|
-
[{"url"=>
|
|
365
|
+
"identifier" => "5f7045a8aeaf6ccda3b3594258df9ee982b3a023" }] },
|
|
366
|
+
"build-essential" =>
|
|
367
|
+
{ "url" => "http://localhost:8889/cookbook_artifacts/build-essential",
|
|
368
|
+
"versions" =>
|
|
369
|
+
[{ "url" =>
|
|
371
370
|
"http://localhost:8889/cookbook_artifacts/build-essential/571d8ebd02b296fe90b2e4d68754af7e8e185f28",
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
{"url"=>"http://localhost:8889/cookbook_artifacts/java",
|
|
375
|
-
|
|
376
|
-
[{"url"=>
|
|
371
|
+
"identifier" => "571d8ebd02b296fe90b2e4d68754af7e8e185f28" }] },
|
|
372
|
+
"java" =>
|
|
373
|
+
{ "url" => "http://localhost:8889/cookbook_artifacts/java",
|
|
374
|
+
"versions" =>
|
|
375
|
+
[{ "url" =>
|
|
377
376
|
"http://localhost:8889/cookbook_artifacts/java/9178a38ad3e3baa55b49c1b8d9f4bf6a43dbc358",
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
{"url"=>"http://localhost:8889/cookbook_artifacts/jenkins",
|
|
381
|
-
|
|
382
|
-
[{"url"=>
|
|
377
|
+
"identifier" => "9178a38ad3e3baa55b49c1b8d9f4bf6a43dbc358" }] },
|
|
378
|
+
"jenkins" =>
|
|
379
|
+
{ "url" => "http://localhost:8889/cookbook_artifacts/jenkins",
|
|
380
|
+
"versions" =>
|
|
381
|
+
[{ "url" =>
|
|
383
382
|
"http://localhost:8889/cookbook_artifacts/jenkins/0be380429add00d189b4431059ac967a60052323",
|
|
384
|
-
|
|
383
|
+
"identifier" => "0be380429add00d189b4431059ac967a60052323" }] },
|
|
385
384
|
}
|
|
386
385
|
end
|
|
387
386
|
def expect_policyfile_upload
|
|
388
387
|
expect(http_client).to receive(:put).
|
|
389
|
-
with(
|
|
388
|
+
with("/policy_groups/unit-test/policies/example", policyfile_lock_data)
|
|
390
389
|
end
|
|
391
390
|
|
|
392
391
|
it "enables native document mode for policyfiles" do
|
|
@@ -395,7 +394,7 @@ describe ChefDK::Policyfile::Uploader do
|
|
|
395
394
|
|
|
396
395
|
it "uploads the policyfile to the native API" do
|
|
397
396
|
expect(http_client).to receive(:put).
|
|
398
|
-
with(
|
|
397
|
+
with("/policy_groups/unit-test/policies/example", policyfile_lock_data)
|
|
399
398
|
|
|
400
399
|
uploader.upload_policy
|
|
401
400
|
end
|
|
@@ -407,4 +406,3 @@ describe ChefDK::Policyfile::Uploader do
|
|
|
407
406
|
end
|
|
408
407
|
|
|
409
408
|
end
|
|
410
|
-
|