veewee 0.1.10 → 0.1.11
Sign up to get free protection for your applications and to get access to all the features.
- data/.rvmrc +2 -0
- data/Gemfile.lock +1 -1
- data/lib/veewee/export.rb +1 -1
- data/lib/veewee/session.rb +17 -9
- data/lib/veewee/transaction.rb +1 -0
- data/lib/veewee/version.rb +1 -1
- data/templates/{Archlinux-experimental → Archlinux-latest}/autorun0 +1 -1
- data/templates/{Archlinux-experimental → Archlinux-latest}/definition.rb +0 -0
- data/templates/{Archlinux-experimental → Archlinux-latest}/postinstall.sh +14 -8
- data/templates/Debian-6.0-amd64-netboot/definition.rb +43 -0
- data/templates/Debian-6.0-amd64-netboot/postinstall.sh +49 -0
- data/templates/Debian-6.0-amd64-netboot/preseed.cfg +312 -0
- data/templates/Sysrescuecd-2.0.0-experimental/definition.rb +1 -1
- data/templates/freebsd-8.1-experimental/definition.rb +20 -0
- data/templates/freebsd-8.1-experimental/postinstall.sh +96 -0
- metadata +12 -7
data/.rvmrc
CHANGED
data/Gemfile.lock
CHANGED
data/lib/veewee/export.rb
CHANGED
data/lib/veewee/session.rb
CHANGED
@@ -38,7 +38,7 @@ module Veewee
|
|
38
38
|
:ssh_login_timeout => "100",:ssh_user => "vagrant", :ssh_password => "vagrant",:ssh_key => "",
|
39
39
|
:ssh_host_port => "2222", :ssh_guest_port => "22",
|
40
40
|
:sudo_cmd => "echo '%p'|sudo -S sh '%f'",
|
41
|
-
:shutdown_cmd => "shutdown -
|
41
|
+
:shutdown_cmd => "shutdown -h now",
|
42
42
|
:postinstall_files => [ "postinstall.sh"],:postinstall_timeout => 10000}
|
43
43
|
|
44
44
|
@definition=defaults.merge(options)
|
@@ -251,11 +251,19 @@ module Veewee
|
|
251
251
|
|
252
252
|
Veewee::Scancode.send_sequence("#{@vboxcmd}","#{boxname}",@definition[:boot_cmd_sequence])
|
253
253
|
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
254
|
+
kickstartfile=@definition[:kickstart_file]
|
255
|
+
puts "#{kickstartfile}"
|
256
|
+
if kickstartfile.nil? || kickstartfile.length == 0
|
257
|
+
puts "Skipping webserver as no kickstartfile was specified"
|
258
|
+
else
|
259
|
+
puts "Starting a webserver on port #{@definition[:kickstart_port]}"
|
260
|
+
#:kickstart_port => "7122", :kickstart_ip => self.local_ip, :kickstart_timeout => 1000,:kickstart_file => "preseed.cfg",
|
261
|
+
Veewee::Web.wait_for_request(kickstartfile,{:port => @definition[:kickstart_port],
|
262
|
+
:host => @definition[:kickstart_ip], :timeout => @definition[:kickstart_timeout],
|
263
|
+
:web_dir => File.join(@definition_dir,boxname)})
|
264
|
+
|
265
|
+
end
|
266
|
+
|
259
267
|
|
260
268
|
Veewee::Ssh.when_ssh_login_works("localhost",ssh_options) do
|
261
269
|
#Transfer version of Virtualbox to $HOME/.vbox_version
|
@@ -389,7 +397,7 @@ module Veewee
|
|
389
397
|
location=boxname+"."+@definition[:disk_format].downcase
|
390
398
|
found=false
|
391
399
|
VirtualBox::HardDrive.all.each do |d|
|
392
|
-
if
|
400
|
+
if d.location.match(/#{location}/)
|
393
401
|
|
394
402
|
if File.exists?(d.location)
|
395
403
|
command="#{@vboxcmd} closemedium disk '#{d.location}' --delete"
|
@@ -511,7 +519,7 @@ module Veewee
|
|
511
519
|
place=results.gets.chop
|
512
520
|
results.close
|
513
521
|
|
514
|
-
command ="#{@vboxcmd} createhd --filename '#{place}/#{boxname}/#{boxname}.#{@definition[:disk_format]}' --size '#{@definition[:disk_size].to_i}' --format #{@definition[:disk_format]} > /dev/null"
|
522
|
+
command ="#{@vboxcmd} createhd --filename '#{place}/#{boxname}/#{boxname}.#{@definition[:disk_format].downcase}' --size '#{@definition[:disk_size].to_i}' --format #{@definition[:disk_format].downcase} > /dev/null"
|
515
523
|
puts "#{command}"
|
516
524
|
Veewee::Shell.execute("#{command}")
|
517
525
|
|
@@ -706,7 +714,7 @@ module Veewee
|
|
706
714
|
sleep 2
|
707
715
|
#TODO:Restore snapshot!!!
|
708
716
|
vm.start
|
709
|
-
sleep
|
717
|
+
sleep 4
|
710
718
|
puts "Starting machine"
|
711
719
|
end
|
712
720
|
|
data/lib/veewee/transaction.rb
CHANGED
data/lib/veewee/version.rb
CHANGED
@@ -3,4 +3,4 @@
|
|
3
3
|
echo "We are installing archlinux through the livecd of System Rescue"
|
4
4
|
echo "Please wait while we do the grunt work ."
|
5
5
|
|
6
|
-
echo "
|
6
|
+
echo "Occasionally this hangs because of network issues to the archlinux mirrors"
|
File without changes
|
@@ -131,6 +131,9 @@ echo "sed -i 's:^DAEMONS\(.*\))$:DAEMONS\1 sshd):' /etc/rc.conf" | chroot /newar
|
|
131
131
|
echo "echo 'sshd:ALL' > /etc/hosts.allow" | chroot /newarch sh -
|
132
132
|
echo "echo 'ALL:ALL' > /etc/hosts.deny" | chroot /newarch sh -
|
133
133
|
|
134
|
+
|
135
|
+
|
136
|
+
|
134
137
|
#Configure Sudo
|
135
138
|
chroot /newarch pacman --noconfirm -S sudo
|
136
139
|
echo "echo 'vagrant ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers" | chroot /newarch sh -
|
@@ -164,15 +167,18 @@ echo "echo '. /usr/local/lib/rvm' >> /etc/bash/bash.rc" | chroot /newarch sh -
|
|
164
167
|
#https://wiki.archlinux.org/index.php/VirtualBox
|
165
168
|
#kernel pacman -S kernel26-headers
|
166
169
|
chroot /newarch pacman --noconfirm -S kernel26-headers
|
167
|
-
|
168
|
-
|
170
|
+
/bin/cp -f /root/.vbox_version /newarch/home/vagrant/.vbox_version
|
171
|
+
VBOX_VERSION=$(cat /root/.vbox_version)
|
172
|
+
|
169
173
|
##INstalling the virtualbox guest additions
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
174
|
+
cat <<EOF | chroot /newarch /bin/bash -
|
175
|
+
cd /tmp
|
176
|
+
wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
|
177
|
+
mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
|
178
|
+
sh /mnt/VBoxLinuxAdditions.run
|
179
|
+
umount /mnt
|
180
|
+
rm VBoxGuestAdditions_$VBOX_VERSION.iso
|
181
|
+
EOF
|
176
182
|
|
177
183
|
echo "sed -i 's:^DAEMONS\(.*\))$:DAEMONS\1 rc.vboxadd):' /etc/rc.conf" | chroot /newarch sh -
|
178
184
|
|
@@ -0,0 +1,43 @@
|
|
1
|
+
Veewee::Session.declare( {
|
2
|
+
:cpu_count => '1',
|
3
|
+
:memory_size=> '256',
|
4
|
+
:disk_size => '10140',
|
5
|
+
:disk_format => 'VDI',
|
6
|
+
:disk_size => '10240' ,
|
7
|
+
:os_type_id => 'Debian_64',
|
8
|
+
:iso_file => "debian-6.0.0-amd64-netinst.iso",
|
9
|
+
:iso_src => "http://ftp.acc.umu.se/debian-cd/current/amd64/iso-cd/debian-6.0.0-amd64-netinst.iso",
|
10
|
+
:iso_md5 => "98111f815d3bea761d303a14d8df8887",
|
11
|
+
:iso_download_timeout => "1000",
|
12
|
+
:boot_wait => "10",:boot_cmd_sequence => [
|
13
|
+
'<Esc>',
|
14
|
+
'install ',
|
15
|
+
'acpi=off noapic nolapic ',
|
16
|
+
'preseed/url=http://%IP%:%PORT%/preseed.cfg ',
|
17
|
+
'debian-installer=en_US ',
|
18
|
+
'auto ',
|
19
|
+
'locale=en_US ',
|
20
|
+
'kbd-chooser/method=us ',
|
21
|
+
'netcfg/get_hostname=%NAME% ',
|
22
|
+
'netcfg/get_domain=vagrantup.com ',
|
23
|
+
'fb=false ',
|
24
|
+
'debconf/frontend=noninteractive ',
|
25
|
+
'console-setup/ask_detect=false ',
|
26
|
+
'console-keymaps-at/keymap=us ',
|
27
|
+
'<Enter>'
|
28
|
+
],
|
29
|
+
:kickstart_port => "7122",
|
30
|
+
:kickstart_timeout => "10000",
|
31
|
+
:kickstart_file => "preseed.cfg",
|
32
|
+
:ssh_login_timeout => "10000",
|
33
|
+
:ssh_user => "vagrant",
|
34
|
+
:ssh_password => "vagrant",
|
35
|
+
:ssh_key => "",
|
36
|
+
:ssh_host_port => "7222",
|
37
|
+
:ssh_guest_port => "22",
|
38
|
+
:sudo_cmd => "echo '%p'|sudo -S sh '%f'",
|
39
|
+
:shutdown_cmd => "shutdown -H",
|
40
|
+
:postinstall_files => [ "postinstall.sh" ],
|
41
|
+
:postinstall_timeout => "10000"
|
42
|
+
}
|
43
|
+
)
|
@@ -0,0 +1,49 @@
|
|
1
|
+
#http://adrianbravo.tumblr.com/post/644860401
|
2
|
+
|
3
|
+
#Updating the box
|
4
|
+
apt-get -y update
|
5
|
+
apt-get -y install linux-headers-$(uname -r) build-essential
|
6
|
+
apt-get -y install zlib1g-dev libssl-dev libreadline5-dev
|
7
|
+
apt-get clean
|
8
|
+
|
9
|
+
#Setting up sudo
|
10
|
+
cp /etc/sudoers /etc/sudoers.orig
|
11
|
+
sed -i -e 's/%admin ALL=(ALL) ALL/%admin ALL=NOPASSWD:ALL/g' /etc/sudoers
|
12
|
+
|
13
|
+
#Installing ruby
|
14
|
+
wget http://rubyforge.org/frs/download.php/71096/ruby-enterprise-1.8.7-2010.02.tar.gz
|
15
|
+
tar xzvf ruby-enterprise-1.8.7-2010.02.tar.gz
|
16
|
+
./ruby-enterprise-1.8.7-2010.02/installer -a /opt/ruby --no-dev-docs --dont-install-useful-gems
|
17
|
+
echo 'PATH=$PATH:/opt/ruby/bin/'> /etc/profile.d/rubyenterprise.sh
|
18
|
+
rm -rf ./ruby-enterprise-1.8.7-2010.02/
|
19
|
+
rm ruby-enterprise-1.8.7-2010.02.tar.gz
|
20
|
+
|
21
|
+
#Installing chef & Puppet
|
22
|
+
/opt/ruby/bin/gem install chef --no-ri --no-rdoc
|
23
|
+
/opt/ruby/bin/gem install puppet --no-ri --no-rdoc
|
24
|
+
|
25
|
+
#Installing vagrant keys
|
26
|
+
mkdir /home/vagrant/.ssh
|
27
|
+
chmod 700 /home/vagrant/.ssh
|
28
|
+
cd /home/vagrant/.ssh
|
29
|
+
wget --no-check-certificate 'http://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub' -O authorized_keys
|
30
|
+
chown -R vagrant /home/vagrant/.ssh
|
31
|
+
|
32
|
+
#the netboot install the virtualbox stuff so we have to remove it
|
33
|
+
apt-get -y remove virtualbox-ose-guest-dkms
|
34
|
+
apt-get -y remove virtualbox-ose-guest-utils
|
35
|
+
|
36
|
+
#INstalling the virtualbox guest additions
|
37
|
+
VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
|
38
|
+
#INstalling the virtualbox guest additions
|
39
|
+
cd /tmp
|
40
|
+
wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
|
41
|
+
mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
|
42
|
+
yes|sh /mnt/VBoxLinuxAdditions.run
|
43
|
+
umount /mnt
|
44
|
+
|
45
|
+
apt-get -y remove linux-headers-$(uname -r) build-essential
|
46
|
+
apt-get -y autoremove
|
47
|
+
|
48
|
+
rm VBoxGuestAdditions_$VBOX_VERSION.iso
|
49
|
+
exit
|
@@ -0,0 +1,312 @@
|
|
1
|
+
#### Contents of the preconfiguration file (for squeeze)
|
2
|
+
### Localization
|
3
|
+
# Locale sets language and country.
|
4
|
+
d-i debian-installer/locale string en_US
|
5
|
+
|
6
|
+
# Keyboard selection.
|
7
|
+
#d-i console-tools/archs select at
|
8
|
+
d-i console-keymaps-at/keymap select us
|
9
|
+
# Example for a different keyboard architecture
|
10
|
+
#d-i console-keymaps-usb/keymap select mac-usb-us
|
11
|
+
|
12
|
+
### Network configuration
|
13
|
+
# netcfg will choose an interface that has link if possible. This makes it
|
14
|
+
# skip displaying a list if there is more than one interface.
|
15
|
+
d-i netcfg/choose_interface select auto
|
16
|
+
|
17
|
+
# To pick a particular interface instead:
|
18
|
+
#d-i netcfg/choose_interface select eth1
|
19
|
+
|
20
|
+
# If you have a slow dhcp server and the installer times out waiting for
|
21
|
+
# it, this might be useful.
|
22
|
+
#d-i netcfg/dhcp_timeout string 60
|
23
|
+
|
24
|
+
# If you prefer to configure the network manually, uncomment this line and
|
25
|
+
# the static network configuration below.
|
26
|
+
#d-i netcfg/disable_dhcp boolean true
|
27
|
+
|
28
|
+
# If you want the preconfiguration file to work on systems both with and
|
29
|
+
# without a dhcp server, uncomment these lines and the static network
|
30
|
+
# configuration below.
|
31
|
+
#d-i netcfg/dhcp_failed note
|
32
|
+
#d-i netcfg/dhcp_options select Configure network manually
|
33
|
+
|
34
|
+
# Static network configuration.
|
35
|
+
#d-i netcfg/get_nameservers string 192.168.1.1
|
36
|
+
#d-i netcfg/get_ipaddress string 192.168.1.42
|
37
|
+
#d-i netcfg/get_netmask string 255.255.255.0
|
38
|
+
#d-i netcfg/get_gateway string 192.168.1.1
|
39
|
+
#d-i netcfg/confirm_static boolean true
|
40
|
+
|
41
|
+
# Any hostname and domain names assigned from dhcp take precedence over
|
42
|
+
# values set here. However, setting the values still prevents the questions
|
43
|
+
# from being shown, even if values come from dhcp.
|
44
|
+
#d-i netcfg/get_hostname string vagrant
|
45
|
+
d-i netcfg/get_domain string vagrantup.com
|
46
|
+
|
47
|
+
# Disable that annoying WEP key dialog.
|
48
|
+
d-i netcfg/wireless_wep string
|
49
|
+
# The wacky dhcp hostname that some ISPs use as a password of sorts.
|
50
|
+
#d-i netcfg/dhcp_hostname string radish
|
51
|
+
|
52
|
+
# If non-free firmware is needed for the network or other hardware, you can
|
53
|
+
# configure the installer to always try to load it, without prompting. Or
|
54
|
+
# change to false to disable asking.
|
55
|
+
#d-i hw-detect/load_firmware boolean true
|
56
|
+
|
57
|
+
### Network console
|
58
|
+
# Use the following settings if you wish to make use of the network-console
|
59
|
+
# component for remote installation over SSH. This only makes sense if you
|
60
|
+
# intend to perform the remainder of the installation manually.
|
61
|
+
#d-i anna/choose_modules string network-console
|
62
|
+
#d-i network-console/password password r00tme
|
63
|
+
#d-i network-console/password-again password r00tme
|
64
|
+
|
65
|
+
### Mirror settings
|
66
|
+
# If you select ftp, the mirror/country string does not need to be set.
|
67
|
+
#d-i mirror/protocol string ftp
|
68
|
+
d-i mirror/country string manual
|
69
|
+
d-i mirror/http/hostname string http.us.debian.org
|
70
|
+
d-i mirror/http/directory string /debian
|
71
|
+
d-i mirror/http/proxy string
|
72
|
+
|
73
|
+
# Suite to install.
|
74
|
+
#d-i mirror/suite string testing
|
75
|
+
# Suite to use for loading installer components (optional).
|
76
|
+
#d-i mirror/udeb/suite string testing
|
77
|
+
|
78
|
+
### Clock and time zone setup
|
79
|
+
# Controls whether or not the hardware clock is set to UTC.
|
80
|
+
d-i clock-setup/utc boolean true
|
81
|
+
|
82
|
+
# You may set this to any valid setting for $TZ; see the contents of
|
83
|
+
# /usr/share/zoneinfo/ for valid values.
|
84
|
+
d-i time/zone string UTC
|
85
|
+
|
86
|
+
# Controls whether to use NTP to set the clock during the install
|
87
|
+
d-i clock-setup/ntp boolean true
|
88
|
+
# NTP server to use. The default is almost always fine here.
|
89
|
+
#d-i clock-setup/ntp-server string ntp.example.com
|
90
|
+
|
91
|
+
### Partitioning
|
92
|
+
# If the system has free space you can choose to only partition that space.
|
93
|
+
#d-i partman-auto/init_automatically_partition select biggest_free
|
94
|
+
|
95
|
+
# Alternatively, you can specify a disk to partition. The device name must
|
96
|
+
# be given in traditional non-devfs format.
|
97
|
+
# Note: A disk must be specified, unless the system has only one disk.
|
98
|
+
# For example, to use the first SCSI/SATA hard disk:
|
99
|
+
d-i partman-auto/disk string /dev/sda
|
100
|
+
# In addition, you'll need to specify the method to use.
|
101
|
+
# The presently available methods are: "regular", "lvm" and "crypto"
|
102
|
+
d-i partman-auto/method string lvm
|
103
|
+
|
104
|
+
# If one of the disks that are going to be automatically partitioned
|
105
|
+
# contains an old LVM configuration, the user will normally receive a
|
106
|
+
# warning. This can be preseeded away...
|
107
|
+
d-i partman-lvm/device_remove_lvm boolean true
|
108
|
+
# The same applies to pre-existing software RAID array:
|
109
|
+
d-i partman-md/device_remove_md boolean true
|
110
|
+
|
111
|
+
# And the same goes for the confirmation to write the lvm partitions.
|
112
|
+
d-i partman-lvm/confirm boolean true
|
113
|
+
d-i partman-lvm/confirm_nooverwrite boolean true
|
114
|
+
|
115
|
+
|
116
|
+
d-i partman/choose_partition select finish
|
117
|
+
d-i partman-auto-lvm/guided_size string max
|
118
|
+
|
119
|
+
# You can choose one of the three predefined partitioning recipes:
|
120
|
+
# - atomic: all files in one partition
|
121
|
+
# - home: separate /home partition
|
122
|
+
# - multi: separate /home, /usr, /var, and /tmp partitions
|
123
|
+
d-i partman-auto/choose_recipe select atomic
|
124
|
+
d-i partman/default_filesystem string ext3
|
125
|
+
|
126
|
+
# Or provide a recipe of your own...
|
127
|
+
# The recipe format is documented in the file devel/partman-auto-recipe.txt.
|
128
|
+
# If you have a way to get a recipe file into the d-i environment, you can
|
129
|
+
# just point at it.
|
130
|
+
#d-i partman-auto/expert_recipe_file string /hd-media/recipe
|
131
|
+
|
132
|
+
# If not, you can put an entire recipe into the preconfiguration file in one
|
133
|
+
# (logical) line. This example creates a small /boot partition, suitable
|
134
|
+
# swap, and uses the rest of the space for the root partition:
|
135
|
+
#d-i partman-auto/expert_recipe string \
|
136
|
+
# boot-root :: \
|
137
|
+
# 40 50 100 ext3 \
|
138
|
+
# $primary{ } $bootable{ } \
|
139
|
+
# method{ format } format{ } \
|
140
|
+
# use_filesystem{ } filesystem{ ext3 } \
|
141
|
+
# mountpoint{ /boot } \
|
142
|
+
# . \
|
143
|
+
# 500 10000 1000000000 ext3 \
|
144
|
+
# method{ format } format{ } \
|
145
|
+
# use_filesystem{ } filesystem{ ext3 } \
|
146
|
+
# mountpoint{ / } \
|
147
|
+
# . \
|
148
|
+
# 64 512 300% linux-swap \
|
149
|
+
# method{ swap } format{ } \
|
150
|
+
# .
|
151
|
+
|
152
|
+
#The preseed line that "selects finish" needs to be in a certain order in your preseed, the example-preseed does not follow this.
|
153
|
+
#http://ubuntuforums.org/archive/index.php/t-1504045.html
|
154
|
+
|
155
|
+
# This makes partman automatically partition without confirmation, provided
|
156
|
+
# that you told it what to do using one of the methods above.
|
157
|
+
d-i partman/confirm_write_new_label boolean true
|
158
|
+
d-i partman/confirm boolean true
|
159
|
+
d-i partman/confirm_nooverwrite boolean true
|
160
|
+
|
161
|
+
|
162
|
+
### Base system installation
|
163
|
+
# Select the initramfs generator used to generate the initrd for 2.6 kernels.
|
164
|
+
#d-i base-installer/kernel/linux/initramfs-generators string yaird
|
165
|
+
|
166
|
+
# The kernel image (meta) package to be installed; "none" can be used if no
|
167
|
+
# kernel is to be installed.
|
168
|
+
#d-i base-installer/kernel/image string linux-image-2.6-486
|
169
|
+
|
170
|
+
### Account setup
|
171
|
+
# Skip creation of a root account (normal user account will be able to
|
172
|
+
# use sudo).
|
173
|
+
d-i passwd/root-login boolean false
|
174
|
+
# Alternatively, to skip creation of a normal user account.
|
175
|
+
#d-i passwd/make-user boolean false
|
176
|
+
|
177
|
+
# Root password, either in clear text
|
178
|
+
d-i passwd/root-password password vagrant
|
179
|
+
d-i passwd/root-password-again password vagrant
|
180
|
+
# or encrypted using an MD5 hash.
|
181
|
+
#d-i passwd/root-password-crypted password [MD5 hash]
|
182
|
+
|
183
|
+
# To create a normal user account.
|
184
|
+
d-i passwd/user-fullname string Vagrant User
|
185
|
+
d-i passwd/username string vagrant
|
186
|
+
# Normal user's password, either in clear text
|
187
|
+
d-i passwd/user-password password vagrant
|
188
|
+
d-i passwd/user-password-again password vagrant
|
189
|
+
# or encrypted using an MD5 hash.
|
190
|
+
#d-i passwd/user-password-crypted password [MD5 hash]
|
191
|
+
# Create the first user with the specified UID instead of the default.
|
192
|
+
#d-i passwd/user-uid string 1010
|
193
|
+
d-i user-setup/encrypt-home boolean false
|
194
|
+
d-i user-setup/allow-password-weak boolean true
|
195
|
+
|
196
|
+
# The user account will be added to some standard initial groups. To
|
197
|
+
# override that, use this.
|
198
|
+
d-i passwd/user-default-groups string audio cdrom video admin
|
199
|
+
|
200
|
+
### Apt setup
|
201
|
+
# You can choose to install non-free and contrib software.
|
202
|
+
#d-i apt-setup/non-free boolean true
|
203
|
+
#d-i apt-setup/contrib boolean true
|
204
|
+
# Uncomment this if you don't want to use a network mirror.
|
205
|
+
#d-i apt-setup/use_mirror boolean false
|
206
|
+
# Select which update services to use; define the mirrors to be used.
|
207
|
+
# Values shown below are the normal defaults.
|
208
|
+
#d-i apt-setup/services-select multiselect security, volatile
|
209
|
+
#d-i apt-setup/security_host string security.debian.org
|
210
|
+
#d-i apt-setup/volatile_host string volatile.debian.org
|
211
|
+
|
212
|
+
|
213
|
+
# By default the installer requires that repositories be authenticated
|
214
|
+
# using a known gpg key. This setting can be used to disable that
|
215
|
+
# authentication. Warning: Insecure, not recommended.
|
216
|
+
#d-i debian-installer/allow_unauthenticated string true
|
217
|
+
|
218
|
+
### Package selection
|
219
|
+
tasksel tasksel/first multiselect standard
|
220
|
+
# If the desktop task is selected, install the kde and xfce desktops
|
221
|
+
# instead of the default gnome desktop.
|
222
|
+
#tasksel tasksel/desktop multiselect kde, xfce
|
223
|
+
|
224
|
+
# Individual additional packages to install
|
225
|
+
d-i pkgsel/include string openssh-server ntp acpid sudo bzip2
|
226
|
+
|
227
|
+
# Whether to upgrade packages after debootstrap.
|
228
|
+
# Allowed values: none, safe-upgrade, full-upgrade
|
229
|
+
d-i pkgsel/upgrade select none
|
230
|
+
|
231
|
+
# Some versions of the installer can report back on what software you have
|
232
|
+
# installed, and what software you use. The default is not to report back,
|
233
|
+
# but sending reports helps the project determine what software is most
|
234
|
+
# popular and include it on CDs.
|
235
|
+
popularity-contest popularity-contest/participate boolean false
|
236
|
+
|
237
|
+
### Boot loader installation
|
238
|
+
# Grub is the default boot loader (for x86). If you want lilo installed
|
239
|
+
# instead, uncomment this:
|
240
|
+
#d-i grub-installer/skip boolean true
|
241
|
+
# To also skip installing lilo, and install no bootloader, uncomment this
|
242
|
+
# too:
|
243
|
+
#d-i lilo-installer/skip boolean true
|
244
|
+
|
245
|
+
# This is fairly safe to set, it makes grub install automatically to the MBR
|
246
|
+
# if no other operating system is detected on the machine.
|
247
|
+
d-i grub-installer/only_debian boolean true
|
248
|
+
|
249
|
+
# This one makes grub-installer install to the MBR if it also finds some other
|
250
|
+
# OS, which is less safe as it might not be able to boot that other OS.
|
251
|
+
d-i grub-installer/with_other_os boolean true
|
252
|
+
|
253
|
+
# Alternatively, if you want to install to a location other than the mbr,
|
254
|
+
# uncomment and edit these lines:
|
255
|
+
#d-i grub-installer/only_debian boolean false
|
256
|
+
#d-i grub-installer/with_other_os boolean false
|
257
|
+
#d-i grub-installer/bootdev string (hd0,0)
|
258
|
+
# To install grub to multiple disks:
|
259
|
+
#d-i grub-installer/bootdev string (hd0,0) (hd1,0) (hd2,0)
|
260
|
+
|
261
|
+
# Optional password for grub, either in clear text
|
262
|
+
#d-i grub-installer/password password r00tme
|
263
|
+
#d-i grub-installer/password-again password r00tme
|
264
|
+
# or encrypted using an MD5 hash, see grub-md5-crypt(8).
|
265
|
+
#d-i grub-installer/password-crypted password [MD5 hash]
|
266
|
+
|
267
|
+
### Finishing up the installation
|
268
|
+
# During installations from serial console, the regular virtual consoles
|
269
|
+
# (VT1-VT6) are normally disabled in /etc/inittab. Uncomment the next
|
270
|
+
# line to prevent this.
|
271
|
+
#d-i finish-install/keep-consoles boolean true
|
272
|
+
|
273
|
+
# Avoid that last message about the install being complete.
|
274
|
+
d-i finish-install/reboot_in_progress note
|
275
|
+
|
276
|
+
# This will prevent the installer from ejecting the CD during the reboot,
|
277
|
+
# which is useful in some situations.
|
278
|
+
#d-i cdrom-detect/eject boolean false
|
279
|
+
|
280
|
+
# This is how to make the installer shutdown when finished, but not
|
281
|
+
# reboot into the installed system.
|
282
|
+
#d-i debian-installer/exit/halt boolean true
|
283
|
+
# This will power off the machine instead of just halting it.
|
284
|
+
#d-i debian-installer/exit/poweroff boolean true
|
285
|
+
|
286
|
+
### Preseeding other packages
|
287
|
+
# Depending on what software you choose to install, or if things go wrong
|
288
|
+
# during the installation process, it's possible that other questions may
|
289
|
+
# be asked. You can preseed those too, of course. To get a list of every
|
290
|
+
# possible question that could be asked during an install, do an
|
291
|
+
# installation, and then run these commands:
|
292
|
+
# debconf-get-selections --installer > file
|
293
|
+
# debconf-get-selections >> file
|
294
|
+
|
295
|
+
|
296
|
+
#### Advanced options
|
297
|
+
### Running custom commands during the installation
|
298
|
+
# d-i preseeding is inherently not secure. Nothing in the installer checks
|
299
|
+
# for attempts at buffer overflows or other exploits of the values of a
|
300
|
+
# preconfiguration file like this one. Only use preconfiguration files from
|
301
|
+
# trusted locations! To drive that home, and because it's generally useful,
|
302
|
+
# here's a way to run any shell command you'd like inside the installer,
|
303
|
+
# automatically.
|
304
|
+
|
305
|
+
# This first command is run as early as possible, just after
|
306
|
+
# preseeding is read.
|
307
|
+
#d-i preseed/early_command string anna-install some-udeb
|
308
|
+
|
309
|
+
# This command is run just before the install finishes, but when there is
|
310
|
+
# still a usable /target directory. You can chroot to /target and use it
|
311
|
+
# directly, or use the apt-install and in-target commands to easily install
|
312
|
+
# packages and run commands in the target system.
|
@@ -3,7 +3,7 @@ Veewee::Session.declare( {
|
|
3
3
|
:disk_size => '10140', :disk_format => 'VDI',:disk_size => '10240' ,
|
4
4
|
:os_type_id => 'Linux',
|
5
5
|
:iso_file => "systemrescuecd-x86-2.0.0.iso",
|
6
|
-
:iso_src => "http://downloads.sourceforge.net/project/systemrescuecd/sysresccd-x86/2.0.0/systemrescuecd-x86-2.0.0.iso
|
6
|
+
:iso_src => "http://downloads.sourceforge.net/project/systemrescuecd/sysresccd-x86/2.0.0/systemrescuecd-x86-2.0.0.iso",
|
7
7
|
:iso_md5 => "51012e0bb943cff6367e5cea3a61cdbe",
|
8
8
|
:iso_download_timeout => "1000",
|
9
9
|
:boot_wait => "10",:boot_cmd_sequence => [
|
@@ -0,0 +1,20 @@
|
|
1
|
+
Veewee::Session.declare( {
|
2
|
+
:cpu_count => '1', :memory_size=> '256',
|
3
|
+
:disk_size => '10140', :disk_format => 'VDI',:disk_size => '10240' ,
|
4
|
+
:os_type_id => 'FreeBSD_64',
|
5
|
+
:iso_file => "mfsbsd-8.1-amd64.iso",
|
6
|
+
:iso_src => "http://mfsbsd.vx.sk/iso/mfsbsd-8.1-amd64.iso",
|
7
|
+
:iso_md5 => "alala",
|
8
|
+
:iso_download_timeout => "1000",
|
9
|
+
:boot_wait => "10",:boot_cmd_sequence => [
|
10
|
+
'<Enter>'
|
11
|
+
],
|
12
|
+
:kickstart_port => "7122", :kickstart_timeout => "10000",:kickstart_file => "",
|
13
|
+
:ssh_login_timeout => "10000",:ssh_user => "root", :ssh_password => "mfsroot",:ssh_key => "",
|
14
|
+
:ssh_host_port => "7222", :ssh_guest_port => "22",
|
15
|
+
:sudo_cmd => "sh '%f'",
|
16
|
+
:shutdown_cmd => "shutdown -H",
|
17
|
+
:postinstall_files => [ "postinstall.sh"],:postinstall_timeout => "10000"
|
18
|
+
}
|
19
|
+
)
|
20
|
+
#'setkmap=us dodhcp=eth0 dhcphostname=%NAME% ar_source=http://%IP%:%PORT%/ autoruns=0 rootpass=vagrant',
|
@@ -0,0 +1,96 @@
|
|
1
|
+
#http://www.freebsd.org/doc/en_US.ISO8859-1/articles/remote-install/installation.html
|
2
|
+
dd if=/dev/zero of=/dev/ad4 count=2
|
3
|
+
#bsdlabel -wB /dev/ad4
|
4
|
+
|
5
|
+
sysctl kern.geom.debugflags=16
|
6
|
+
|
7
|
+
|
8
|
+
cat <<EOF >/install.cfg
|
9
|
+
# This is the installation configuration file for our rackmounted FreeBSD
|
10
|
+
# cluster machines
|
11
|
+
|
12
|
+
# Turn on extra debugging.
|
13
|
+
debug=yes
|
14
|
+
|
15
|
+
#releaseName 8.0-RELEASE
|
16
|
+
|
17
|
+
|
18
|
+
################################
|
19
|
+
# My host specific data
|
20
|
+
#hostname=dragonfly
|
21
|
+
#domainname=cs.duke.edu
|
22
|
+
#nameserver=152.3.145.240
|
23
|
+
#defaultrouter=152.3.145.240
|
24
|
+
#ipaddr=152.3.145.64
|
25
|
+
#netmask=255.255.255.0
|
26
|
+
################################
|
27
|
+
tryDHCP=NO
|
28
|
+
|
29
|
+
################################
|
30
|
+
# Which installation device to use
|
31
|
+
_ftpPath=ftp://ftp.freebsd.org/pub/FreeBSD/
|
32
|
+
netDev=em0
|
33
|
+
mediaSetFTP
|
34
|
+
################################
|
35
|
+
|
36
|
+
################################
|
37
|
+
# Select which distributions we want.
|
38
|
+
#dists= bin doc games manpages catpages proflibs dict info des compat1x compat20 compat21 X331bin X331cfg X331doc X331html X331lib X331lkit X331man X331prog X331ps X331set X331VG16 X331nest X331vfb X331fnts X331f100 X331fcyr X331fscl X331fnon sinclude
|
39
|
+
#distSetCustom
|
40
|
+
distSetMinimum
|
41
|
+
################################
|
42
|
+
|
43
|
+
################################
|
44
|
+
# Now set the parameters for the partition editor on ad4.
|
45
|
+
disk=ad4
|
46
|
+
partition=all
|
47
|
+
#http://www.mail-archive.com/freebsd-questions@freebsd.org/msg212036.html
|
48
|
+
bootManager=standard
|
49
|
+
diskPartitionEditor
|
50
|
+
diskPartitionWrite
|
51
|
+
|
52
|
+
################################
|
53
|
+
|
54
|
+
################################
|
55
|
+
# All sizes are expressed in 512 byte blocks!
|
56
|
+
#
|
57
|
+
# A 960MB root partition, followed by a 0.5G swap partition, followed by
|
58
|
+
# a 1G /var, and a /usr using all the remaining space on the disk
|
59
|
+
#
|
60
|
+
ad4s1-1=ufs 1966080 /mnt
|
61
|
+
ad4s1-2=swap 1048576 none
|
62
|
+
ad4s1-3=ufs 2097152 /mnt/var
|
63
|
+
ad4s1-4=ufs 0 /mnt/usr
|
64
|
+
# Let's do it!
|
65
|
+
|
66
|
+
|
67
|
+
diskLabelEditor
|
68
|
+
diskLabelCommit
|
69
|
+
|
70
|
+
#http://unix.derkeiler.com/Mailing-Lists/FreeBSD/questions/2010-11/msg00420.html
|
71
|
+
installRoot=/mnt
|
72
|
+
#
|
73
|
+
|
74
|
+
# OK, everything is set. Do it!
|
75
|
+
installCommit
|
76
|
+
|
77
|
+
|
78
|
+
# Install some packages at the end.
|
79
|
+
# package=LPRng-3.2.3
|
80
|
+
# packageAdd
|
81
|
+
|
82
|
+
|
83
|
+
# Install some packages at the end.
|
84
|
+
|
85
|
+
#
|
86
|
+
# this last package is special. It is used to configure the machine.
|
87
|
+
# it installs several files (like /root/.rhosts) an its installation
|
88
|
+
# script tweaks several options in /etc/rc.conf
|
89
|
+
#
|
90
|
+
#package=ari-0.0
|
91
|
+
#packageAdd
|
92
|
+
|
93
|
+
EOF
|
94
|
+
|
95
|
+
exit
|
96
|
+
sysinstall configFile=/install.cfg loadConfig
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: veewee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 13
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 11
|
10
|
+
version: 0.1.11
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Patrick Debois
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2011-02-
|
19
|
+
date: 2011-02-11 00:00:00 +01:00
|
20
20
|
default_executable:
|
21
21
|
dependencies:
|
22
22
|
- !ruby/object:Gem::Dependency
|
@@ -159,9 +159,9 @@ files:
|
|
159
159
|
- lib/veewee/transaction.rb
|
160
160
|
- lib/veewee/version.rb
|
161
161
|
- lib/veewee/web.rb
|
162
|
-
- templates/Archlinux-
|
163
|
-
- templates/Archlinux-
|
164
|
-
- templates/Archlinux-
|
162
|
+
- templates/Archlinux-latest/autorun0
|
163
|
+
- templates/Archlinux-latest/definition.rb
|
164
|
+
- templates/Archlinux-latest/postinstall.sh
|
165
165
|
- templates/CentOS-4.8-i386/definition.rb
|
166
166
|
- templates/CentOS-4.8-i386/ks.cfg
|
167
167
|
- templates/CentOS-4.8-i386/postinstall.sh
|
@@ -171,8 +171,13 @@ files:
|
|
171
171
|
- templates/CentOS-5.5-i386/definition.rb
|
172
172
|
- templates/CentOS-5.5-i386/ks.cfg
|
173
173
|
- templates/CentOS-5.5-i386/postinstall.sh
|
174
|
+
- templates/Debian-6.0-amd64-netboot/definition.rb
|
175
|
+
- templates/Debian-6.0-amd64-netboot/postinstall.sh
|
176
|
+
- templates/Debian-6.0-amd64-netboot/preseed.cfg
|
174
177
|
- templates/Sysrescuecd-2.0.0-experimental/autorun0
|
175
178
|
- templates/Sysrescuecd-2.0.0-experimental/definition.rb
|
179
|
+
- templates/freebsd-8.1-experimental/definition.rb
|
180
|
+
- templates/freebsd-8.1-experimental/postinstall.sh
|
176
181
|
- templates/ubuntu-10.04.1-server-amd64/definition.rb
|
177
182
|
- templates/ubuntu-10.04.1-server-amd64/postinstall.sh
|
178
183
|
- templates/ubuntu-10.04.1-server-amd64/preseed.cfg
|