Refactor user definitions.

Change-Id: If8e05e03a32c6d850ff9a9b1b55be0ae61de35fb
This commit is contained in:
James E. Blair 2011-09-14 21:20:17 +00:00
commit 516534ae37
2 changed files with 38 additions and 0 deletions

0
manifests/init.pp Normal file
View File

38
manifests/virtual.pp Normal file
View File

@ -0,0 +1,38 @@
class user::virtual {
define localuser ($realname,$sshkeys='',$shell="/bin/bash") {
group { $title:
ensure => 'present'
}
user { $title:
ensure => "present",
comment => $realname,
home => "/home/$title",
shell => $shell,
gid => $title,
groups => ['wheel','sudo','admin'],
membership => 'minimum',
managehome => true, # creates the home directory (does not actually manage it)
require => Group[$title],
}
file { "${title}_sshdir":
name => "/home/$title/.ssh",
owner => $title,
group => $title,
mode => 700,
ensure => 'directory',
require => User[$title],
}
file { "${title}_keys":
name => "/home/$title/.ssh/authorized_keys",
owner => $title,
group => $title,
mode => 400,
content => $sshkeys,
ensure => 'present',
require => File["${title}_sshdir"],
}
}
}