Compare commits

...

2 Commits

Author SHA1 Message Date
Joshua Boniface 54b0cbd33c Fix incorrect echo statement 2021-12-13 02:51:28 -05:00
Joshua Boniface a3fd110b59 Add autoselected consoles to Grub config
Prevents having to pick a bunch, which can break if more than one serial
is present for example. Also automates this based on what the installer
has/detects as active.
2021-12-13 02:51:19 -05:00
3 changed files with 19 additions and 2 deletions

View File

@ -114,7 +114,7 @@ build_pxe() {
popd &>/dev/null popd &>/dev/null
echo "done." echo "done."
echo -n "Downloading iPXE binary undionly.kpxe (chainloads UEFI clients)... " echo -n "Downloading iPXE binary ipxe.efi (chainloads UEFI clients)... "
pushd ${outputdir} &>/dev/null pushd ${outputdir} &>/dev/null
wget -O ipxe.efi https://boot.ipxe.org/ipxe.efi &>/dev/null || fail "failed to download ipxe.efi." wget -O ipxe.efi https://boot.ipxe.org/ipxe.efi &>/dev/null || fail "failed to download ipxe.efi."
popd &>/dev/null popd &>/dev/null

View File

@ -58,6 +58,12 @@ target_keys_path="keys.txt"
# Deploy username (usually deploy) # Deploy username (usually deploy)
target_deploy_user="deploy" target_deploy_user="deploy"
# Consoles to use by the inital boot process; these are normally set automatically
# based on the TTYs found by the installer, and are later overridden by the Ansible
# playbooks based on the hardware configuration. It is best to leave this commented
# unless you know that you need it.
#target_consoles="console=tty1 console=ttyS1,115200"
# Installer checkin URI (provided by pvcbootstrapd) # Installer checkin URI (provided by pvcbootstrapd)
#pvcbootstrapd_checkin_uri="http://10.199.199.254:9999/checkin/installer" #pvcbootstrapd_checkin_uri="http://10.199.199.254:9999/checkin/installer"
pvcbootstrapd_checkin_uri="{pvcbootstrapd_checkin_uri}" pvcbootstrapd_checkin_uri="{pvcbootstrapd_checkin_uri}"

View File

@ -49,6 +49,17 @@ fi
printf "PID $$ on TTY ${this_tty}" > ${lockfile} printf "PID $$ on TTY ${this_tty}" > ${lockfile}
echo echo
# Set the target consoles in the installed image
target_consoles=""
for tty in $( echo -e "$( sed 's/ /\n/g' <<<"${active_ttys[@]}" )" | sort ); do
tty_type=${tty%%[0-9]*}
# Only use the first of each console type
if grep -q "${tty_type}" <<<"${target_consoles}"; then
continue
fi
target_consoles="${target_consoles} console=${tty}"
done
iso_name="XXDATEXX" iso_name="XXDATEXX"
target_deploy_user="XXDEPLOYUSERXX" target_deploy_user="XXDEPLOYUSERXX"
@ -851,7 +862,7 @@ cat <<EOF | tee ${target}/etc/default/grub >&2
GRUB_DEFAULT=0 GRUB_DEFAULT=0
GRUB_TIMEOUT=5 GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Parallel Virtual Cluster (PVC) - Debian" GRUB_DISTRIBUTOR="Parallel Virtual Cluster (PVC) - Debian"
GRUB_CMDLINE_LINUX="console=hvc0 console=tty0 console=tty1 console=ttyS0,115200 console=ttyS1,115200" GRUB_CMDLINE_LINUX="${target_consoles}"
GRUB_TERMINAL_INPUT="console serial" GRUB_TERMINAL_INPUT="console serial"
GRUB_TERMINAL_OUTPUT="gfxterm serial" GRUB_TERMINAL_OUTPUT="gfxterm serial"
GRUB_SERIAL_COMMAND="serial --unit=0 --unit=1 --speed=115200" GRUB_SERIAL_COMMAND="serial --unit=0 --unit=1 --speed=115200"