From 8d7fd472cd88f51bb1bb15091dcd51e7dfe85989 Mon Sep 17 00:00:00 2001 From: Michael Scherer Date: Fri, 16 Mar 2012 22:46:19 +0000 Subject: split and clean lots of buildsystem submodule --- modules/buildsystem/manifests/buildnode.pp | 4 ++ modules/buildsystem/manifests/gatherer.pp | 4 ++ modules/buildsystem/manifests/init.pp | 85 ----------------------------- modules/buildsystem/manifests/iurtupload.pp | 8 +++ modules/buildsystem/manifests/mainnode.pp | 60 ++++++++++++++++++++ modules/buildsystem/manifests/media_cfg.pp | 10 ++++ modules/buildsystem/manifests/scheduler.pp | 4 ++ 7 files changed, 90 insertions(+), 85 deletions(-) create mode 100644 modules/buildsystem/manifests/buildnode.pp create mode 100644 modules/buildsystem/manifests/gatherer.pp create mode 100644 modules/buildsystem/manifests/iurtupload.pp create mode 100644 modules/buildsystem/manifests/mainnode.pp create mode 100644 modules/buildsystem/manifests/media_cfg.pp create mode 100644 modules/buildsystem/manifests/scheduler.pp diff --git a/modules/buildsystem/manifests/buildnode.pp b/modules/buildsystem/manifests/buildnode.pp new file mode 100644 index 00000000..f2efa8a3 --- /dev/null +++ b/modules/buildsystem/manifests/buildnode.pp @@ -0,0 +1,4 @@ +class buildsystem::buildnode { + include buildsystem::base + include buildsystem::iurt +} diff --git a/modules/buildsystem/manifests/gatherer.pp b/modules/buildsystem/manifests/gatherer.pp new file mode 100644 index 00000000..29c0ac73 --- /dev/null +++ b/modules/buildsystem/manifests/gatherer.pp @@ -0,0 +1,4 @@ +class buildsystem::gatherer { + # that's emi + include iurtupload +} diff --git a/modules/buildsystem/manifests/init.pp b/modules/buildsystem/manifests/init.pp index 8a3a2d3c..fb6a8ff6 100644 --- a/modules/buildsystem/manifests/init.pp +++ b/modules/buildsystem/manifests/init.pp @@ -1,89 +1,4 @@ class buildsystem { - class mainnode inherits base { - include iurtuser - - sshuser { $sched_login: - homedir => $sched_home_dir, - comment => "System user used to schedule builds", - } - - ssh::auth::client { $sched_login: } - - ssh::auth::server { [$sched_login, $build_login]: } - - # FIXME Add again task-bs-cluster-main when it will require mgarepo instead of repsys - $package_list = ['iurt'] - package { $package_list: } - - $mirror_root = "/distrib/mirror" - apache::vhost_other_app { "repository.$domain": - vhost_file => "buildsystem/vhost_repository.conf", - } - - $location = "/var/www/bs" - file { ["$location","$location/data"]: - ensure => directory, - } - - apache::vhost_base { "pkgsubmit.$domain": - aliases => { "/uploads" => "$sched_home_dir/uploads" }, - location => $location, - content => template("buildsystem/vhost_pkgsubmit.conf"), - } - - subversion::snapshot { $location: - source => "svn://svn.$domain/soft/buildsystem/web/", - } - - file { "$repository_root": - ensure => directory, - } - - define media_cfg() { - $arch = $name - file { "$repository_root/distrib/cauldron/$arch/media/media_info/media.cfg": - owner => $sched_login, - group => $sched_login, - source => "puppet:///modules/buildsystem/$arch/media.cfg", - } - } - - media_cfg { ["i586","x86_64"]: } - - include scheduler - include gatherer - include buildsystem::mgarepo - include buildsystem::signbot - include youri_submit - - cron { "dispatch jobs": - user => $sched_login, - command => "ulri; emi", - minute => "*", - } - } - - class buildnode inherits base { - include buildsystem::iurt - } - - class scheduler { - # ulri - include iurtupload - } - - class gatherer { - # emi - include iurtupload - } - - class iurtupload { - file { "/etc/iurt/upload.conf": - require => File["/etc/iurt"], - content => template("buildsystem/upload.conf") - } - } - class youri_submit { include sudo diff --git a/modules/buildsystem/manifests/iurtupload.pp b/modules/buildsystem/manifests/iurtupload.pp new file mode 100644 index 00000000..e4d7269d --- /dev/null +++ b/modules/buildsystem/manifests/iurtupload.pp @@ -0,0 +1,8 @@ +class buildsystem::iurtupload { + file { '/etc/iurt/upload.conf': + require => File['/etc/iurt'], + content => template('buildsystem/upload.conf') + } +} + + diff --git a/modules/buildsystem/manifests/mainnode.pp b/modules/buildsystem/manifests/mainnode.pp new file mode 100644 index 00000000..e895c3cf --- /dev/null +++ b/modules/buildsystem/manifests/mainnode.pp @@ -0,0 +1,60 @@ +class buildsystem::mainnode { + include buildsystem::base + include buildsystem::iurtuser + $sched_login = $buildsystem::base::sched_login + $sched_home_dir = $buildsystem::base::sched_home_dir + $build_login = $buildsystem::base::build_login + $repository_root = $buildsystem::base::repository_root + + sshuser { $sched_login: + homedir => $sched_home_dir, + comment => 'System user used to schedule builds', + } + + ssh::auth::client { $sched_login: } + + ssh::auth::server { [$sched_login, $build_login]: } + + # FIXME Add again task-bs-cluster-main when it will require + # mgarepo instead of repsys + $package_list = ['iurt'] + package { $package_list: } + + $mirror_root = '/distrib/mirror' + apache::vhost_other_app { "repository.$::domain": + vhost_file => 'buildsystem/vhost_repository.conf', + } + + $location = '/var/www/bs' + file { [$location,"$location/data"]: + ensure => directory, + } + + apache::vhost_base { "pkgsubmit.$::domain": + aliases => { '/uploads' => "$sched_home_dir/uploads" }, + location => $location, + content => template('buildsystem/vhost_pkgsubmit.conf'), + } + + subversion::snapshot { $location: + source => "svn://svn.$::domain/soft/buildsystem/web/", + } + + file { $repository_root: + ensure => directory, + } + + buildsystem::media_cfg { ['i586','x86_64']: } + + include buildsystem::scheduler + include buildsystem::gatherer + include buildsystem::mgarepo + include buildsystem::signbot + include buildsystem::youri_submit + + cron { 'dispatch jobs': + user => $sched_login, + command => 'ulri; emi', + minute => '*', + } +} diff --git a/modules/buildsystem/manifests/media_cfg.pp b/modules/buildsystem/manifests/media_cfg.pp new file mode 100644 index 00000000..9f7b6870 --- /dev/null +++ b/modules/buildsystem/manifests/media_cfg.pp @@ -0,0 +1,10 @@ +define buildsystem::media_cfg() { + $arch = $name + file { "$buildsystem::base::repository_root/distrib/cauldron/$arch/media/media_info/media.cfg": + owner => $buildsystem::base::sched_login, + group => $buildsystem::base::sched_login, + source => "puppet:///modules/buildsystem/$arch/media.cfg", + } +} + + diff --git a/modules/buildsystem/manifests/scheduler.pp b/modules/buildsystem/manifests/scheduler.pp new file mode 100644 index 00000000..87e7824f --- /dev/null +++ b/modules/buildsystem/manifests/scheduler.pp @@ -0,0 +1,4 @@ +class buildsystem::scheduler { + # ulri + include iurtupload +} -- cgit v1.2.1