X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/9a3fee3b9f30028f6c0ee703dbf9ce86b4bab17b..51c88d5adaf0081b923dc3f330c98f1ff2432168:/cookbooks/accounts/recipes/default.rb diff --git a/cookbooks/accounts/recipes/default.rb b/cookbooks/accounts/recipes/default.rb index 50e3d375a..c6424b3ed 100644 --- a/cookbooks/accounts/recipes/default.rb +++ b/cookbooks/accounts/recipes/default.rb @@ -30,11 +30,10 @@ search(:accounts, "*:*").each do |account| if details[:status] group_members = details[:members] || account["members"] || [] - user_home = details[:home] || account["home"] || "#{node[:accounts][:home]}/#{name.to_s}" - manage_home = details[:manage_home] || account["manage_home"] || node[:accounts][:manage_home] - groups = details[:groups] || account["groups"] || [] + user_home = details[:home] || account["home"] || "#{node[:accounts][:home]}/#{name}" + manage_user_home = details.fetch(:manage_home, account.fetch("manage_home", node[:accounts][:manage_home])) - group_members = group_members.collect { |m| m.to_s }.sort + group_members = group_members.collect(&:to_s).sort case details[:status] when "role" @@ -56,7 +55,7 @@ search(:accounts, "*:*").each do |account| comment account["comment"] if account["comment"] home user_home shell user_shell - supports :manage_home => manage_home + manage_home manage_user_home end remote_directory "/home/#{name}" do @@ -64,24 +63,22 @@ search(:accounts, "*:*").each do |account| source name.to_s owner name.to_s group name.to_s - mode 0755 + mode 0o755 files_owner name.to_s files_group name.to_s - files_mode 0644 + files_mode 0o644 only_if do begin cookbook = run_context.cookbook_collection[cookbook_name] files = cookbook.relative_filenames_in_preferred_directory(node, :files, name.to_s) - not files.empty? + !files.empty? rescue Chef::Exceptions::FileNotFound false end end end - if details[:status] == "administrator" - administrators.push(name.to_s) - end + administrators.push(name.to_s) if details[:status] == "administrator" else user name.to_s do action :remove @@ -93,7 +90,7 @@ search(:accounts, "*:*").each do |account| end end -node[:accounts][:groups].each do |name,details| +node[:accounts][:groups].each do |name, details| group name do action :modify members details[:members]