aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--manifests/repo.pp14
-rw-r--r--manifests/repo/debian.pp9
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,
+ }
+}