deprec 1.9.3 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. data/CHANGELOG +280 -0
  2. data/COPYING +19 -0
  3. data/LICENSE +339 -0
  4. data/README +152 -0
  5. data/THANKS +17 -0
  6. data/bin/depify +128 -0
  7. data/docs/EXAMPLE-installing_tracks.txt +41 -0
  8. data/docs/README.nagios +22 -0
  9. data/docs/README.rails +17 -0
  10. data/docs/config_gen_explained.txt +39 -0
  11. data/docs/{README.quickstart → deprec-1.x/deprec-1.x.quickstart} +4 -1
  12. data/docs/{building_edge_capistrano.txt → deprec-1.x/notes.txt} +6 -3
  13. data/docs/old/deprec_banner.gif +0 -0
  14. data/docs/windows_linux.txt +350 -0
  15. data/docs/xen/traffic_monitoring_with_vnstat.txt +95 -0
  16. data/docs/xen/xen-tools-notes.txt +31 -0
  17. data/docs/xen/xen_on_hardy.txt +39 -0
  18. data/lib/deprec.rb +8 -1
  19. data/lib/deprec/capistrano_extensions.rb +442 -0
  20. data/lib/deprec/recipes.rb +50 -233
  21. data/lib/deprec/recipes/aoe.rb +79 -0
  22. data/lib/deprec/recipes/app/mongrel.rb +213 -0
  23. data/lib/deprec/recipes/app/passenger.rb +197 -0
  24. data/lib/deprec/recipes/apt_mirror.rb +99 -0
  25. data/lib/deprec/recipes/ar_sendmail.rb +67 -0
  26. data/lib/deprec/recipes/canonical.rb +68 -0
  27. data/lib/deprec/recipes/db/mysql.rb +144 -0
  28. data/lib/deprec/recipes/db/postgresql.rb +104 -0
  29. data/lib/deprec/recipes/db/sqlite.rb +37 -0
  30. data/lib/deprec/recipes/ddclient.rb +51 -0
  31. data/lib/deprec/recipes/deprec.rb +199 -0
  32. data/lib/deprec/recipes/deprecated.rb +71 -0
  33. data/lib/deprec/recipes/example.rb +115 -0
  34. data/lib/deprec/recipes/git.rb +97 -0
  35. data/lib/deprec/recipes/gitosis.rb +48 -0
  36. data/lib/deprec/recipes/heartbeat.rb +138 -0
  37. data/lib/deprec/recipes/logrotate.rb +54 -0
  38. data/lib/deprec/recipes/lvm.rb +20 -0
  39. data/lib/deprec/recipes/memcache.rb +6 -2
  40. data/lib/deprec/recipes/monit.rb +143 -0
  41. data/lib/deprec/recipes/nagios.rb +305 -0
  42. data/lib/deprec/recipes/network.rb +93 -0
  43. data/lib/deprec/recipes/ntp.rb +103 -0
  44. data/lib/deprec/recipes/php.rb +58 -0
  45. data/lib/deprec/recipes/postfix.rb +115 -0
  46. data/lib/deprec/recipes/rails.rb +300 -55
  47. data/lib/deprec/recipes/ruby/mri.rb +55 -0
  48. data/lib/deprec/recipes/ruby/ree.rb +41 -0
  49. data/lib/deprec/recipes/sphinx.rb +86 -0
  50. data/lib/deprec/recipes/ssh.rb +85 -18
  51. data/lib/deprec/recipes/ssl.rb +55 -0
  52. data/lib/deprec/recipes/starling.rb +119 -0
  53. data/lib/deprec/recipes/svn.rb +163 -183
  54. data/lib/deprec/recipes/trac.rb +239 -62
  55. data/lib/deprec/recipes/ubuntu.rb +18 -100
  56. data/lib/deprec/recipes/users.rb +90 -0
  57. data/lib/deprec/recipes/utils.rb +58 -0
  58. data/lib/deprec/recipes/vnstat.rb +85 -0
  59. data/lib/deprec/recipes/web/apache.rb +119 -0
  60. data/lib/deprec/recipes/web/nginx.rb +172 -0
  61. data/lib/deprec/recipes/wordpress.rb +96 -0
  62. data/lib/deprec/recipes/wpmu.rb +103 -0
  63. data/lib/deprec/recipes/xen.rb +267 -0
  64. data/lib/deprec/recipes/xentools.rb +75 -0
  65. data/lib/deprec/templates/aoe/aoe-init +55 -0
  66. data/lib/deprec/templates/aoe/fence_aoemask +351 -0
  67. data/lib/deprec/templates/apache/namevirtualhosts.conf +5 -0
  68. data/lib/deprec/templates/apt/sources.list +18 -0
  69. data/lib/deprec/templates/apt_mirror/apt-mirror-cron +4 -0
  70. data/lib/deprec/templates/apt_mirror/mirror.list +33 -0
  71. data/lib/deprec/templates/ar_sendmail/logrotate.conf.erb +9 -0
  72. data/lib/deprec/templates/ar_sendmail/monit.conf.erb +5 -0
  73. data/lib/deprec/templates/ddclient/ddclient.conf.erb +11 -0
  74. data/lib/deprec/templates/ddclient/ddclient.erb +15 -0
  75. data/lib/deprec/templates/deprec/caprc.erb +14 -0
  76. data/lib/deprec/templates/heartbeat/authkeys.erb +2 -0
  77. data/lib/deprec/templates/heartbeat/ha.cf.erb +15 -0
  78. data/lib/deprec/templates/heartbeat/haresources.erb +1 -0
  79. data/lib/deprec/templates/logrotate/logrotate.conf.erb +32 -0
  80. data/lib/deprec/templates/mongrel/apache_vhost.erb +148 -0
  81. data/lib/deprec/templates/mongrel/logrotate.conf.erb +11 -0
  82. data/lib/deprec/{third_party/mongrel_cluster/resources/mongrel_cluster → templates/mongrel/mongrel_cluster-init-script} +19 -6
  83. data/lib/deprec/templates/mongrel/mongrel_cluster.yml.erb +10 -0
  84. data/lib/deprec/templates/mongrel/monit.conf.erb +17 -0
  85. data/lib/deprec/templates/mongrel/nginx_vhost.erb +41 -0
  86. data/lib/deprec/templates/monit/monit-init-script +104 -0
  87. data/lib/deprec/templates/monit/monitrc.erb +227 -0
  88. data/lib/deprec/templates/monit/nothing +0 -0
  89. data/lib/deprec/templates/mysql/create_databases.sql +20 -0
  90. data/lib/deprec/templates/mysql/database.yml.prod +6 -0
  91. data/lib/deprec/templates/mysql/database.yml.stage +6 -0
  92. data/lib/deprec/templates/mysql/my.cnf.erb +140 -0
  93. data/lib/deprec/templates/mysql/sphinx.conf.prod +542 -0
  94. data/lib/deprec/templates/mysql/sphinx.conf.stage +542 -0
  95. data/lib/deprec/templates/nagios/cgi.cfg.erb +321 -0
  96. data/lib/deprec/templates/nagios/check_linux_free_memory.pl +118 -0
  97. data/lib/deprec/templates/nagios/check_mongrel_cluster.rb +82 -0
  98. data/lib/deprec/templates/nagios/commands.cfg.erb +240 -0
  99. data/lib/deprec/templates/nagios/contacts.cfg.erb +57 -0
  100. data/lib/deprec/templates/nagios/hosts.cfg.erb +143 -0
  101. data/lib/deprec/templates/nagios/htpasswd.users +1 -0
  102. data/lib/deprec/templates/nagios/localhost.cfg.erb +157 -0
  103. data/lib/deprec/templates/nagios/nagios.cfg.erb +1274 -0
  104. data/lib/deprec/templates/nagios/nagios_apache_vhost.conf.erb +45 -0
  105. data/lib/deprec/templates/nagios/nrpe.cfg.erb +210 -0
  106. data/lib/deprec/templates/nagios/nrpe.xinetd.erb +16 -0
  107. data/lib/deprec/templates/nagios/resource.cfg.erb +34 -0
  108. data/lib/deprec/templates/nagios/services.cfg.erb +79 -0
  109. data/lib/deprec/templates/nagios/templates.cfg.erb +9 -0
  110. data/lib/deprec/templates/nagios/timeperiods.cfg.erb +94 -0
  111. data/lib/deprec/templates/network/hostname.erb +1 -0
  112. data/lib/deprec/templates/network/hosts.erb +2 -0
  113. data/lib/deprec/templates/network/interfaces.erb +18 -0
  114. data/lib/deprec/templates/network/resolv.conf.erb +6 -0
  115. data/lib/deprec/templates/nginx/logrotate.conf.erb +13 -0
  116. data/lib/deprec/templates/nginx/mime.types.erb +70 -0
  117. data/lib/deprec/templates/nginx/nginx-init-script +62 -0
  118. data/lib/deprec/templates/nginx/nginx.conf.erb +125 -0
  119. data/lib/deprec/templates/nginx/nginx.logrotate.d +12 -0
  120. data/lib/deprec/templates/nginx/nothing.conf +1 -0
  121. data/lib/deprec/templates/nginx/rails_nginx_vhost.conf.erb +41 -0
  122. data/lib/deprec/templates/ntp/ntp.conf.erb +42 -0
  123. data/lib/deprec/templates/passenger/apache_vhost.erb +21 -0
  124. data/lib/deprec/templates/passenger/passenger.conf.erb +21 -0
  125. data/lib/deprec/templates/passenger/passenger.load.erb +3 -0
  126. data/lib/deprec/templates/postfix/aliases.erb +3 -0
  127. data/lib/deprec/templates/postfix/dynamicmaps.cf.erb +8 -0
  128. data/lib/deprec/templates/{postfix_main.conf → postfix/main.cf.erb} +6 -8
  129. data/lib/deprec/templates/postfix/master.cf.erb +77 -0
  130. data/lib/deprec/templates/sphinx/monit.conf.erb +5 -0
  131. data/lib/deprec/templates/ssh/ssh_config.erb +50 -0
  132. data/lib/deprec/templates/ssh/sshd_config.erb +78 -0
  133. data/lib/deprec/templates/ssl/make-ssl-cert +138 -0
  134. data/lib/deprec/templates/ssl/ssl-cert-snakeoil.key +15 -0
  135. data/lib/deprec/templates/ssl/ssl-cert-snakeoil.pem +19 -0
  136. data/lib/deprec/templates/starling/monit.conf.erb +14 -0
  137. data/lib/deprec/templates/starling/starling-init-script.erb +71 -0
  138. data/lib/deprec/templates/subversion/svn.apache.vhost.erb +43 -0
  139. data/lib/deprec/templates/trac/apache_vhost.conf.erb +24 -0
  140. data/lib/deprec/templates/trac/nginx_vhost.conf.erb +26 -0
  141. data/lib/deprec/templates/trac/trac.ini.erb +169 -0
  142. data/lib/deprec/templates/trac/trac_deprec.png +0 -0
  143. data/lib/deprec/templates/trac/tracd-init.erb +43 -0
  144. data/lib/deprec/templates/trac/users.htdigest.erb +0 -0
  145. data/lib/deprec/templates/vnstat/config.php +57 -0
  146. data/lib/deprec/templates/wordpress/apache2_wordpress_vhost.conf.erb +31 -0
  147. data/lib/deprec/templates/wordpress/wp-config.php.erb +31 -0
  148. data/lib/deprec/templates/wpmu/apache_vhost.conf.erb +13 -0
  149. data/lib/deprec/templates/xen/network-bridge-wrapper +3 -0
  150. data/lib/deprec/templates/xen/xend-config.sxp.erb +195 -0
  151. data/lib/deprec/templates/xen/xend-init.erb +57 -0
  152. data/lib/deprec/templates/xen/xendomains.erb +137 -0
  153. data/lib/deprec/templates/xentools/15-disable-hwclock +40 -0
  154. data/lib/deprec/templates/xentools/40-setup-networking +145 -0
  155. data/lib/deprec/templates/xentools/xen-tools.conf.erb +276 -0
  156. data/lib/deprec/templates/xentools/xm.tmpl.erb +138 -0
  157. data/lib/deprec_cmd_completion.sh +26 -0
  158. data/lib/vmbuilder_plugins/all.rb +20 -0
  159. data/lib/vmbuilder_plugins/apt.rb +93 -0
  160. data/lib/vmbuilder_plugins/emerge.rb +76 -0
  161. data/lib/{deprec/third_party/vmbuilder/plugins → vmbuilder_plugins}/gem.rb +10 -17
  162. data/lib/{deprec/third_party/vmbuilder/plugins → vmbuilder_plugins}/std.rb +69 -19
  163. metadata +204 -55
  164. data/bin/deprec +0 -35
  165. data/docs/README.slicehost +0 -14
  166. data/docs/README.svn_trac +0 -19
  167. data/lib/deprec/capistrano_extensions/actor_extensions.rb +0 -89
  168. data/lib/deprec/capistrano_extensions/cli_extensions.rb +0 -38
  169. data/lib/deprec/capistrano_extensions/deprec_extensions.rb +0 -137
  170. data/lib/deprec/generators/deprec/USAGE +0 -11
  171. data/lib/deprec/generators/deprec/deprec_generator.rb +0 -24
  172. data/lib/deprec/generators/deprec/templates/deploy.rb +0 -90
  173. data/lib/deprec/generators/loader.rb +0 -20
  174. data/lib/deprec/recipes/apache.rb +0 -91
  175. data/lib/deprec/recipes/cache_svn.rb +0 -74
  176. data/lib/deprec/recipes/vmware.rb +0 -114
  177. data/lib/deprec/templates/trac.ini.erb +0 -106
  178. data/lib/deprec/third_party/THIRD_PARTY_README +0 -12
  179. data/lib/deprec/third_party/mongrel_cluster/LICENSE +0 -506
  180. data/lib/deprec/third_party/mongrel_cluster/recipes.rb +0 -96
  181. data/lib/deprec/third_party/railsmachine/LICENSE +0 -506
  182. data/lib/deprec/third_party/railsmachine/recipes/apache.rb +0 -92
  183. data/lib/deprec/third_party/railsmachine/recipes/mysql.rb +0 -73
  184. data/lib/deprec/third_party/railsmachine/recipes/templates/httpd-ssl.conf +0 -80
  185. data/lib/deprec/third_party/railsmachine/recipes/templates/httpd.conf +0 -57
  186. data/lib/deprec/third_party/vmbuilder/plugins.rb +0 -8
  187. data/lib/deprec/third_party/vmbuilder/plugins/apt.rb +0 -144
  188. data/resources/capistrano_include_dotfiles.patch +0 -17
