diff --git a/CHANGELOG.md b/CHANGELOG.md index 9b40738e6..ba8470c49 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -89,6 +89,7 @@ BUG FIXES: failure during `up` from suspended. [GH-2479] - provisioners/chef: Chef client encrypted data bag secrets are now uploaded to the provisioning path to avoid perm issues. [GH-1246] + - provisioners/chef: Create/chown the cache and backup folders. [GH-2281] - provisioners/chef: Verify environment paths exist in config validation step. [GH-2381] - provisioners/salt: Bootstrap on FreeBSD systems work. [GH-2525] diff --git a/plugins/provisioners/chef/provisioner/base.rb b/plugins/provisioners/chef/provisioner/base.rb index 18c8da5fc..9f41a0e95 100644 --- a/plugins/provisioners/chef/provisioner/base.rb +++ b/plugins/provisioners/chef/provisioner/base.rb @@ -40,9 +40,15 @@ module VagrantPlugins end def chown_provisioning_folder + paths = [@config.provisioning_path, + @config.file_backup_pach, + @config.file_cache_path] + @machine.communicate.tap do |comm| - comm.sudo("mkdir -p #{@config.provisioning_path}") - comm.sudo("chown #{@machine.ssh_info[:username]} #{@config.provisioning_path}") + paths.each do |path| + comm.sudo("mkdir -p #{path}") + comm.sudo("chown #{@machine.ssh_info[:username]} #{path}") + end end end