Skip chmod 777
for cache bucket root for smb synced folders
Closes GH-107
This commit is contained in:
parent
f8314aba52
commit
2b6a07d000
2 changed files with 23 additions and 2 deletions
|
@ -11,8 +11,10 @@ IMPROVEMENTS:
|
|||
|
||||
BUG FIXES:
|
||||
|
||||
- Skip `chmod 777` for `smb` mounted folders [[GH-107]]
|
||||
- Do not error if base box has been removed and `:box` is configured as the cache scope [[GH-86]]
|
||||
|
||||
[GH-107]: https://github.com/fgrehm/vagrant-cachier/issues/107
|
||||
[GH-86]: https://github.com/fgrehm/vagrant-cachier/issues/86
|
||||
[GH-89]: https://github.com/fgrehm/vagrant-cachier/issues/89
|
||||
|
||||
|
|
|
@ -20,8 +20,13 @@ module VagrantPlugins
|
|||
end
|
||||
|
||||
def chmod_bucket_root(machine)
|
||||
machine.communicate.sudo 'mkdir -p /tmp/vagrant-cache'
|
||||
|
||||
# https://github.com/fgrehm/vagrant-cachier/issues/107
|
||||
if ! smb_synced_folder_enabled?(machine)
|
||||
@logger.info "'chmod'ing bucket root dir to 777..."
|
||||
machine.communicate.sudo 'mkdir -p /tmp/vagrant-cache && chmod 777 /tmp/vagrant-cache'
|
||||
machine.communicate.sudo 'chmod 777 /tmp/vagrant-cache'
|
||||
end
|
||||
end
|
||||
|
||||
def configure_cache_buckets(env)
|
||||
|
@ -41,6 +46,20 @@ module VagrantPlugins
|
|||
data_file = env[:machine].data_dir.join('cache_dirs')
|
||||
data_file.open('w') { |f| f.print env[:cache_dirs].uniq.join("\n") }
|
||||
end
|
||||
|
||||
def smb_synced_folder_enabled?(machine)
|
||||
synced_folder_opts = machine.config.cache.synced_folder_opts
|
||||
synced_folder_opts ||= {}
|
||||
|
||||
# If smb was explicitly enabled
|
||||
if synced_folder_opts[:type] && synced_folder_opts[:type].to_s == 'smb'
|
||||
return true
|
||||
elsif machine.provider_name.to_sym == :hyperv
|
||||
# If the provider in use is hyperv, the default synced folder is 'smb'
|
||||
# unless specified
|
||||
return synced_folder_opts[:type] == nil
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue