/[adm]/puppet/modules/buildsystem/manifests/init.pp
ViewVC logotype

Annotation of /puppet/modules/buildsystem/manifests/init.pp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 429 - (hide annotations) (download)
Tue Nov 23 22:08:58 2010 UTC (13 years, 4 months ago) by blino
File size: 3470 byte(s)
move /etc/iurt creation with iurt user (rationale: if there is a iurt user, iurt tools will be used)

1 misc 213 class buildsystem {
2 dmorgan 86
3 boklm 356 class base {
4     $build_login = "iurt"
5 blino 387 $build_home_dir = "/home/$build_login"
6 blino 397 $sched_login = "schedbot"
7 blino 393 $sched_home_dir = "/home/$sched_login"
8 blino 366
9     include ssh::auth
10     ssh::auth::key { $build_login: } # declare a key for build bot: RSA, 2048 bits
11 blino 395 ssh::auth::key { $sched_login: } # declare a key for sched bot: RSA, 2048 bits
12 boklm 356 }
13 boklm 355
14 boklm 356 class mainnode inherits base {
15 blino 381 include iurtuser
16 blino 353
17 blino 395 sshuser { $sched_login:
18     homedir => $sched_home_dir,
19     comment => "System user used to schedule builds",
20     }
21    
22 blino 399 ssh::auth::client { $sched_login: }
23     ssh::auth::server { $build_login: }
24    
25 blino 398 $package_list = ['task-bs-cluster-main', 'iurt']
26     package { $package_list:
27 blino 350 ensure => "installed"
28     }
29 blino 403
30     apache::vhost_other_app { "repository.$domain":
31 blino 404 vhost_file => "buildsystem/vhost_repository.conf",
32 blino 403 }
33    
34 blino 350 }
35    
36 boklm 356 class buildnode inherits base {
37 misc 213 include iurt
38 dmorgan 86 }
39    
40 misc 265 class scheduler {
41     # ulri
42     }
43    
44     class dispatcher {
45     # emi
46     }
47    
48     class repsys {
49     package { 'repsys':
50    
51     }
52    
53    
54     }
55    
56 blino 394 define sshuser($homedir, $comment) {
57     group {"$title":
58 blino 351 ensure => present,
59     }
60    
61 blino 394 user {"$title":
62 blino 351 ensure => present,
63 blino 393 comment => $comment,
64 blino 351 managehome => true,
65 blino 394 gid => $title,
66 blino 351 shell => "/bin/bash",
67 blino 394 notify => Exec["unlock$title"],
68 blino 424 require => Group[$title],
69 blino 351 }
70 blino 372
71 blino 386 # set password to * to unlock the account but forbid login through login
72 blino 394 exec { "unlock$title":
73     command => "usermod -p '*' $title",
74 blino 386 refreshonly => true,
75     }
76    
77 blino 393 file { $homedir:
78 blino 383 ensure => "directory",
79 blino 423 require => User[$title],
80 blino 383 }
81    
82 blino 393 file { "$homedir/.ssh":
83 blino 372 ensure => "directory",
84     mode => 600,
85 blino 394 owner => $title,
86     group => $title,
87 blino 423 require => File[$homedir],
88 blino 372 }
89 blino 351 }
90    
91 blino 393 class iurtuser {
92 blino 394 sshuser { $build_login:
93     homedir => $build_home_dir,
94     comment => "System user used to run build bots",
95     }
96 blino 429
97     file { "/etc/iurt":
98     ensure => "directory",
99     }
100 blino 393 }
101    
102 misc 213 class iurt {
103 boklm 216 include sudo
104 blino 381 include iurtuser
105 blino 366 ssh::auth::client { $build_login: }
106 blino 396 ssh::auth::server { $sched_login: user => $build_login }
107 misc 213
108     # build node common settings
109     # we could have the following skip list to use less space:
110     # '/(drakx-installer-binaries|drakx-installer-advertising|gfxboot|drakx-installer-stage2|mandriva-theme)/'
111     $package_list = ['task-bs-cluster-chroot', 'iurt']
112     package { $package_list:
113     ensure => installed;
114     }
115    
116 blino 426 file { "/etc/iurt/build":
117     ensure => "directory",
118 blino 428 require => File["/etc/iurt"],
119 blino 426 }
120    
121 blino 425 file { "/etc/iurt/build/cauldron.conf":
122 misc 213 ensure => present,
123     owner => $build_login,
124     group => $build_login,
125     mode => 644,
126 blino 426 require => File["/etc/iurt/build"],
127 boklm 218 content => template("buildsystem/iurt.cauldron.conf")
128 misc 213 }
129    
130 boklm 216 file { "/etc/sudoers.d/iurt":
131     ensure => present,
132     owner => root,
133     group => root,
134 boklm 219 mode => 440,
135 boklm 218 content => template("buildsystem/sudoers.iurt")
136 boklm 216 }
137 dmorgan 86 }
138     }

  ViewVC Help
Powered by ViewVC 1.1.30