Guest User

Untitled

a guest
Jan 4th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.08 KB | None | 0 0
  1. site.pp:
  2.  
  3.  
  4. node default {
  5.  
  6. include users::mysite
  7.  
  8. resources { user: purge => true }
  9. Group<| name == dev |>
  10. Group<| name == qa |>
  11. Group<| name == ops |>
  12. Group<| name == ops |> -> Users::Virtual::Localuser<| title == jim |>
  13. Group<| name == ops |> -> Users::Virtual::Localuser<| title == bob |>
  14. Group<| name == dev |> -> Users::Virtual::Localuser<| title == alex |>
  15. Group<| name == dev |> -> Users::Virtual::Localuser<| title == nick |>
  16. }
  17.  
  18. users/manifests/virtual.pp
  19.  
  20. class users::virtual {
  21.  
  22. define localuser ($ensure,$uid,$groups,$realname,$pass,$sshkey="") {
  23.  
  24. user { $title:
  25. ensure => $ensure,
  26. uid => $uid,
  27. groups => $groups,
  28. shell => "/bin/bash",
  29. home => "/home/$title",
  30. comment => $realname,
  31. password => $pass,
  32. managehome => true,
  33. }
  34.  
  35. if ( $sshkey != "" ) {
  36. ssh_authorized_key { $title:
  37. ensure => "present",
  38. type => "ssh-rsa",
  39. key => "$sshkey",
  40. user => "$title",
  41. require => User["$title"],
  42. name => "$title",
  43. }
  44. }
  45.  
  46. file { "/home/$title/":
  47. ensure => directory,
  48. owner => $title,
  49. mode => 700,
  50. require => User[$title]
  51. }
  52. }
  53. }
  54.  
  55.  
  56. users/manifets/mysite.pp
  57.  
  58. @users::virtual::localuser { "nick":
  59. ensure => present,
  60. realname => "nick",
  61. uid => "1007",
  62. groups => ["users","dev"],
  63. pass => 'alksdjflkajsd',
  64. sshkey => 'asdfasdfasdf',
  65. }
Add Comment
Please, Sign In to add comment