Guest User

Untitled

a guest
May 22nd, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.57 KB | None | 0 0
  1. define apt::sources_list($ensure, $content = false, $source = false, $keyid= false, $keyserver = "keyserver.ubuntu.com") {
  2.  
  3. if $content {
  4. file { "/etc/apt/sources.list.d/${name}.list":
  5. ensure => $ensure,
  6. content => $content,
  7. owner => 'root',
  8. group => 'root',
  9. mode => '0644',
  10. before => Exec["apt-get_update"],
  11. notify => Exec["apt-get_update"],
  12. }
  13. if $keyid {
  14. case $ensure {
  15. present: {
  16. exec { "Import $keyid to apt keystore":
  17. path => '/bin:/usr/bin',
  18. environment => 'HOME=/root',
  19. command => "apt-key adv --keyserver $keyserver --recv-keys $keyid",
  20. user => 'root',
  21. group => 'root',
  22. unless => "apt-key list | grep $keyid",
  23. logoutput => on_failure,
  24. before => Exec["apt-get_update"],
  25. notify => Exec["apt-get_update"],
  26. }
  27. }
  28. absent: {
  29. exec { "Remove $keyid from apt keystore":
  30. path => '/bin:/usr/bin',
  31. environment => 'HOME=/root',
  32. command => "apt-key del $keyid",
  33. user => 'root',
  34. group => 'root',
  35. onlyif => "apt-key list | grep $keyid",
  36. before => Exec["apt-get_update"],
  37. notify => Exec["apt-get_update"],
  38. }
  39. }
  40. default: {
  41. fail "Invalid 'ensure' value '$ensure' for apt::key"
  42. }
  43.  
  44. }
  45. }
  46. }
  47.  
  48. }
Add Comment
Please, Sign In to add comment