I am seeing the following error when my Puppet agent is attempting to retrieve the configuration from the Puppet Server (v8), all running on Redhat OS:
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Unknown variable: 'ssh_user'
The error refers to a custom resource type defined in a module called "Users".
class users::virtual { define ssh_user( $user=$name, $uid, $password, $key, $home_dir = 'home' ) { user { $user: ensure => present, managehome => true, uid => $uid, password => $password, home => "/${home_dir}/${user}" } ssh_authorized_key { "${user}_key": key => $key, type => "ssh-rsa", user => $user, } } define ssh_home ($home_dir = 'home') { file { "/${home_base_dir}/${name}/.ssh": ensure => directory, owner => $name, group => $name, mode => 0700, } -> file { "/${home_dir}/${name}/.ssh/id_rsa": source => "puppet:///modules/users/${name}/ssh/id_rsa", owner => $name, group => $name, mode => 0600, } -> file { "/${home_dir}/${name}/.ssh/id_rsa.pub": source => "puppet:///modules/users/${name}/ssh/id_rsa.pub", owner => $name, group => $name, mode => 0644, } } ssh_user { "myuser": uid => 1010, password => 'hidden', key => "hidden", }}
Any ideas why this is happening? I removed @ssh_user and tried $ssh_user but see the same error.