Mattflaschen has uploaded a new change for review. https://gerrit.wikimedia.org/r/134995
Change subject: WIP: Use NFS on non-Windows systems, with related permissions changes ...................................................................... WIP: Use NFS on non-Windows systems, with related permissions changes Based on https://gerrit.wikimedia.org/r/#/c/115114 Change-Id: Ia9214dcd5fbbb6d8e3da417dd25a16bae3a50256 --- M Vagrantfile M puppet/manifests/base.pp M puppet/modules/mediawiki/manifests/init.pp M puppet/modules/mediawiki/manifests/settings.pp 4 files changed, 28 insertions(+), 19 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/vagrant refs/changes/95/134995/1 diff --git a/Vagrantfile b/Vagrantfile index 62d203c..af8016b 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -113,10 +113,18 @@ auto_correct: true } unless settings['forward_ports'].nil? - config.vm.synced_folder '.', '/vagrant', - id: 'vagrant-root', - owner: 'vagrant', - group: 'www-data' + root_share_options = {:id => 'vagrant-root'} + + if Vagrant::Util::Platform.windows? + root_share_options[:owner] = 'vagrant' + root_share_options[:group] = 'www-data' + else + root_share_options[:type] = :nfs + config.nfs.map_uid = Process.uid + config.nfs.map_gid = Process.gid + end + + config.vm.synced_folder '.', '/vagrant', root_share_options # www-data needs to write to the logs, but doesn't need write # access for all of /vagrant @@ -163,6 +171,15 @@ 'forwarded_port' => settings['http_port'], 'shared_apt_cache' => '/vagrant/apt-cache/', } + + if Vagrant::Util::Platform.windows? + $FACTER['share_owner'] = 'vagrant' + $FACTER['share_group'] = 'www-data' + else + $FACTER['share_owner'] = Process.uid + $FACTER['share_group'] = Process.gid + end + end config.vm.provision :mediawiki_reload diff --git a/puppet/manifests/base.pp b/puppet/manifests/base.pp index a9b6a2e..f878d4d 100644 --- a/puppet/manifests/base.pp +++ b/puppet/manifests/base.pp @@ -42,13 +42,9 @@ ensure => present, } -# Declare default uid / gid and permissions for file resources, and -# tells Puppet not to back up configuration files by default. +# Tell Puppet not to back up configuration files by default. File { backup => false, - owner => 'root', - group => 'root', - mode => '0644', } file { '/srv': diff --git a/puppet/modules/mediawiki/manifests/init.pp b/puppet/modules/mediawiki/manifests/init.pp index d9641b1..73e81d0 100644 --- a/puppet/modules/mediawiki/manifests/init.pp +++ b/puppet/modules/mediawiki/manifests/init.pp @@ -94,9 +94,8 @@ file { $settings_dir: ensure => directory, - owner => 'vagrant', - group => 'www-data', - mode => '0755', + owner => $::share_owner, + group => $::share_group, } file { [ $cache_dir, $upload_dir ]: @@ -108,8 +107,8 @@ file { $managed_settings_dir: ensure => directory, - owner => 'vagrant', - group => 'www-data', + owner => $::share_owner, + group => $::share_group, mode => undef, recurse => true, purge => true, diff --git a/puppet/modules/mediawiki/manifests/settings.pp b/puppet/modules/mediawiki/manifests/settings.pp index 9ced46a..ec61f20 100644 --- a/puppet/modules/mediawiki/manifests/settings.pp +++ b/puppet/modules/mediawiki/manifests/settings.pp @@ -84,11 +84,8 @@ file { $settings_file: ensure => $ensure, content => template('mediawiki/settings.php.erb'), - # Because the file resides on a shared folder, any other owner - # or mode will cause VirtualBox and Puppet to play tug-o'-war - # over the file. - owner => 'vagrant', - group => 'www-data', + owner => $::share_owner, + group => $::share_group, require => Exec['mediawiki setup'], } } -- To view, visit https://gerrit.wikimedia.org/r/134995 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia9214dcd5fbbb6d8e3da417dd25a16bae3a50256 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/vagrant Gerrit-Branch: master Gerrit-Owner: Mattflaschen <mflasc...@wikimedia.org> Gerrit-Reviewer: Ori.livneh <o...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits