aboutsummaryrefslogtreecommitdiffstats
path: root/modules/buildsystem/manifests/create_upload_dir.rb
diff options
context:
space:
mode:
Diffstat (limited to 'modules/buildsystem/manifests/create_upload_dir.rb')
-rw-r--r--modules/buildsystem/manifests/create_upload_dir.rb29
1 files changed, 16 insertions, 13 deletions
diff --git a/modules/buildsystem/manifests/create_upload_dir.rb b/modules/buildsystem/manifests/create_upload_dir.rb
index dd30d00d..8023ab5d 100644
--- a/modules/buildsystem/manifests/create_upload_dir.rb
+++ b/modules/buildsystem/manifests/create_upload_dir.rb
@@ -1,22 +1,25 @@
-define "create_upload_dir", :owner, :group, :releases do
+hostclass "buildsystem::create_upload_dir" do
states = ["todo","done","failure","queue","rejected"]
+ owner = scope.lookupvar('buildsystem::var::scheduler::login')
+ group = owner
+ uploads_dir = scope.lookupvar('buildsystem::var::scheduler::homedir') + '/uploads'
- file @name, :ensure => 'directory', :owner => @owner, :group => @group
+ file uploads_dir, :ensure => 'directory', :owner => owner, :group => group
for st in states do
- file [@name, st].join('/'), :ensure => 'directory', :owner => @owner, :group => @group
-
- @releases.each{|rel, repositories|
- file [@name, st, rel].join('/'), :ensure => 'directory', :owner => @owner, :group => @group
-
- repositories.each{|rep, medias|
- file [@name, st, rel, rep].join('/'), :ensure => 'directory', :owner => @owner, :group => @group
-
- for med in medias do
+ file [uploads_dir, st].join('/'), :ensure => 'directory', :owner => owner, :group => group
+
+ scope.lookupvar('buildsystem::var::distros::distros').each{|rel, distro|
+ file [uploads_dir, st, rel].join('/'), :ensure => 'directory', :owner => owner, :group => group
+ medias = distro['medias']
+ medias.each{|media, m|
+ file [uploads_dir, st, rel, media].join('/'), :ensure => 'directory', :owner => owner, :group => group
+
+ for repo in m['repos'].keys do
if st == 'done'
- file [@name, st, rel, rep, med].join('/'), :ensure => 'directory', :owner => @owner, :group => @group, :mode => 0775
+ file [uploads_dir, st, rel, media, repo].join('/'), :ensure => 'directory', :owner => owner, :group => group, :mode => 0775
else
- file [@name, st, rel, rep, med].join('/'), :ensure => 'directory', :owner => @owner, :group => @group
+ file [uploads_dir, st, rel, media, repo].join('/'), :ensure => 'directory', :owner => owner, :group => group
end
end
}