class users::virtual inherits user { # define custom users here } class users::backup inherits user { # define third-party hosted backup users here } class users::email inherits user { # define third-party hosted email tunnels here } class users::admin inherits user { # root user and password user::manage { "root": tag => "admin", homedir => '/root', password => '$root_pass', } # first user config user::manage { "$first_user": tag => "admin", groups => [ "sudo", ], password => '$first_user_password', sshkey => [ "$first_user_sshkey" ], } }