diff options
-rw-r--r-- | manifests/repo.pp | 14 | ||||
-rw-r--r-- | manifests/repo/debian.pp | 9 |
2 files changed, 18 insertions, 5 deletions
diff --git a/manifests/repo.pp b/manifests/repo.pp index cbe6106..f625599 100644 --- a/manifests/repo.pp +++ b/manifests/repo.pp @@ -3,10 +3,14 @@ class tor::repo ( $source_name = 'torproject.org', $include_src = false, ) { - apt::source { $source_name: - ensure => $ensure, - location => 'https://deb.torproject.org/torproject.org/', - key => '886DDD89', - include_src => $include_src, + case $::osfamily { + 'Debian': { + $key = '886DDD89' + $location = 'https://deb.torproject.org/torproject.org/' + class { 'tor::repo::debian': } + } + default: { + fail("Unsupported managed repository for osfamily: ${::osfamily}, operatingsystem: ${::operatingsystem}, module ${module_name} currently only supports managing repos for osfamily Debian and Ubuntu") + } } } diff --git a/manifests/repo/debian.pp b/manifests/repo/debian.pp new file mode 100644 index 0000000..174c331 --- /dev/null +++ b/manifests/repo/debian.pp @@ -0,0 +1,9 @@ +# PRIVATE CLASS: do not use directly +class tor::repo::debian inherits tor::repo { + apt::source { $source_name: + ensure => $::tor::repo::ensure, + location => $::tor::repo::location, + key => $::tor::repo::key, + include_src => $::tor::repo::include_src, + } +} |