I'm in the process of moving to Puppet 3 and hiera.

With my old setup I placed users that were on all servers in basenode.
Then did a += for any additional users in the node definition.

node basenode {
  users = ['user1', 'user2']
}

node server.example.com inherits basenode {
  users += ['user3']
  # or simple exclude the line, if there were no additional users
}

With the new setup I've got a common.yaml that contains a hash of users
with access to all boxes.  Then I thought I'd place additional users for
"server1" in server1.yaml.

common.yaml
users_common:
  user1:
    ensure: present
    home: /home/user1
    ......

server1.yaml
server1_users:
  user3:
    ensure: present
    home: /home/user3
    ......

Then I call like this, which just pulls the usernames from the hash and
creates home directories with a file type:

class users::ldap {
  # regular users
  $users_common = hiera('users_common')
  $users_common_keys = keys($users_common)
  $users_hosts = hiera("${::hostname}_users")
  $users_hosts_keys = keys($users_hosts)
  $adusers_combined = flatten([ $users_common_keys, $users_hosts_keys ])

  # create ldap user home directories
  users::admin_homedir_define { $adusers_combined: }
}

Works great until there are no users for "${::hostname}_users."

How can I make this work when "${::hostname}_users" is empty?
Thanks,

-- 
Kent

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/CA%2BnSE3-%3D9zQvajiNMt9e%2BOA64fHrYwPkk4WEwhm0JBPHN598PA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to