2024-01-31 05:14:59 +01:00
|
|
|
define zulip_ops::user_dotfiles (
|
|
|
|
$home = '',
|
2024-01-30 20:58:17 +01:00
|
|
|
$keys = false,
|
2024-01-31 19:25:39 +01:00
|
|
|
$authorized_keys = false,
|
2024-01-31 05:14:59 +01:00
|
|
|
) {
|
|
|
|
$user = $name
|
|
|
|
|
|
|
|
if $home == '' {
|
|
|
|
$homedir = "/home/${user}"
|
|
|
|
} else {
|
|
|
|
$homedir = $home
|
|
|
|
}
|
|
|
|
|
|
|
|
file { "${homedir}/.ssh":
|
|
|
|
ensure => directory,
|
|
|
|
require => User[$user],
|
|
|
|
owner => $user,
|
|
|
|
group => $user,
|
|
|
|
mode => '0700',
|
|
|
|
}
|
|
|
|
|
|
|
|
file { "${homedir}/.emacs":
|
|
|
|
ensure => file,
|
|
|
|
require => User[$user],
|
|
|
|
owner => $user,
|
|
|
|
group => $user,
|
|
|
|
mode => '0644',
|
|
|
|
source => 'puppet:///modules/zulip_ops/dotfiles/emacs.el',
|
|
|
|
}
|
2024-01-31 05:23:02 +01:00
|
|
|
|
|
|
|
# Suppress MOTD printing, to fix load problems with Nagios caused by
|
|
|
|
# Ubuntu's default MOTD tools for things like "checking for the next
|
|
|
|
# release" being super slow.
|
|
|
|
file { "${homedir}/.hushlogin":
|
|
|
|
ensure => file,
|
|
|
|
require => User[$user],
|
|
|
|
owner => $user,
|
|
|
|
group => $user,
|
|
|
|
mode => '0644',
|
|
|
|
content => '',
|
|
|
|
}
|
2024-01-30 20:58:17 +01:00
|
|
|
|
|
|
|
if $keys != false {
|
|
|
|
zulip_ops::ssh_keys{ $user:
|
|
|
|
keys => $keys,
|
|
|
|
require => File["${homedir}/.ssh"],
|
|
|
|
}
|
|
|
|
}
|
2024-01-31 19:25:39 +01:00
|
|
|
if $authorized_keys != false {
|
|
|
|
zulip_ops::ssh_authorized_keys{ $user:
|
|
|
|
keys => $authorized_keys,
|
|
|
|
require => File["${homedir}/.ssh"],
|
|
|
|
}
|
|
|
|
}
|
2024-01-31 05:14:59 +01:00
|
|
|
}
|