]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - release/tools/azure.conf
zfs: merge openzfs/zfs@d62bafee9
[FreeBSD/FreeBSD.git] / release / tools / azure.conf
1 #!/bin/sh
2 #
3 # $FreeBSD$
4 #
5
6 # Convention of Linux type VM on Azure is 30G
7 export VMSIZE=30g
8
9 # Set to a list of packages to install.
10 export VM_EXTRA_PACKAGES="azure-agent python python3 firstboot-freebsd-update firstboot-pkgs"
11
12 # Set to a list of third-party software to enable in rc.conf(5).
13 export VM_RC_LIST="ntpd sshd waagent firstboot_freebsd_update firstboot_pkgs"
14
15 # No swap space; waagent will allocate swap space on the resource disk.
16 # See ResourceDisk.EnableSwap and ResourceDisk.SwapSizeMB in waagent.conf
17 export NOSWAP=YES
18
19 # https://docs.microsoft.com/en-us/azure/marketplace/azure-vm-create-certification-faq#vm-images-must-have-1mb-free-space
20 export VM_BOOTPARTSOFFSET=1M
21
22 vm_extra_pre_umount() {
23         # The firstboot_pkgs rc.d script will download the repository
24         # catalogue and install or update pkg when the instance first
25         # launches, so these files would just be replaced anyway; removing
26         # them from the image allows it to boot faster.
27         mount -t devfs devfs ${DESTDIR}/dev
28         chroot ${DESTDIR} ${EMULATOR} env ASSUME_ALWAYS_YES=yes \
29                 /usr/sbin/pkg delete -f -y pkg
30         umount ${DESTDIR}/dev
31         rm ${DESTDIR}/var/db/pkg/repo-*.sqlite
32
33         yes | chroot ${DESTDIR} ${EMULATOR} /usr/local/sbin/waagent -deprovision
34
35         cat << EOF >> ${DESTDIR}/etc/rc.conf
36 ifconfig_hn0="SYNCDHCP"
37 ntpd_sync_on_start="YES"
38 EOF
39
40         cat << EOF >> ${DESTDIR}/boot/loader.conf
41 autoboot_delay="-1"
42 beastie_disable="YES"
43 loader_logo="none"
44 hw.memtest.tests="0"
45 console="comconsole efi vidconsole"
46 comconsole_speed="115200"
47 boot_multicons="YES"
48 boot_serial="YES"
49 mlx4en_load="YES"
50 mlx5en_load="YES"
51 EOF
52
53         touch ${DESTDIR}/firstboot
54
55         rm -f ${DESTDIR}/etc/resolv.conf
56
57         return 0
58 }