diff options
author | Jesse Luehrs <doy@tozt.net> | 2018-11-15 23:44:28 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2018-11-15 23:44:28 -0500 |
commit | b7fae4bde557809f0ea9bc6552e1932afd857d63 (patch) | |
tree | 2eb73bb2069cfaa55e04ca3354c32acc42e69cc5 /modules/base/manifests | |
parent | 08318e4bb85b5e4afca1886c9c7482f02460f12f (diff) | |
download | puppet-tozt-b7fae4bde557809f0ea9bc6552e1932afd857d63.tar.gz puppet-tozt-b7fae4bde557809f0ea9bc6552e1932afd857d63.zip |
simplify home directory handling
Diffstat (limited to 'modules/base/manifests')
-rw-r--r-- | modules/base/manifests/user.pp | 29 |
1 files changed, 11 insertions, 18 deletions
diff --git a/modules/base/manifests/user.pp b/modules/base/manifests/user.pp index b75f445..c532bc0 100644 --- a/modules/base/manifests/user.pp +++ b/modules/base/manifests/user.pp @@ -2,18 +2,11 @@ define base::user( $pwhash, $user=$name, $group=$user, - $home=undef, $extra_groups=[], $homedir_mode='0700', $shell='/usr/bin/zsh', ) { - $_home = $home ? { - undef => $user ? { - 'root' => '/root', - default => "/home/$user", - }, - default => $home, - } + $home = base::home($user) group { $group: ensure => present; @@ -23,14 +16,14 @@ define base::user( ensure => 'present', gid => $group, groups => $extra_groups, - home => $_home, + home => $home, shell => $shell, password => $pwhash, require => Group[$group]; } file { - $_home: + $home: ensure => 'directory', owner => $user, group => $group, @@ -39,7 +32,7 @@ define base::user( User[$user], Group[$group], ]; - "${_home}/coding": + "${home}/coding": ensure => 'directory', owner => $user, group => $group, @@ -47,7 +40,7 @@ define base::user( require => [ User[$user], Group[$group], - File[$_home], + File[$home], ]; } @@ -75,7 +68,7 @@ define base::user( User[$user], Group[$group], ]; - "${_home}/.cargo": + "${home}/.cargo": ensure => link, target => "$persistent_data/cargo/${user}", owner => $user, @@ -83,9 +76,9 @@ define base::user( require => [ User[$user], Group[$group], - File["${_home}"], + File["${home}"], ]; - "${_home}/.rustup": + "${home}/.rustup": ensure => link, target => "$persistent_data/rustup/${user}", owner => $user, @@ -93,14 +86,14 @@ define base::user( require => [ User[$user], Group[$group], - File["${_home}"], + File["${home}"], ]; } - File["${_home}/.rustup"] -> Rust::User[$user] + File["${home}/.rustup"] -> Rust::User[$user] File["$persistent_data/rustup/${user}"] -> Rust::User[$user] - File["${_home}/.cargo"] -> Package::Cargo<| |> + File["${home}/.cargo"] -> Package::Cargo<| |> File["$persistent_data/cargo/${user}"] -> Package::Cargo<| |> } |