From fb2ca2a5576fd56454d28a259f3e43945b37624f Mon Sep 17 00:00:00 2001 From: Jochen Schalanda Date: Sun, 23 May 2010 12:01:00 +0000 Subject: [PATCH] Fixes #265 - improved preseed template and more complicated partitioning scheme for Debian-based distributions. --- app/views/unattended/preseed.rhtml | 64 +++++++++++++----- app/views/unattended/preseed_finish.rhtml | 5 +- .../20100523114430_add_ubuntu_custom_lvm_ptable.rb | 67 ++++++++++++++++++++ 3 files changed, 116 insertions(+), 20 deletions(-) create mode 100644 db/migrate/20100523114430_add_ubuntu_custom_lvm_ptable.rb diff --git a/app/views/unattended/preseed.rhtml b/app/views/unattended/preseed.rhtml index 7bae41c..dd99468 100644 --- a/app/views/unattended/preseed.rhtml +++ b/app/views/unattended/preseed.rhtml @@ -1,38 +1,66 @@ +# Locale, country and keyboard settings d-i debian-installer/locale string en_US -d-i console-setup/layoutcode string en_US -d-i console-tools/archs select at -d-i console-keymaps-at/keymap select American English -d-i debian-installer/keymap string us -d-i netcfg/choose_interface select eth0 -d-i clock-setup/utc boolean true -d-i netcfg/dhcp_timeout string 60 +d-i console-setup/ask_detect boolean false +d-i console-setup/modelcode string pc105 +d-i console-setup/variant USA +d-i console-setup/layout USA +d-i console-setup/layoutcode string us + +# Network configuration d-i netcfg/choose_interface select auto d-i netcfg/get_hostname string <%= @host.name %> d-i netcfg/get_domain string <%= @host.domain.name %> -d-i netcfg/dhcp_options select Retry network autoconfiguration -d-i mirror/codename string <%= @host.operatingsystem.release_name %> -d-i mirror/country string enter information manually -d-i mirror/http/countries select enter information manually -d-i mirror/http/directory string <%= @preseed_path %> +d-i netcfg/wireless_wep string + +d-i hw-detect/load_firmware boolean true + +# Mirror settings +d-i mirror/country string manual d-i mirror/http/hostname string <%= @preseed_server %> +d-i mirror/http/directory string <%= @preseed_path %> d-i mirror/http/proxy string +d-i mirror/codename string <%= @host.operatingsystem.release_name %> +d-i mirror/suite string <%= @host.operatingsystem.release_name %> +d-i mirror/udeb/suite string <%= @host.operatingsystem.release_name %> + +# Time settings +d-i clock-setup/utc boolean true +d-i time/zone string UTC + +# NTP +#d-i clock-setup/ntp boolean true +#d-i clock-setup/ntp-server string ntp.example.com + +# Set alignment for automatic partitioning +# Choices: cylinder, minimal, optimal +#d-i partman/alignment select cylinder <%= @host.diskLayout %> -d-i clock-setup/utc boolean false -d-i time/zone string US/Central -d-i apt-setup/security_host string +# Install different kernel +#d-i base-installer/kernel/image string linux-server +# User settings d-i passwd/root-password-crypted password <%= root_pass %> user-setup-udeb passwd/root-login boolean true d-i passwd passwd/make-user boolean false user-setup-udeb passwd/make-user boolean false +# Install minimal task set (see tasksel --task-packages minimal) +tasksel tasksel/first multiselect minimal + +# Install some base packages +d-i pkgsel/include string puppet lsb-release openssh-server screen vim +d-i pkgsel/update-policy select unattended-upgrades + +popularity-contest popularity-contest/participate boolean false + +# Boot loader settings +#grub-pc grub-pc/hidden_timeout boolean false +#grub-pc grub-pc/timeout string 10 d-i grub-installer/only_debian boolean true d-i grub-installer/with_other_os boolean true -tasksel tasksel/first multiselect standard -d-i pkgsel/include string puppet lsb-release openssh-server + d-i finish-install/reboot_in_progress note -popularity-contest popularity-contest/participate boolean false d-i preseed/late_command string wget <%= foreman_url("preseed_finish") %> -O /target/tmp/finish.sh && in-target chmod +x /tmp/finish.sh && in-target /tmp/finish.sh diff --git a/app/views/unattended/preseed_finish.rhtml b/app/views/unattended/preseed_finish.rhtml index a34e6c4..2f22f85 100644 --- a/app/views/unattended/preseed_finish.rhtml +++ b/app/views/unattended/preseed_finish.rhtml @@ -1,6 +1,7 @@ cat > /etc/puppet/puppet.conf << EOF <%= snippets "puppet.conf" -%> EOF +/bin/sed -i 's/^START=no/START=yes/' /etc/default/puppet /bin/touch /etc/puppet/namespaceauth.conf -/usr/sbin/puppetd --config /etc/puppet/puppet.conf -o --tags no_such_tag --server <%= @host.puppetmaster %> --no-daemonize -wget -q -O /dev/null --no-check-certificate <%= foreman_url %> +/usr/sbin/puppetd --config /etc/puppet/puppet.conf --onetime --tags no_such_tag --server <%= @host.puppetmaster %> --no-daemonize +/usr/bin/wget --quiet --output-document=/dev/null --no-check-certificate <%= foreman_url %> diff --git a/db/migrate/20100523114430_add_ubuntu_custom_lvm_ptable.rb b/db/migrate/20100523114430_add_ubuntu_custom_lvm_ptable.rb new file mode 100644 index 0000000..786219c --- /dev/null +++ b/db/migrate/20100523114430_add_ubuntu_custom_lvm_ptable.rb @@ -0,0 +1,67 @@ +class AddUbuntuCustomLvmPtable < ActiveRecord::Migration + def self.up + Ptable.create :name => "Ubuntu custom LVM", :layout => < "name = 'Ubuntu custom LVM'").delete + end +end -- 1.6.3.3