@@ -0,0 +1,145 @@
1
+ #!/bin/sh
2
+ #
3
+ # This script sets up the /etc/network/interface file for the new
4
+ # image.
5
+ #
6
+ # Steve
7
+ # --
8
+ # http://www.steve.org.uk/
9
+
10
+
11
+ prefix=$1
12
+
13
+ #
14
+ # Source our common functions
15
+ #
16
+ if [ -e /usr/lib/xen-tools/common.sh ]; then
17
+ . /usr/lib/xen-tools/common.sh
18
+ else
19
+ . ./hooks/common.sh
20
+ fi
21
+
22
+
23
+ #
24
+ # Log our start
25
+ #
26
+ logMessage Script $0 starting
27
+
28
+
29
+ #
30
+ # Make sure we have an /etc/network directory.
31
+ #
32
+ mkdir -p ${prefix}/etc/network
33
+
34
+
35
+ #
36
+ # A function to setup DHCP for our new image.
37
+ #
38
+ setupDynamicNetworking ()
39
+ {
40
+ #
41
+ # The host is using DHCP.
42
+ #
43
+ cat <<E_O_DHCP > ${prefix}/etc/network/interfaces
44
+ # This file describes the network interfaces available on your system
45
+ # and how to activate them. For more information, see interfaces(5).
46
+
47
+ # The loopback network interface
48
+ auto lo
49
+ iface lo inet loopback
50
+
51
+ # The primary network interface
52
+ auto eth0
53
+ iface eth0 inet dhcp
54
+ post-up ethtool -K eth0 tx off
55
+
56
+ #
57
+ # The commented out line above will disable TCP checksumming which
58
+ # might resolve problems for some users. It is disabled by default
59
+ #
60
+ E_O_DHCP
61
+ }
62
+
63
+
64
+
65
+ #
66
+ # A function to setup static IP addresses for our new image.
67
+ #
68
+ setupStaticNetworking ()
69
+ {
70
+ #
71
+ # broadcast address?
72
+ #
73
+ bcast='';
74
+ if [ ! -z "${broadcast}" ]; then
75
+ bcast=" broadcast ${broadcast}"
76
+ fi
77
+
78
+ #
79
+ # We have a static IP address
80
+ #
81
+ cat <<E_O_STATIC >${prefix}/etc/network/interfaces
82
+ # This file describes the network interfaces available on your system
83
+ # and how to activate them. For more information, see interfaces(5).
84
+
85
+ # The loopback network interface
86
+ auto lo
87
+ iface lo inet loopback
88
+
89
+ # The primary network interface
90
+ auto eth0
91
+ iface eth0 inet static
92
+ address ${ip1}
93
+ gateway ${gateway}
94
+ netmask ${netmask}
95
+ ${bcast}
96
+ post-up ethtool -K eth0 tx off
97
+
98
+ #
99
+ # The commented out line above will disable TCP checksumming which
100
+ # might resolve problems for some users. It is disabled by default
101
+ #
102
+ E_O_STATIC
103
+
104
+ interface=1
105
+ count=2
106
+
107
+ while [ "${count}" -le "${ip_count}" ]; do
108
+
109
+ value=\$ip${count}
110
+ value=`eval echo $value`
111
+
112
+ logMessage Adding etho:${interface}
113
+
114
+ cat <<E_O_STATIC >>${prefix}/etc/network/interfaces
115
+ auto eth0:${interface}
116
+ iface eth0:${interface} inet static
117
+ address ${value}
118
+ netmask ${netmask}
119
+ post-up ethtool -K eth0 tx off
120
+ E_O_STATIC
121
+ count=`expr $count + 1`
122
+ interface=`expr $interface + 1`
123
+ done
124
+ }
125
+
126
+
127
+
128
+
129
+ #
130
+ # Call the relevant function
131
+ #
132
+ if [ -z "${dhcp}" ]; then
133
+ logMessage "Setting up static networking"
134
+ setupStaticNetworking
135
+
136
+ else
137
+ logMessage "Setting up DHCP networking"
138
+ setupDynamicNetworking
139
+ fi
140
+
141
+
142
+ #
143
+ # Log our finish
144
+ #
145
+ logMessage Script $0 finished
@@ -0,0 +1,276 @@
1
+ ##
2
+ # /etc/xen-tools/xen-tools.conf
3
+ ##
4
+ #
5
+ # This is the global configuration file for the scripts included
6
+ # within the xen-tools package.
7
+ #
8
+ # For more details please see:
9
+ #
10
+ # http://xen-tools.org/
11
+ #
12
+ ##
13
+
14
+
15
+ ##
16
+ #
17
+ # File Format
18
+ # -----------
19
+ #
20
+ # Anything following a '#' character is ignored as a comment.
21
+ #
22
+ # Otherwise the format of this file "key = value". The value of
23
+ # any keys in this file may be constructed via the output of a command.
24
+ #
25
+ # For example:
26
+ #
27
+ # kernel = /boot/vmlinuz-`uname -r`
28
+ #
29
+ ##
30
+
31
+
32
+
33
+ #
34
+ ##
35
+ # Output directory for storing loopback images.
36
+ #
37
+ # If you choose to use loopback images, which are simple to manage but
38
+ # slower than LVM partitions, then specify a directory here and uncomment
39
+ # the line.
40
+ #
41
+ # New instances will be stored in subdirectories named after their
42
+ # hostnames.
43
+ #
44
+ ##
45
+ # dir = /home/xen
46
+ #
47
+
48
+ #
49
+ ##
50
+ #
51
+ # If you don't wish to use loopback images then you may specify an
52
+ # LVM volume group here instead
53
+ #
54
+ ##
55
+ lvm = xendisks
56
+
57
+
58
+ #
59
+ ##
60
+ #
61
+ # Installation method.
62
+ #
63
+ # There are four distinct methods which you may to install a new copy
64
+ # of Linux to use in your Xen guest domain:
65
+ #
66
+ # - Installation via the debootstrap command.
67
+ # - Installation via the rpmstrap command.
68
+ # - Installation via the rinse command.
69
+ # - Installation by copying a directory containing a previous installation.
70
+ # - Installation by untarring a previously archived image.
71
+ #
72
+ # NOTE That if you use the "untar", or "copy" options you should ensure
73
+ # that the image you're left with matches the 'dist' setting later in
74
+ # this file.
75
+ #
76
+ #
77
+ ##
78
+ #
79
+ #
80
+ # install-method = [ debootstrap | rinse | rpmstrap | copy | tar ]
81
+ #
82
+ #
83
+ install-method = debootstrap
84
+
85
+ #
86
+ # If you're using the "copy", or "tar" installation methods you must
87
+ # need to specify the source location to copy from, or the source
88
+ # .tar file to unpack.
89
+ #
90
+ # You may specify that with a line such as:
91
+ #
92
+ # install-source = /path/to/copy
93
+ # install-source = /some/path/img.tar
94
+ #
95
+ #
96
+
97
+ #
98
+ ##
99
+ # Command definitions.
100
+ ##
101
+ #
102
+ # The "rinse", and "rpmstrap" commands are hardwired into
103
+ # the script, but if you wish to modify the commands which are executed
104
+ # when installing new systems by a "copy", "debootstrap", or "tar" method
105
+ # you can do so here:
106
+ #
107
+ # (This allows you to install from a .tar.bz file, rather than a plain
108
+ # tar file, use cdebootstrap, etc.)
109
+ #
110
+ # install-method=copy:
111
+ # copy-cmd = /bin/cp -a $src/* $dest
112
+ #
113
+ # install-method=debootstrap:
114
+ # debootstrap-cmd=/usr/sbin/debootstrap
115
+ #
116
+ # install-method=tar:
117
+ # tar-cmd = /bin/tar --numeric-owner -xvf $src
118
+ #
119
+ #
120
+
121
+
122
+
123
+ #
124
+ ##
125
+ # Disk and Sizing options.
126
+ ##
127
+ #
128
+ size = 4Gb # Disk image size.
129
+ memory = 256Mb # Memory size
130
+ swap = 512Mb # Swap size
131
+ # noswap = 1 # Don't use swap at all for the new system.
132
+ fs = ext3 # use the EXT3 filesystem for the disk image.
133
+ dist = hardy # Default distribution to install.
134
+ image = sparse # Specify sparse vs. full disk images.
135
+
136
+ #
137
+ # Currently supported and tested distributions include:
138
+ #
139
+ # via Debootstrap:
140
+ #
141
+ # Debian:
142
+ # sid, sarge, etch, lenny.
143
+ #
144
+ # Ubuntu:
145
+ # edgy, feisty, dapper, gutsy, hardy.
146
+ #
147
+ # via Rinse:
148
+ # centos-4, centos-5.
149
+ # fedora-core-4, fedora-core-5, fedora-core-6, fedora-core-7
150
+ #
151
+ #
152
+
153
+
154
+
155
+ ##
156
+ # Networking setup values.
157
+ ##
158
+
159
+ #
160
+ # Uncomment and adjust these network settings if you wish to give your
161
+ # new instances static IP addresses.
162
+ #
163
+ gateway = 192.168.1.1
164
+ netmask = 255.255.255.0
165
+ broadcast = 192.168.1.255
166
+ #
167
+ # Uncomment this if you wish the images to use DHCP
168
+ #
169
+ # dhcp = 1
170
+
171
+
172
+ ##
173
+ # Misc options
174
+ ##
175
+
176
+ #
177
+ # Uncomment the following line if you wish to disable the caching
178
+ # of downloaded .deb files when using debootstrap to install images.
179
+ #
180
+ # cache = no
181
+ #
182
+
183
+ #
184
+ # Uncomment the following line if you wish to interactively setup
185
+ # a new root password for images.
186
+ #
187
+ # passwd = 1
188
+
189
+ #
190
+ # If you'd like all accounts on your host system which are not present
191
+ # on the guest system to be copied over then uncomment the following line.
192
+ #
193
+ # accounts = 1
194
+ #
195
+
196
+ #
197
+ # Default kernel and ramdisk to use for the virtual servers
198
+ #
199
+ kernel = /boot/vmlinuz-`uname -r`
200
+ initrd = /boot/initrd.img-`uname -r`
201
+
202
+ #
203
+ # The architecture to use when using debootstrap, rinse, or rpmstrap.
204
+ #
205
+ # This is most useful on 64 bit host machines, for other systems it
206
+ # doesn't need to be used.
207
+ #
208
+ # arch=[i386|amd64]
209
+ #
210
+
211
+ #
212
+ # The default mirror for debootstrap to install Debian-derived distributions
213
+ #
214
+ mirror = http://ftp.us.debian.org/debian/
215
+
216
+ #
217
+ # A mirror suitable for use when installing the Dapper release of Ubuntu.
218
+ #
219
+ mirror = http://archive.ubuntu.com/ubuntu/
220
+
221
+ #
222
+ # If you like you could use per-distribution mirrors, which will
223
+ # be more useful if you're working in an environment where you want
224
+ # to regularly use multiple distributions:
225
+ #
226
+ # mirror_sid=http://ftp.us.debian.org/debian
227
+ # mirror_sarge=http://ftp.us.debian.org/debian
228
+ # mirror_etch=http://ftp.us.debian.org/debian
229
+ # mirror_dapper=http://archive.ubuntu.com/ubuntu
230
+ # mirror_edgy=http://archive.ubuntu.com/ubuntu
231
+ # mirror_feisty=http://archive.ubuntu.com/ubuntu
232
+ # mirror_gutsy=http://archive.ubuntu.com/ubuntu
233
+
234
+
235
+ #
236
+ # Filesystem options for the different filesystems we support.
237
+ #
238
+ ext3_options = noatime,nodiratime,errors=remount-ro
239
+ ext2_options = noatime,nodiratime,errors=remount-ro
240
+ xfs_options = defaults
241
+ reiser_options = defaults
242
+
243
+ #
244
+ # Uncomment if you wish newly created images to boot once they've been
245
+ # created.
246
+ #
247
+ # boot = 1
248
+
249
+
250
+ #
251
+ # If you're using the lenny or later version of the Xen guest kernel you will
252
+ # need to make sure that you use 'hvc0' for the guest serial device,
253
+ # and 'xvdX' instead of 'sdX' for serial devices.
254
+ #
255
+ # You may specify the things to use here:
256
+ #
257
+ # serial_device = hvc0 #default
258
+ # serial_device = tty1
259
+ #
260
+ # disk_device = xvda #default
261
+ # disk_device = sda
262
+ #
263
+
264
+
265
+ #
266
+ # Here we specify the output directory which the Xen configuration
267
+ # files will be written to, and the suffix to give them.
268
+ #
269
+ # Historically xen-tools have created configuration files in /etc/xen,
270
+ # and given each file the name $hostname.cfg. If you want to change
271
+ # that behaviour you may do so here.
272
+ #
273
+ #
274
+ # output = /etc/xen
275
+ # extension = .cfg
276
+ #
@@ -0,0 +1,138 @@
1
+ #
2
+ # Configuration file for the Xen instance {$hostname}, created
3
+ # by xen-tools {$xen_tools_version} on { scalar localtime }.
4
+ #
5
+
6
+ #
7
+ # Kernel + memory size
8
+ #
9
+ { if ( ( $kernel ) && ( !defined($pygrub)) )
10
+ {
11
+ $OUT.= "kernel = '$kernel'";
12
+ }
13
+ }
14
+ { if ( ( $initrd ) && ( !defined($pygrub)) )
15
+ {
16
+ $OUT.= "ramdisk = '$initrd'";
17
+ }
18
+ }
19
+ {
20
+ if ( $pygrub )
21
+ {
22
+ $OUT .= "bootloader = '/usr/bin/pygrub'\n";
23
+ }
24
+ }
25
+ memory = '{$memory}'
26
+
27
+ #
28
+ # Disk device(s).
29
+ #
30
+ {
31
+ if ( !defined($image_vbd ) )
32
+ {
33
+ for ( my $i = $#PARTITIONS; $i >= 0 ; $i-- )
34
+ {
35
+ if ( $PARTITIONS[$i]{'mountpoint'} eq '/' )
36
+ {
37
+ $OUT .= "root = '/dev/$device" . ($i + 1) . " ro'\n";
38
+ }
39
+ }
40
+ $OUT .= "disk = [\n";
41
+ for ( my $i = $#PARTITIONS; $i >= 0 ; $i-- )
42
+ {
43
+ $OUT .= " '$PARTITIONS[$i]{'imagetype'}$PARTITIONS[$i]{'image'},$device" . ( $i + 1 ) .",w',\n";
44
+ }
45
+ $OUT .= " ]\n";
46
+ }
47
+ }
48
+
49
+ #
50
+ # Physical volumes
51
+ #
52
+ {
53
+ if ( ( $swap_vbd ) && ( $image_vbd ) )
54
+ {
55
+ $OUT .= "root = '/dev/$device" . "2 ro'\n";
56
+
57
+ $OUT .= "disk = [ ";
58
+
59
+ if ( $image_vbd )
60
+ {
61
+ $OUT .= "'$image_vbd," . $device . "2,w'";
62
+
63
+ }
64
+
65
+ if ( $swap_vbd )
66
+ {
67
+ if ( $image_vbd )
68
+ {
69
+ $OUT .= ",";
70
+ }
71
+
72
+ $OUT .= "'$swap_vbd," . $device . "1,w'";
73
+ }
74
+ $OUT .= " ]\n";
75
+ }
76
+ }
77
+
78
+
79
+ #
80
+ # Hostname
81
+ #
82
+ name = '{$hostname}'
83
+
84
+ #
85
+ # Networking
86
+ #
87
+ { if ( $dhcp )
88
+ {
89
+ $OUT .= "dhcp = 'dhcp'\n";
90
+
91
+ # Setup the mac address, if present.
92
+ my $m = '';
93
+ if ( $mac )
94
+ {
95
+ $m = "mac=$mac"
96
+ }
97
+
98
+ $OUT .= "vif = [ '$m' ]";
99
+ }
100
+ else
101
+ {
102
+ #
103
+ # Setup the mac address, if present.
104
+ #
105
+ my $m = '';
106
+ if ( $mac )
107
+ {
108
+ $m = ",mac=$mac"
109
+ }
110
+
111
+ my $vn = '';
112
+ if ( $vifname )
113
+ {
114
+ $vn = ",vifname=$vifname";
115
+ }
116
+
117
+ $OUT .= "vif = [ 'ip=$ip1";
118
+ $OUT .= "$m";
119
+ $OUT .= "$vn";
120
+ $OUT .= "' ]";
121
+ }
122
+ }
123
+
124
+ #
125
+ # Behaviour
126
+ #
127
+ on_poweroff = 'destroy'
128
+ on_reboot = 'restart'
129
+ on_crash = 'restart'
130
+
131
+
132
+ { if ( $admins )
133
+ {
134
+ $OUT .= "xen_shell = '$admins'\n";
135
+ }
136
+ }
137
+
138
+ extra = ' TERM=xterm xencons=tty console=tty1'