From d289d90533c832f83e7ba1bd846078d08717f617 Mon Sep 17 00:00:00 2001 From: Michael Scherer Date: Mon, 24 Jan 2011 01:32:06 +0000 Subject: - create ~schedbot/uploads hierarchy using a ruby dsl module ( see http://projects.puppetlabs.com/projects/1/wiki/Ruby_Dsl ) --- modules/buildsystem/manifests/create_upload_dir.rb | 23 ++++++++++++++++++++++ modules/buildsystem/manifests/init.pp | 8 ++++++++ 2 files changed, 31 insertions(+) create mode 100644 modules/buildsystem/manifests/create_upload_dir.rb (limited to 'modules/buildsystem') diff --git a/modules/buildsystem/manifests/create_upload_dir.rb b/modules/buildsystem/manifests/create_upload_dir.rb new file mode 100644 index 00000000..536180e2 --- /dev/null +++ b/modules/buildsystem/manifests/create_upload_dir.rb @@ -0,0 +1,23 @@ +define "create_upload_dir", :owner do + + states = ["todo","done","failure","queue","rejected"] + releases = ["cauldron"] + repositories = ["core","nonfree","tainted"] + medias = ['release'] + + for st in states do + file [@name, st].join('/'), :ensure => 'directory', :owner => @owner + + for rel in releases do + file [@name, st, rel].join('/'), :ensure => 'directory', :owner => @owner + + for rep in repositories do + file [@name, st, rel, rep].join('/'), :ensure => 'directory', :owner => @owner + + for med in medias do + file [@name, st, rel, rep, med].join('/'), :ensure => 'directory', :owner => @owner + end + end + end + end +end diff --git a/modules/buildsystem/manifests/init.pp b/modules/buildsystem/manifests/init.pp index 2e4db826..de78e763 100644 --- a/modules/buildsystem/manifests/init.pp +++ b/modules/buildsystem/manifests/init.pp @@ -123,6 +123,14 @@ class buildsystem { owner => $sched_login, require => File[$sched_home_dir], } + + # too tedious to create everything by hand + # so I prefered to used some puppet ruby module + # the exact content and directory name should IMHO be consolidated somewhere + import "create_upload_dir.rb" + create_upload_dir { "$sched_home_dir/uploads": + owner => $sched_login, + } } class youri_submit { -- cgit v1.2.1