Untitled
By: a guest | Mar 27th, 2009 | Syntax:
Ruby | Size: 1.73 KB | Hits: 84 | Expires: Never
class admin-user {
define make_user() {
user { "$name":
ensure => present ,
shell => "/bin/bash" ,
home => "/home/$name" ,
groups => [ sudo, adm ] ,
require => [ [File["homedir"]] , [File["sshdir"]] , [File["bashrc"]] , [File["profile"]], [File["bash_logout"]] , [File["authorized_keys"]] ]
}
file { "/home/$name":
alias => homedir ,
ensure => present ,
ensure => directory ,
recurse => true ,
owner => "$name" ,
group => "$name" ,
#require => [ [User[$name]] , File["sshdir"] ]
}
file { "/home/$name/.ssh":
alias => sshdir ,
ensure => directory ,
owner => "$name" ,
group => "$name" ,
mode => 700 ,
}
file { "/home/$name/.bashrc":
alias => bashrc ,
owner => "$name" ,
group => "$name" ,
source => "puppet:///files/server/etc/skel/bashrc"
}
file { "/home/$name/.profile":
alias => profile ,
owner => "$name" ,
group => "$name" ,
source => "puppet:///files/server/etc/skel/profile"
}
file { "/home/$name/.bash_logout":
alias => bash_logout ,
owner => "$name" ,
group => "$name" ,
source => "puppet:///files/server/etc/skel/bash_logout"
}
file { "/home/$name/.ssh/authorized_keys":
alias => authorized_keys ,
source => "puppet:///files/keys/$name" ,
mode => 600,
owner => "$name" ,
group => "$name"
}
}
make_user { [ danh, rahil ]:
}
}