--- /dev/null
+class roles::sso_rp {
+ file { '/var/lib/dsa':
+ ensure => directory,
+ mode => '02755'
+ }
+ file { '/var/lib/dsa/sso':
+ ensure => directory,
+ mode => '02755'
+ }
+ file { '/var/lib/dsa/sso/ca.crl':
+ content => template('roles/sso_rp/ca.crl.erb'),
+ }
+
+}
--- /dev/null
+<%=
+def getcrl(host)
+ crl = nil
+ begin
+ facts = YAML.load(File.open("/var/lib/puppet/yaml/facts/#{host}.yaml").read)
+ return facts.values['debsso_skac_crl']
+ rescue Exception => e
+ end
+ return crl
+end
+
+allnodeinfo = scope.lookupvar('site::allnodeinfo')
+crl = []
+
+allnodeinfo.keys.sort.each do |node|
+ next unless scope.lookupvar('site::allnodeinfo')[node]['purpose']
+ next unless scope.lookupvar('site::allnodeinfo')[node]['purpose'].include?('sso')
+ c = getcrl(node)
+ next if c.nil?
+ crl << c
+end
+
+crl.join("\n")
+
+# vim:set et:
+# vim:set sts=4 ts=4:
+# vim:set shiftwidth=4:
+%>