summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kitchen-tests/cookbooks/end_to_end/recipes/macos.rb33
1 files changed, 33 insertions, 0 deletions
diff --git a/kitchen-tests/cookbooks/end_to_end/recipes/macos.rb b/kitchen-tests/cookbooks/end_to_end/recipes/macos.rb
index 730af7305c..c1e2690bbf 100644
--- a/kitchen-tests/cookbooks/end_to_end/recipes/macos.rb
+++ b/kitchen-tests/cookbooks/end_to_end/recipes/macos.rb
@@ -54,6 +54,39 @@ chef_client_launchd "Every 30 mins Infra Client run" do
action :enable
end
+### Begin MacOS nonsense
+# What you see below here is a pile of crazy.
+# The End-To-End recipe wants to update git on MacOS to the latest version.
+# MacOS doesn't like this. We get back symlink update errors, et al
+# We then have to use this to take control of enough of the OS
+# to update git without actually hurting anything else. UGH
+
+file "/usr/local/var/homebrew/locks/git@2.35.1.formula.lock" do
+ mode "0777"
+ owner "root"
+end
+
+file "/usr/local/Cellar/git@2.35.1/2.35.1/etc/bash_completion.d/git-completion.bash" do
+ mode "0777"
+ owner "root"
+end
+
+execute "changing ownership of the git cask" do
+ command "chmod -R 777 /usr/local/Cellar/git@2.35.1"
+ live_stream true
+end
+
+execute "Sledge Hammer removal of the offending Git version" do
+ command "rm -rf /usr/local/Cellar/git@2.35.1"
+ live_stream true
+end
+
+### End MacOS nonsense
+
+# Now back to your regularly scheduled build, now in progress.
+
+include_recipe "git"
+
# test various archive formats in the archive_file resource
%w{tourism.tar.gz tourism.tar.xz tourism.zip}.each do |archive|
cookbook_file File.join(Chef::Config[:file_cache_path], archive) do