diff options
Diffstat (limited to 'roles/installer')
11 files changed, 38 insertions, 24 deletions
diff --git a/roles/installer/debian/preseed/templates/preseed_debian-bookworm.cfg.j2 b/roles/installer/debian/preseed/templates/preseed_debian-bookworm.cfg.j2 index 3e86b048..c27ea93f 100644 --- a/roles/installer/debian/preseed/templates/preseed_debian-bookworm.cfg.j2 +++ b/roles/installer/debian/preseed/templates/preseed_debian-bookworm.cfg.j2 @@ -23,8 +23,8 @@ d-i netcfg/disable_dhcp boolean true d-i netcfg/disable_autoconfig boolean true d-i netcfg/get_ipaddress string {{ network.primary.address | ansible.utils.ipaddr('address') }} d-i netcfg/get_netmask string {{ network.primary.address | ansible.utils.ipaddr('netmask') }} -d-i netcfg/get_gateway string {{ network.primary.gateway }} -d-i netcfg/get_nameservers string {{ network.nameservers | join(' ') }} +d-i netcfg/get_gateway string {{ network.primary.gateway | default('') }} +d-i netcfg/get_nameservers string {{ network.nameservers | default([]) | join(' ') }} d-i netcfg/confirm_static boolean true {% endif %} diff --git a/roles/installer/debian/preseed/templates/preseed_debian-bullseye.cfg.j2 b/roles/installer/debian/preseed/templates/preseed_debian-bullseye.cfg.j2 index 0649b18f..27986272 100644 --- a/roles/installer/debian/preseed/templates/preseed_debian-bullseye.cfg.j2 +++ b/roles/installer/debian/preseed/templates/preseed_debian-bullseye.cfg.j2 @@ -23,8 +23,8 @@ d-i netcfg/disable_dhcp boolean true d-i netcfg/disable_autoconfig boolean true d-i netcfg/get_ipaddress string {{ network.primary.address | ansible.utils.ipaddr('address') }} d-i netcfg/get_netmask string {{ network.primary.address | ansible.utils.ipaddr('netmask') }} -d-i netcfg/get_gateway string {{ network.primary.gateway }} -d-i netcfg/get_nameservers string {{ network.nameservers | join(' ') }} +d-i netcfg/get_gateway string {{ network.primary.gateway | default('') }} +d-i netcfg/get_nameservers string {{ network.nameservers | default([]) | join(' ') }} d-i netcfg/confirm_static boolean true {% endif %} diff --git a/roles/installer/debian/preseed/templates/preseed_debian-buster.cfg.j2 b/roles/installer/debian/preseed/templates/preseed_debian-buster.cfg.j2 index 209cd1b7..b6257e0c 100644 --- a/roles/installer/debian/preseed/templates/preseed_debian-buster.cfg.j2 +++ b/roles/installer/debian/preseed/templates/preseed_debian-buster.cfg.j2 @@ -23,8 +23,8 @@ d-i netcfg/disable_dhcp boolean true d-i netcfg/disable_autoconfig boolean true d-i netcfg/get_ipaddress string {{ network.primary.address | ansible.utils.ipaddr('address') }} d-i netcfg/get_netmask string {{ network.primary.address | ansible.utils.ipaddr('netmask') }} -d-i netcfg/get_gateway string {{ network.primary.gateway }} -d-i netcfg/get_nameservers string {{ network.nameservers | join(' ') }} +d-i netcfg/get_gateway string {{ network.primary.gateway | default('') }} +d-i netcfg/get_nameservers string {{ network.nameservers | default([]) | join(' ') }} d-i netcfg/confirm_static boolean true {% endif %} diff --git a/roles/installer/debian/preseed/templates/preseed_debian-jessie.cfg.j2 b/roles/installer/debian/preseed/templates/preseed_debian-jessie.cfg.j2 index 87a90060..f629df6d 100644 --- a/roles/installer/debian/preseed/templates/preseed_debian-jessie.cfg.j2 +++ b/roles/installer/debian/preseed/templates/preseed_debian-jessie.cfg.j2 @@ -23,8 +23,8 @@ d-i netcfg/disable_dhcp boolean true d-i netcfg/disable_autoconfig boolean true d-i netcfg/get_ipaddress string {{ network.primary.address | ansible.utils.ipaddr('address') }} d-i netcfg/get_netmask string {{ network.primary.address | ansible.utils.ipaddr('netmask') }} -d-i netcfg/get_gateway string {{ network.primary.gateway }} -d-i netcfg/get_nameservers string {{ network.nameservers | join(' ') }} +d-i netcfg/get_gateway string {{ network.primary.gateway | default('') }} +d-i netcfg/get_nameservers string {{ network.nameservers | default([]) | join(' ') }} d-i netcfg/confirm_static boolean true {% endif %} @@ -61,8 +61,8 @@ d-i base-installer/kernel/image string {{ debian_preseed_kernel_image }} {% endif %} d-i base-installer/install-recommends boolean false -d-i apt-setup/security_host string -#d-i apt-setup/security_host string +d-i apt-setup/security_host string {{ apt_repo_providers[apt_repo_provider].debian_security.host }} +d-i apt-setup/security_path string {{ apt_repo_providers[apt_repo_provider].debian_security.path }} tasksel tasksel/first multiselect {{ debian_preseed_install_tasks | join(', ') }} d-i pkgsel/include string openssh-server {{ python_basename }} {{ python_basename }}-apt diff --git a/roles/installer/debian/preseed/templates/preseed_debian-stretch.cfg.j2 b/roles/installer/debian/preseed/templates/preseed_debian-stretch.cfg.j2 index 3c682d81..95cd44a0 100644 --- a/roles/installer/debian/preseed/templates/preseed_debian-stretch.cfg.j2 +++ b/roles/installer/debian/preseed/templates/preseed_debian-stretch.cfg.j2 @@ -23,8 +23,8 @@ d-i netcfg/disable_dhcp boolean true d-i netcfg/disable_autoconfig boolean true d-i netcfg/get_ipaddress string {{ network.primary.address | ansible.utils.ipaddr('address') }} d-i netcfg/get_netmask string {{ network.primary.address | ansible.utils.ipaddr('netmask') }} -d-i netcfg/get_gateway string {{ network.primary.gateway }} -d-i netcfg/get_nameservers string {{ network.nameservers | join(' ') }} +d-i netcfg/get_gateway string {{ network.primary.gateway | default('') }} +d-i netcfg/get_nameservers string {{ network.nameservers | default([]) | join(' ') }} d-i netcfg/confirm_static boolean true {% endif %} diff --git a/roles/installer/debian/preseed/templates/preseed_kali-kali-rolling.cfg.j2 b/roles/installer/debian/preseed/templates/preseed_kali-kali-rolling.cfg.j2 index 7e2fe535..261704f8 100644 --- a/roles/installer/debian/preseed/templates/preseed_kali-kali-rolling.cfg.j2 +++ b/roles/installer/debian/preseed/templates/preseed_kali-kali-rolling.cfg.j2 @@ -20,8 +20,8 @@ d-i netcfg/disable_dhcp boolean true d-i netcfg/disable_autoconfig boolean true d-i netcfg/get_ipaddress string {{ network.primary.address | ansible.utils.ipaddr('address') }} d-i netcfg/get_netmask string {{ network.primary.address | ansible.utils.ipaddr('netmask') }} -d-i netcfg/get_gateway string {{ network.primary.gateway }} -d-i netcfg/get_nameservers string {{ network.nameservers | join(' ') }} +d-i netcfg/get_gateway string {{ network.primary.gateway | default('') }} +d-i netcfg/get_nameservers string {{ network.nameservers | default([]) | join(' ') }} d-i netcfg/confirm_static boolean true {% endif %} diff --git a/roles/installer/debian/preseed/templates/preseed_ubuntu-bionic.cfg.j2 b/roles/installer/debian/preseed/templates/preseed_ubuntu-bionic.cfg.j2 index 1446ab2c..69d87df6 100644 --- a/roles/installer/debian/preseed/templates/preseed_ubuntu-bionic.cfg.j2 +++ b/roles/installer/debian/preseed/templates/preseed_ubuntu-bionic.cfg.j2 @@ -27,8 +27,8 @@ d-i netcfg/disable_dhcp boolean true d-i netcfg/disable_autoconfig boolean true d-i netcfg/get_ipaddress string {{ network.primary.address | ansible.utils.ipaddr('address') }} d-i netcfg/get_netmask string {{ network.primary.address | ansible.utils.ipaddr('netmask') }} -d-i netcfg/get_gateway string {{ network.primary.gateway }} -d-i netcfg/get_nameservers string {{ network.nameservers | join(' ') }} +d-i netcfg/get_gateway string {{ network.primary.gateway | default('') }} +d-i netcfg/get_nameservers string {{ network.nameservers | default([]) | join(' ') }} d-i netcfg/confirm_static boolean true {% endif %} diff --git a/roles/installer/debian/preseed/templates/preseed_ubuntu-focal.cfg.j2 b/roles/installer/debian/preseed/templates/preseed_ubuntu-focal.cfg.j2 index c2689623..f44ea32e 100644 --- a/roles/installer/debian/preseed/templates/preseed_ubuntu-focal.cfg.j2 +++ b/roles/installer/debian/preseed/templates/preseed_ubuntu-focal.cfg.j2 @@ -27,8 +27,8 @@ d-i netcfg/disable_dhcp boolean true d-i netcfg/disable_autoconfig boolean true d-i netcfg/get_ipaddress string {{ network.primary.address | ansible.utils.ipaddr('address') }} d-i netcfg/get_netmask string {{ network.primary.address | ansible.utils.ipaddr('netmask') }} -d-i netcfg/get_gateway string {{ network.primary.gateway }} -d-i netcfg/get_nameservers string {{ network.nameservers | join(' ') }} +d-i netcfg/get_gateway string {{ network.primary.gateway | default('') }} +d-i netcfg/get_nameservers string {{ network.nameservers | default([]) | join(' ') }} d-i netcfg/confirm_static boolean true {% endif %} diff --git a/roles/installer/debian/preseed/templates/preseed_ubuntu-xenial.cfg.j2 b/roles/installer/debian/preseed/templates/preseed_ubuntu-xenial.cfg.j2 index b8fd1110..e6580d0b 100644 --- a/roles/installer/debian/preseed/templates/preseed_ubuntu-xenial.cfg.j2 +++ b/roles/installer/debian/preseed/templates/preseed_ubuntu-xenial.cfg.j2 @@ -24,8 +24,8 @@ d-i netcfg/disable_dhcp boolean true d-i netcfg/disable_autoconfig boolean true d-i netcfg/get_ipaddress string {{ network.primary.address | ansible.utils.ipaddr('address') }} d-i netcfg/get_netmask string {{ network.primary.address | ansible.utils.ipaddr('netmask') }} -d-i netcfg/get_gateway string {{ network.primary.gateway }} -d-i netcfg/get_nameservers string {{ network.nameservers | join(' ') }} +d-i netcfg/get_gateway string {{ network.primary.gateway | default('') }} +d-i netcfg/get_nameservers string {{ network.nameservers | default([]) | join(' ') }} d-i netcfg/confirm_static boolean true {% endif %} diff --git a/roles/installer/raspios/image/templates/firstrun.sh.j2 b/roles/installer/raspios/image/templates/firstrun.sh.j2 index 96c74b39..ef90cf8b 100644 --- a/roles/installer/raspios/image/templates/firstrun.sh.j2 +++ b/roles/installer/raspios/image/templates/firstrun.sh.j2 @@ -76,8 +76,10 @@ EOF {% if not (install_dhcp | default(false)) %} cat <<EOF > /etc/resolv.conf # Generated by ansible +{% if 'domain' in network %} search {{ network.domain }} -{% for nameserver in network.nameservers %} +{% endif %} +{% for nameserver in (network.nameservers | default([])) %} nameserver {{ nameserver }} {% endfor %} EOF @@ -108,6 +110,13 @@ rm "$FW_LOC/firstrun.sh" rm -f /etc/sudoers.d/010_pi-nopasswd rm -f /etc/apt/sources.list.d/vscode.list rm -f /etc/apt/trusted.gpg.d/microsoft.gpg +rm -f /etc/apt/sources.list.d/raspi.list +cat <<EOF > /etc/apt/sources.list +deb http://{{ apt_repo_providers[apt_repo_provider].debian.host }}{{ apt_repo_providers[apt_repo_provider].debian.path }} {{ install_codename }} main non-free-firmware +deb http://{{ apt_repo_providers[apt_repo_provider].debian.host }}{{ apt_repo_providers[apt_repo_provider].debian.path }} {{ install_codename }}-updates main non-free-firmware +deb http://{{ apt_repo_providers[apt_repo_provider].debian_security.host }}{{ apt_repo_providers[apt_repo_provider].debian_security.path }} {{ install_codename }}-security main non-free-firmware +deb http://{{ apt_repo_providers[apt_repo_provider].raspios.host }}{{ apt_repo_providers[apt_repo_provider].raspios.path }} {{ install_codename }} main +EOF apt-get update -q apt-get dist-upgrade -y -q diff --git a/roles/installer/ubuntu/autoinstall/templates/autoinstall.yml.j2 b/roles/installer/ubuntu/autoinstall/templates/autoinstall.yml.j2 index 9911f654..1de70b70 100644 --- a/roles/installer/ubuntu/autoinstall/templates/autoinstall.yml.j2 +++ b/roles/installer/ubuntu/autoinstall/templates/autoinstall.yml.j2 @@ -19,10 +19,14 @@ autoinstall: {% else %} addresses: - {{ network.primary.address }} - gateway4: {{ network.primary.gateway }} +{% if 'gateway' in network.primary %} + routes: + - to: default + via: {{ network.primary.gateway }} +{% endif %} {% if (network.nameservers | default([]) | length) > 0 %} nameservers: - search: [ {{ host_domain }} ] + search: [ {{ network.domain }} ] addresses: [ {{ network.nameservers | join(', ') }} ] {% endif %} {% endif %} @@ -219,6 +223,7 @@ autoinstall: write_files: - content: | #!/bin/bash + set -e for i in $(seq 10 -1 1); do echo "waiting $i seconds for cloud-init to finish."; sleep 1; done echo "******************************************************************************" echo "***** getting rid of cloud-init and other crap we neither want nor need! *****" @@ -267,7 +272,7 @@ autoinstall: - curtin in-target --target=/target -- apt-get -y -q purge systemd-oomd {% endif %} {% if (install_codename | ubuntu_release_compare('>=', 'noble')) %} - - curtin in-target --target=/target -- apt-get -y -q purge ubuntu-kernel-accessories + - curtin in-target --target=/target -- apt-get -y -q purge ubuntu-kernel-accessories ubuntu-pro-client lxd-installer {% endif %} {% if ubuntu_autoinstall_desktop is undefined %} - curtin in-target --target=/target -- apt-mark manual iputils-ping isc-dhcp-client netcat-openbsd netplan.io sudo |