Add ubuntu18
* Info about Ubiquity https://wiki.ubuntu.com/UbiquityAutomation
- we do exactly partitioning=> no possibility for now, to use
new installer type.
* Move growlvm.py to commons
Change-Id: Iabda3770b368a48919fef89d3a78cae388f60168
Prod-related: PROD-28155 (PROD:28155)
diff --git a/ubuntu-18.04/http/preseed.cfg b/ubuntu-18.04/http/preseed.cfg
new file mode 100644
index 0000000..9dd5ebe
--- /dev/null
+++ b/ubuntu-18.04/http/preseed.cfg
@@ -0,0 +1,181 @@
+# Mirror settings
+
+# Configure part of mirroring via passed bootcmdline
+d-i mirror/protocol string http
+#d-i mirror/http/hostname string mirror.mirantis.com
+#d-i mirror/http/directory string testing/ubuntu
+
+d-i mirror/country string manual
+d-i apt-setup/use_mirror boolean true
+d-i mirror/http/proxy string
+
+d-i apt-setup/backports boolean false
+d-i base-installer/install-recommends boolean false
+d-i console-setup/ask_detect boolean false
+d-i console-setup/console-setup/layoutcode string us
+d-i console-setup/modelcode string pc105
+d-i keyboard-configuration/layout string USA
+d-i keyboard-configuration/variant string USA
+
+d-i debian-installer/locale string en_US
+d-i debian-installer/language string en
+d-i debian-installer/country EN
+
+d-i pkgsel/install-language-support boolean false
+
+d-i debian-installer/framebuffer boolean false
+d-i debconf/frontend select noninteractive
+#d-i base-installer/kernel/image string linux-hwe
+d-i base-installer/kernel/override-image string linux-server
+d-i clock-setup/utc boolean true
+d-i clock-setup/utc-auto boolean true
+d-i finish-install/reboot_in_progress note
+d-i grub-installer/only_debian boolean true
+d-i grub-installer/with_other_os boolean true
+d-i netcfg/get_domain string local
+d-i netcfg/get_hostname string ubuntu
+d-i netcfg/enable boolean true
+d-i netcfg/choose_interface select auto
+d-i hw-detect/load_firmware boolean true
+
+d-i partman-auto/disk string /dev/sda /dev/vda
+# Use LVM for partitioning
+d-i partman-auto/method string lvm
+
+# GPT
+
+d-i partman-basicfilesystems/choose_label string gpt
+d-i partman-basicfilesystems/default_label string gpt
+d-i partman-partitioning/choose_label string gpt
+d-i partman-partitioning/default_label string gpt
+d-i partman/choose_label string gpt
+d-i partman/default_label string gpt
+
+# GPT
+
+d-i partman-auto-lvm/guided_size string max
+
+# If one of the disks that are going to be automatically partitioned
+# contains an old LVM configuration, the user will normally receive a
+# warning. Preseed this away
+d-i partman-lvm/device_remove_lvm boolean true
+
+# And the same goes for the confirmation to write the lvm partitions.
+d-i partman-lvm/confirm boolean true
+
+# Really, please don't prompt me!
+d-i partman-lvm/confirm_nooverwrite boolean true
+
+d-i partman-auto/expert_recipe string \
+ vcp_lvm :: \
+ 1 1 1 free \
+ $gptonly{ } \
+ $primary{ } \
+ $bios_boot{ } \
+ method{ biosgrub } \
+ . \
+ 1051 2 1051 ext3 \
+ $gptonly{ } \
+ $primary{ } \
+ method{ format } format{ } \
+ use_filesystem{ } filesystem{ ext3 } \
+ lable{ lable-boot } \
+ mountpoint{ /boot } \
+ . \
+ 10 10 10 ext4 \
+ $defaultignore{ } \
+ $gptonly{ } \
+ $primary{ } \
+ method{ lvm } \
+ vg_name{ vg0 } \
+ . \
+ 105 2 105 ext4 \
+ $lvmok{ } \
+ in_vg{ vg0 } \
+ lv_name{ home } \
+ method{ lvm } format{ } \
+ use_filesystem{ } filesystem{ ext4 } \
+ mountpoint{ /home } \
+ options/nodev{ nodev } \
+ . \
+ 105 2 105 ext4 ext4 \
+ $lvmok{ } \
+ in_vg{ vg0 } \
+ lv_name{ tmp } \
+ method{ lvm } format{ } \
+ use_filesystem{ } filesystem{ ext4 } \
+ mountpoint{ /tmp } \
+ options/nodev{ nodev } \
+ options/nosuid{ nosuid } \
+ options/noexec{ noexec } \
+ . \
+ 105 2 105 ext4 \
+ $lvmok{ } \
+ in_vg{ vg0 } \
+ lv_name{ var_log } \
+ method{ format } format{ } \
+ use_filesystem{ } filesystem{ ext4 } \
+ mountpoint{ /var/log } \
+ options/noexec{ noexec } \
+ . \
+ 315 2 315 ext4 ext4 \
+ $lvmok{ } \
+ in_vg{ vg0 } \
+ lv_name{ var_tmp } \
+ method{ format } format{ } \
+ use_filesystem{ } filesystem{ ext4 } \
+ mountpoint{ /var/tmp } \
+ options/nodev{ nodev } \
+ options/nosuid{ nosuid } \
+ options/noexec{ noexec } \
+ . \
+ 105 2 105 ext4 ext4 \
+ $lvmok{ } \
+ in_vg{ vg0 } \
+ lv_name{ var_log_audit } \
+ method{ format } format{ } \
+ use_filesystem{ } filesystem{ ext4 } \
+ mountpoint{ /var/log/audit } \
+ options/noexec{ noexec } \
+ . \
+ 2154 2 65536 ext4 \
+ $lvmok{ } \
+ method{ format } format{ } \
+ use_filesystem{ } filesystem{ ext4 } \
+ mountpoint{ / } \
+ in_vg{ vg0 } \
+ lv_name{ root } \
+ .
+
+d-i partman-auto/choose_recipe select vcp_lvm
+
+partman-basicfilesystems partman-basicfilesystems/no_swap boolean false
+
+# This makes partman automatically partition without confirmation, provided
+# that you told it what to do using one of the methods above.
+d-i partman-partitioning/confirm_write_new_label boolean true
+d-i partman/choose_partition select finish
+d-i partman/confirm boolean true
+d-i partman/confirm_nooverwrite boolean true
+
+d-i pkgsel/include string openssh-server
+d-i pkgsel/update-policy select none
+popularity-contest popularity-contest/participate boolean false
+
+d-i pkgsel/upgrade select safe-upgrade
+
+d-i time/zone string UTC
+d-i passwd/root-password password r00tme
+d-i passwd/root-password-again password r00tme
+d-i passwd/root-login boolean true
+d-i passwd/make-user boolean false
+d-i openssh-server/permit-root-login boolean true
+d-i user-setup/allow-password-weak boolean true
+d-i user-setup/encrypt-home boolean false
+tasksel tasksel/first multiselect minimal, ssh-server, openssh-server
+
+# in ubuntu18.04.2 netplan detect interface like enp0s3, but in reboot-ed system,
+# due init, its renames to ens3
+d-i preseed/late_command string \
+in-target sed -i 's/.*PermitRootLogin.*/PermitRootLogin yes/g' /etc/ssh/sshd_config; \
+in-target sed -i 's/enp0s3/ens3/g' /etc/netplan/01-netcfg.yaml;