turn porterbox into a real role
authorPeter Palfrader <peter@palfrader.org>
Sun, 8 Sep 2019 10:28:15 +0000 (12:28 +0200)
committerPeter Palfrader <peter@palfrader.org>
Sun, 8 Sep 2019 10:28:15 +0000 (12:28 +0200)
13 files changed:
hieradata/nodes/abel.debian.org.yaml
hieradata/nodes/amdahl.debian.org.yaml [new file with mode: 0644]
hieradata/nodes/barriere.debian.org.yaml [new file with mode: 0644]
hieradata/nodes/eller.debian.org.yaml
hieradata/nodes/harris.debian.org.yaml
hieradata/nodes/minkus.debian.org.yaml [new file with mode: 0644]
hieradata/nodes/plummer.debian.org.yaml [new file with mode: 0644]
hieradata/nodes/zelenka.debian.org.yaml [new file with mode: 0644]
modules/motd/templates/motd.erb
modules/puppetmaster/lib/puppet/parser/functions/nodeinfo.rb
modules/roles/manifests/init.pp
modules/roles/manifests/porterbox.pp [new file with mode: 0644]
modules/samhain/templates/samhainrc.erb

index 14ec4d2..08fe52e 100644 (file)
@@ -1,2 +1,3 @@
 classes:
   - roles::broken_rtc
+  - roles::porterbox
diff --git a/hieradata/nodes/amdahl.debian.org.yaml b/hieradata/nodes/amdahl.debian.org.yaml
new file mode 100644 (file)
index 0000000..c24c0a5
--- /dev/null
@@ -0,0 +1,2 @@
+classes:
+  - roles::porterbox
diff --git a/hieradata/nodes/barriere.debian.org.yaml b/hieradata/nodes/barriere.debian.org.yaml
new file mode 100644 (file)
index 0000000..c24c0a5
--- /dev/null
@@ -0,0 +1,2 @@
+classes:
+  - roles::porterbox
index 14ec4d2..08fe52e 100644 (file)
@@ -1,2 +1,3 @@
 classes:
   - roles::broken_rtc
+  - roles::porterbox
index 14ec4d2..08fe52e 100644 (file)
@@ -1,2 +1,3 @@
 classes:
   - roles::broken_rtc
+  - roles::porterbox
diff --git a/hieradata/nodes/minkus.debian.org.yaml b/hieradata/nodes/minkus.debian.org.yaml
new file mode 100644 (file)
index 0000000..c24c0a5
--- /dev/null
@@ -0,0 +1,2 @@
+classes:
+  - roles::porterbox
diff --git a/hieradata/nodes/plummer.debian.org.yaml b/hieradata/nodes/plummer.debian.org.yaml
new file mode 100644 (file)
index 0000000..c24c0a5
--- /dev/null
@@ -0,0 +1,2 @@
+classes:
+  - roles::porterbox
diff --git a/hieradata/nodes/zelenka.debian.org.yaml b/hieradata/nodes/zelenka.debian.org.yaml
new file mode 100644 (file)
index 0000000..c24c0a5
--- /dev/null
@@ -0,0 +1,2 @@
+classes:
+  - roles::porterbox
index cdf2db0..41aa808 100644 (file)
@@ -50,7 +50,7 @@ if (scope.lookupvar('site::nodeinfo')['ldap'].has_key?('purpose'))
   if p.delete('buildd')
     entries += ", the Debian #{arch} build daemon"
   end
-  if p.delete('porterbox') or classes.include?("porterbox")
+  if classes.include?("roles::porterbox")
     entries += ", the Debian #{arch} porterbox"
   end
 
@@ -127,7 +127,7 @@ if scope.lookupvar('::cluster')
 end
 
 
-if classes.include?("porterbox")
+if classes.include?("roles::porterbox")
   purp += "\n " + wrap("Disk space on porter boxes is often limited.  Please respect your fellow porters by cleaning up after yourself and deleting schroots and source/build trees in your ~ as soon as feasible.  DSA reserves the right to recover disk space as necessary.  See <URL:https://dsa.debian.org/doc/schroot/> for a brief tutorial on using schroot.  There may be chroots for architectures other than #{arch} available, please list available chroots to check.")
 end
 
index b0a91f1..c7af8ae 100644 (file)
@@ -13,7 +13,6 @@ module Puppet::Parser::Functions
       nodeinfo['hoster'] = function_whohosts([nodeinfo['ldap']['ipHostNumber']])
       nodeinfo['buildd'] = (nodeinfo['ldap']['purpose'].respond_to?('include?') && nodeinfo['ldap']['purpose'].include?('buildd'))
       nodeinfo['timeserver'] = (nodeinfo['ldap']['purpose'].respond_to?('include?') && nodeinfo['ldap']['purpose'].include?('timeserver'))
-      nodeinfo['porterbox'] = (nodeinfo['ldap']['purpose'].respond_to?('include?') && nodeinfo['ldap']['purpose'].include?('porterbox'))
       nodeinfo['ganeti'] = (nodeinfo['ldap']['purpose'].respond_to?('include?') && nodeinfo['ldap']['purpose'].include?('ganeti/kvm host'))
 
       if lookupvar('::mta') == 'exim4'
index 65c23bc..6ab0e97 100644 (file)
@@ -20,11 +20,6 @@ class roles {
                include buildd
        }
 
-       # XXX: turn this into a real role
-       if getfromhash($site::nodeinfo, 'porterbox') {
-               include porterbox
-       }
-
        if has_role('bugs_mirror') {
                include roles::bugs_mirror
        }
diff --git a/modules/roles/manifests/porterbox.pp b/modules/roles/manifests/porterbox.pp
new file mode 100644 (file)
index 0000000..c0dc2a7
--- /dev/null
@@ -0,0 +1,4 @@
+# debian.org porterbox
+class roles::porterbox {
+  include porterbox
+}
index fc134cf..0faf5ec 100644 (file)
@@ -507,9 +507,6 @@ file=/usr/share/puppet-dashboard/public/javascripts/all.js
 dir=1/usr/share/puppet-dashboard/tmp/pids
 <% end -%>
 
-<% if classes.include?("porterbox") %>
-file=/etc/cron.weekly/puppet-mail-big-homedirs
-<% end -%>
 file=/etc/ssl/private/*.key-certchain
 dir=10/var/lib/puppet/clientbucket