X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/98cce464a451dba30327b140964b0eafbcb9b16a..a3ccfefb246b6dc5999d2f8ce34b9eb37dcfae5d:/cookbooks/accounts/recipes/default.rb diff --git a/cookbooks/accounts/recipes/default.rb b/cookbooks/accounts/recipes/default.rb index 07d94ee57..bdb01eb9e 100644 --- a/cookbooks/accounts/recipes/default.rb +++ b/cookbooks/accounts/recipes/default.rb @@ -30,15 +30,14 @@ 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}" + user_home = details[:home] || account["home"] || "#{node[:accounts][:home]}/#{name}" manage_home = details[:manage_home] || account["manage_home"] || node[:accounts][:manage_home] - groups = details[:groups] || account["groups"] || [] - group_members = group_members.collect { |m| m.to_s }.sort + group_members = group_members.collect(&:to_s).sort case details[:status] when "role" - user_shell = "/sbin/nologin" + user_shell = "/usr/sbin/nologin" when "user", "administrator" user_shell = details[:shell] || account["shell"] || node[:accounts][:shell] end @@ -59,7 +58,8 @@ search(:accounts, "*:*").each do |account| supports :manage_home => manage_home end - remote_directory user_home do + remote_directory "/home/#{name}" do + path user_home source name.to_s owner name.to_s group name.to_s @@ -71,7 +71,7 @@ search(:accounts, "*:*").each do |account| 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 @@ -92,7 +92,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]