freebsd-dev/release/tools/openstack.conf
Warner Losh 2e08f5b4ce multi-boot for openstack/qcow images
Make stock FreeBSD more useful for people wishing to use them. The
QEMU folks suggested this change. It adds a serial console which
allows them to interact with FreeBSD from the earliest moments. This
allows them to configure FreeBSD via the serial port to set it up for
CI use.

Reviewed by: kevans@
Sponsored by: Netflix, Inc
Differential Revision: https://reviews.freebsd.org/D22786
2020-01-27 22:40:03 +00:00

56 lines
1.9 KiB
Bash

#!/bin/sh
#
# $FreeBSD$
#
# Set to a list of packages to install.
export VM_EXTRA_PACKAGES="net/cloud-init devel/py-pbr devel/py-iso8601 \
net/py-eventlet net/py-netaddr comms/py-serial devel/py-six \
devel/py-babel net/py-oauth net/py-netifaces"
# Set to a list of third-party software to enable in rc.conf(5).
export VM_RC_LIST="cloudinit"
export NOSWAP=YES
vm_extra_pre_umount() {
#Enable sshd by default
echo 'sshd_enable="YES"' >> ${DESTDIR}/etc/rc.conf
# Disable DNS lookups by default to make SSH connect quickly
echo 'UseDNS no' >> ${DESTDIR}/etc/ssh/sshd_config
# Allow root to ssh using keys
echo 'PermitRootLogin without-password' >> ${DESTDIR}/etc/ssh/sshd_config
# Disable sendmail
echo 'sendmail_enable="NO"' >> ${DESTDIR}/etc/rc.conf
echo 'sendmail_submit_enable="NO"' >> ${DESTDIR}/etc/rc.conf
echo 'sendmail_outbound_enable="NO"' >> ${DESTDIR}/etc/rc.conf
echo 'sendmail_msp_queue_enable="NO"' >> ${DESTDIR}/etc/rc.conf
# Enable DHCP for the OpenStack instance
echo 'ifconfig_DEFAULT="SYNCDHCP"' >> ${DESTDIR}/etc/rc.conf
# Openstack wants sudo(8) usable by default without a password.
echo 'ALL ALL=(ALL) NOPASSWD:ALL' >> \
${DESTDIR}/usr/local/etc/sudoers.d/cloud-init
rm -f ${DESTDIR}/etc/resolv.conf
# The console is not interactive, so we might as well boot quickly.
echo 'autoboot_delay="-1"' >> ${DESTDIR}/boot/loader.conf
echo 'beastie_disable="YES"' >> ${DESTDIR}/boot/loader.conf
echo 'boot_multicons="YES"' >> ${DESTDIR}/boot/loader.conf
echo 'console="comconsole vidconsole"' >> ${DESTDIR}/boot/loader.conf
echo 'comconsole_speed="115200"' >> ${DESTDIR}/boot/loader.conf
# Reboot quickly, Don't wait at the panic screen
echo 'debug.trace_on_panic=1' >> ${DESTDIR}/etc/sysctl.conf
echo 'debug.debugger_on_panic=0' >> ${DESTDIR}/etc/sysctl.conf
echo 'kern.panic_reboot_wait_time=0' >> ${DESTDIR}/etc/sysctl.conf
touch ${DESTDIR}/firstboot
return 0
}