#
class user {
- define manage(
+ define manage(
$ensure = present,
$uid = 'absent',
$gid = 'uid',
$password = 'absent',
$shell = 'absent',
$sshkey = 'absent',
+ $sshkey_options = '',
$sshkey_type = 'absent',
$membership = 'minimum',
$ticket = false,
'absent' => "/home/$name",
default => $homedir,
}
-
+
$real_name_comment = $comment ? {
'absent' => $name,
default => $comment,
}
-
+
$real_sshkey_type = $sshkey_type ? {
'absent' => "ssh-rsa",
default => $sshkey_type,
} else {
$real_uid = false
}
-
+
if $gid != 'absent' {
if $gid == 'uid' {
if $uid != 'absent' {
ensure => $ensure,
key => $sshkey,
user => $title,
+ options => $sshkey_options,
type => $real_sshkey_type,
target => "$real_homedir/.ssh/authorized_keys",
require => User["$title"],