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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 386 - (show annotations) (download)
Mon Nov 22 12:29:28 2010 UTC (13 years, 4 months ago) by blino
File size: 2436 byte(s)
useradd module does not support password change, use usermod

1 class buildsystem {
2
3 class base {
4 $build_login = "iurt"
5 $build_home_dir = "/home/iurt"
6
7 include ssh::auth
8 ssh::auth::key { $build_login: } # declare a key for build bot: RSA, 2048 bits
9 }
10
11 class mainnode inherits base {
12 include iurtuser
13 ssh::auth::server { $build_login: }
14
15 package { "task-bs-cluster-main":
16 ensure => "installed"
17 }
18 }
19
20 class buildnode inherits base {
21 include iurt
22 }
23
24 class scheduler {
25 # ulri
26 }
27
28 class dispatcher {
29 # emi
30 }
31
32 class repsys {
33 package { 'repsys':
34
35 }
36
37
38 }
39
40 class iurtuser {
41 group {"$build_login":
42 ensure => present,
43 }
44
45 user {"$build_login":
46 ensure => present,
47 comment => "System user used to run build bots",
48 managehome => true,
49 gid => $build_login,
50 shell => "/bin/bash",
51 notify => Exec["unlock$build_login"],
52 }
53
54 # set password to * to unlock the account but forbid login through login
55 exec { "unlock$build_login":
56 command => "usermod -p '*' $build_login",
57 refreshonly => true,
58 }
59
60 file { $build_home_dir:
61 ensure => "directory",
62 }
63
64 file { "$build_home_dir/.ssh":
65 ensure => "directory",
66 mode => 600,
67 owner => $build_login,
68 group => $build_login,
69 }
70 }
71
72 class iurt {
73 include sudo
74 include iurtuser
75 ssh::auth::client { $build_login: }
76
77 # build node common settings
78 # we could have the following skip list to use less space:
79 # '/(drakx-installer-binaries|drakx-installer-advertising|gfxboot|drakx-installer-stage2|mandriva-theme)/'
80 $package_list = ['task-bs-cluster-chroot', 'iurt']
81 package { $package_list:
82 ensure => installed;
83 }
84
85 file { "$build_home_dir/.iurt.cauldron.conf":
86 ensure => present,
87 owner => $build_login,
88 group => $build_login,
89 mode => 644,
90 content => template("buildsystem/iurt.cauldron.conf")
91 }
92
93 file { "/etc/sudoers.d/iurt":
94 ensure => present,
95 owner => root,
96 group => root,
97 mode => 440,
98 content => template("buildsystem/sudoers.iurt")
99 }
100 }
101 }

  ViewVC Help
Powered by ViewVC 1.1.30