aboutsummaryrefslogtreecommitdiff
path: root/release/Makefile.vm
Commit message (Collapse)AuthorAgeFilesLines
* release: Use make's `:H` rather than `/..`Ed Maste2026-05-131-1/+1
| | | | | | | | | | | | In general we want to strip subdir components, rather than appending `..`s. Reviewed by: lwhsu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54373 (cherry picked from commit 3949c2b8c4691a6dff8be7b38805d56faab91187) (cherry picked from commit 61f0453b3aa71e640a42085f67ce556ca3283c6c)
* release: Pass optional VM_IMAGE_CONFIG to vm-imagePat Maddox2026-04-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | `make vm-image` calls mk-vmimage.sh, which supports `-c CONFFILE`. This file gets sourced before building the image. One example of how to use it is to define vm_extra_filter_base_packages() to filter the list of packages installed into the VM image: # vm-nodbg32.conf vm_extra_filter_base_packages() { grep -v -E '(-dbg|lib32)' } $ make VM_IMAGE_CONFIG=path/to/vm-nodbg32.conf \ VMFORMATS=raw \ -DWITH_VMIMAGES \ vm-image Signed-off-by: Pat Maddox <pat@patmaddox.com> Reviewed by: cperciva (cherry picked from commit 93f482ab3e6b4577f13e85e216a50bdf3704dda3)
* release: Pass PKG_INSTALL_EPOCH (take 2)Colin Percival2025-04-261-0/+1
| | | | | | | | | | We need to pass this to cloudware builds, not just VM builds. MFC after: 4 days Fixes: 81ca663642ef ("release: Pass PKG_INSTALL_EPOCH to vmimage.subr") Sponsored by: Amazon (cherry picked from commit d14036ea424d5aa3eee20cc6f0b5d7117cc3931b)
* release: Pass PKG_INSTALL_EPOCH to vmimage.subrColin Percival2025-04-261-0/+1
| | | | | | | | | | | | | | | | This value, if not already set, comes from the timestamp of the most recent git commit (which is now also available in src/release code as GITEPOCH) or 0 if git is not installed. This should allow /var/db/pkg/local.sqlite to be reproducible in VM images which have packages installed (e.g. cloudware). Reviewed by: emaste, bapt MFC after: 5 days Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D49760 (cherry picked from commit 81ca663642ef1ed5111a88d2e9102f6788fab407)
* EC2: Add AMI Builder AMI buildingColin Percival2025-04-261-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Starting in 2015 I have published "AMI Builder AMIs" for FreeBSD/EC2: These boot into a memory disk, extract a "clean" copy of FreeBSD onto the root disk, mount it at /mnt, and allow the user to SSH in to make customizations before creating a new AMI from the "running" instance (in fact, from the FreeBSD installation which is not running but is mounted on /mnt). This provides a much cleaner mechanism for building customized FreeBSD AMIs than the traditional Linux approach of "launch an EC2 instance, SSH in and configure it, then try to wipe logs and credentials before creating an AMI"; and it's easier than building a customized AMI ab initio by modifying the FreeBSD release-building code. This commit brings that functionality into the FreeBSD src tree and into the collection of images built by the release engineering team: The EC2 "BUILDER" flavour AMI is essentially a "SMALL" flavour AMI with a compressed "BASE" flavour disk image, plus an init script which juggles disks around (rerooting into a memory disk and extracting the "BASE" image onto disk). Polished by: bz, emaste MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D49930 (cherry picked from commit 58426589030308cd632477d328b9536b1634c54d)
* release: add cloudware oracle targets to package and upload .oci filesDave Cottlehuber2025-04-081-0/+1
| | | | | | | | | | | | - requires base tar & flua, qemu-tools & curl from ports - set ORACLE_PAR_URL to upload to local file:/// dir or cloud buckets Reviewed by: emaste Approved by: cperciva Differential Revision: https://reviews.freebsd.org/D48382 Sponsored by: SkunkWerks, GmbH (cherry picked from commit 0ce9a414adc33af29607adbd81e0760e014fcd76)
* release: Standardize on *-${FS}.* VM image namingColin Percival2024-12-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We publish three sets of VM images on download.freebsd.org: * Generic VM images * BASIC-CLOUDINIT VM images * BASIC-CI VM images Of these, the first had names like FreeBSD-14.2-RELEASE-amd64-ufs.raw.xz, the second had names like FreeBSD-14.2-RELEASE-amd64-BASIC-CLOUDINIT.ufs.qcow2.xz, and the third had names like FreeBSD-14.2-RELEASE-amd64-BASIC-CI.ufs.raw.xz but were listed in the CHECKSUM files with names like FreeBSD-14.2-RELEASE-amd64-BASIC-CI-ufs.raw.xz Standardize these to consistently use a hyphen before the filesystem type rather than a period. Note: On FreeBSD 14 we ship images without the -${FS} component in their names; these are hardlinks to the -ufs images for compatibility purposes. On FreeBSD 13 we only have UFS images and don't include the filesystem in the name. MFC after: 1 week Reported by: jmg Sponsored by: Amazon (cherry picked from commit 35623ccc375846648f4dcdfc47c7e84fc9db4852)
* release: tweak Oracle Cloud settingsDave Cottlehuber2024-10-311-2/+2
| | | | | | | | | | | | - use raw image disk type and enable zfs, this yields smaller images for upload after using native qcow2 + zstd compression Reviewed by: lwhsu, emaste Differential Revision: https://reviews.freebsd.org/D47055 MFC after: 3 days Approved by: emaste (cherry picked from commit c611041660845e8ee8bf3009b32327d1f783a47b)
* release: move OCI to ORACLEDave Cottlehuber2024-10-311-4/+4
| | | | | | | | | | | | | | | This allows future releng tooling to use OCI for the industry standard Open Container Initiative tooling, reducing potential for confusion. Approved by: cperciva Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D46975 MFC after: 3 days Sponsored by: SkunkWerks, GmbH (cherry picked from commit 1be84d745bcc11b766ac1fa03afd2c8ea8771737)
* EC2: Add new "small" AMIsColin Percival2024-09-111-1/+2
| | | | | | | | | | | | | | | | | | | These are the same as the standard "base" images except: * They don't have kernel or world debug symbols, * They don't have FreeBSD tests, * They don't have 32-bit libraries, * They don't have LLDB, * They don't have the Amazon SSM Agent pre-installed, * They don't default to installing the awscli at first boot. This reduces the amount of disk space in use when the EC2 instance finishes booting from ~5 GB to ~1 GB. Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D46509 (cherry picked from commit 647299caa06e38622dc05a4358f9407b62a9bdda)
* release/Makefile.vm: Add cloudware overridesBrad Davis2024-09-111-9/+9
| | | | | | | | Allow the cloudware *_FLAVOURS and *_FSLIST values to be overridden at the command line, to assist users who want to e.g. build only one of the many EC2 AMIs available. (cherry picked from commit 863975b6840b2833b0f772648ba2532806ffece8)
* release: Publish non-uploaded cloudware bitsColin Percival2024-06-261-0/+42
| | | | | | | | | | | | | | | | | | | | | | | While most "cloudware" (AWS, Azure, GCP, Vagrant) images get uploaded to their respective clouds, we have two images -- BASIC-CI and BASIC-CLOUDINIT -- which are published via the FTP mirrors. We have been handling these using a manual and error-prone process of copying them from the internal build directories into the FTP staging tree, but they should be handled using the "make install ftp-stage" mechanism which is used for all the other published images. This commit 1. Adds a new 'make cloud-install' target which is run as part of 'make install' and installs BASIC-CI and BASIC-CLOUDINIT images, and 2. Extends 'make ftp-stage' in Makefile.mirrors to copy those bits into the FTP staging area. As a side benefit, this will also make BASIC-CI and BASIC-CLOUDINIT images available for arm64; until now they have only been available for amd64. MFC after: 1 week (cherry picked from commit 4771c2e9d1c7db949a82dfe4f2b9878bb358a50e)
* release: make dependencies, not recursive makeColin Percival2024-05-131-4/+6
| | | | | | | | | | | | | | | | | For historical reasons, the vm-release and cloudware-release targets were written as recursive makes of ${VMTARGETS} and ${CLOUDTARGETS}; this worked fine until we started running `make release -jN` and had both VM and cloud targets depending on ${QEMUTGT}, at which point things exploded when we tried to build the port twice at the same time. Switch vm-release and cloudware-release to have make dependencies on their individual components; this way a single make process runs and is aware of the duplicate dependency (and only runs it once). MFC after: 5 days (cherry picked from commit ce7756fdca1f0a89a74bc406cd3d3ac1d1be1ffb)
* release: Use qemu when cross-building vm imagesColin Percival2024-05-131-1/+2
| | | | | | | | | | | | | | For a bit over 5 years, we have used qemu when cross-building cloudware images; in particular, it's necessary when installing packages which might include post-install scripts. Use qemu in the vm-images target too; while "generic" vm images don't install packages, they still run newaliases and /etc/rc.d/ldconfig, both of which fail without appropriate emulation. MFC after: 1 week (cherry picked from commit 9287d1853c00267a0118401530debf9c0554ff28)
* Makefile.vm: Set CLEANDIRS correctly for vm-imageColin Percival2024-04-171-1/+2
| | | | | | | | | | With multiple filesystems and disk image formats, we now use different staging directories; we need to include them all in CLEANDIRS. Fixes: 97bd53ef4d20b "Makefile.vm: Fix duplicate rc.conf files" MFC after: 3 days (cherry picked from commit 7ffa1f14e3c19f0061ec9f38bb74c564a49ffc17)
* cloudware: allow disk format to be a listColin Percival2024-04-171-17/+29
| | | | | | | | | | | Make basic-cloudinit available both in qcow2 and raw formats MFC After: 3 days Co-Authored-By: bapt Sponsored by: OVHCloud (original patch from bapt) Differential Revision: https://reviews.freebsd.org/D44747 (cherry picked from commit 5c213bf01a5dca7c4030efd2ad9c9f84852e7b32)
* release/Makefile.vm: Support read-only ports treeColin Percival2024-04-171-1/+4
| | | | | | | | | | | | Build qemu (if needed) with WRKDIRPREFIX=/tmp/ports DISTDIR=/tmp/distfiles so that we can have a read-only /usr/ports and don't contaminate it. This became an issue when I enabled parallel release building, since one image might be creating its ports.txz file at the same time as we're building qemu as a prerequisite for building another image. MFC after: 5 days (cherry picked from commit 6f454c211b295ad13e80fc5b858efc9bad33e33b)
* release: add basic cloudinit imagesBaptiste Daroussin2024-04-111-0/+4
| | | | | | | | | | | | | | | | Provide both zfs and ufs images which a 1MB partition reserved for the config drive wearing a GPT Label "config-drive" to allow consumer to know where they should push the config drive on the provided image. This has been tested on OVHCloud baremetal via "bring your own image" Also tested on openstack Reviewed by: emaste Sponsored by: OVHCloud Differential Revision: https://reviews.freebsd.org/D44369 (cherry picked from commit 78b6117dac99c80fe618979fef4ef322b97415fa) (cherry picked from commit a977444652a59332c53b652b912c38a1d1802b58)
* release: Add AZURE to CLOUDWARELi-Wen Hsu2024-02-121-1/+2
| | | | | | | | | | | | Let Azure use the image directly built by the release engineering team. Reviewed by: emaste Approved by: cperciva (re) MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41906 (cherry picked from commit 63007e46110d7f7a1f9d48fbac99f8a5bc166456)
* release/Makefile.vm: Rework emulator-portinstallColin Percival2023-12-051-3/+5
| | | | | | | | | | | The emulator-portinstall target now unconditionally ensures that qemu is installed; but is only invoked if needed (aka. when cross building VM images). MFC After: 3 days MFC With: 97bd53ef4d20 ("Fix duplicate rc.conf files") (cherry picked from commit 7d0ee5ebd052d35e323f2d303e467c2cf305ca39)
* Makefile.vm: Fix duplicate rc.conf filesColin Percival2023-12-051-2/+4
| | | | | | | | | | | | | | | | | | | | Two bugs in Makefile.vm resulted in disk images being "built" multiple times, resulting in lines added to /etc/rc.conf being duplicated: 1. The vm-image target reused the same "staging tree" directory for all of its builds (multiple disk image types and multiple filesystem types). 2. The cw-type-flavour-fs target depends on emulator-portinstall, which did not have a 'touch ${.TARGET}' and thus re-ran every time -- and caused the cw-type-flavour-fs target to be re-run. This was triggered by release builds running `make cloudware-release` (creating the disk images) followed by `make ec2amis` (which re-created the disk images prior to uploading them). MFC After: 1 week Sponsored by: https://www.patreon.com/cperciva (cherry picked from commit 97bd53ef4d20b7d15e0b0976e885af9438f5637e)
* releng-gce: Add ZFS support to GCE image buliding and uploadingLi-Wen Hsu2023-10-151-1/+1
| | | | | | | | Approved by: delphij (re), gjb (re) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41527 (cherry picked from commit 1b10bdf0e2fa80a485980b783469687623d3f1c3)
* releng-azure: Add ZFS support to Azure image buliding and uploadingLi-Wen Hsu2023-10-151-1/+1
| | | | | | | | Approved by: gjb (re) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41454 (cherry picked from commit 78f901dcbd84ccad3849a8029f2320cf97079856)
* EC2: Add experimental cloud-init imagesColin Percival2023-10-031-2/+3
| | | | | | | | | | | | | | | | | | | | | Known issues: 1. The ec2-user user is created with a homedir of /usr/home/ec2-user instead of /home/ec2-user; this appears to be a bug in cloud-init's FreeBSD support. 2. Cloud-init configures IPv4 networking but not IPv6 networking. releng/14.0 candidate. Discussed with: gjb Reviewed by: imp MFC after: 5 days Relnotes: yes Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D41793 (cherry picked from commit 1f4ce7a39f0f4b0621ff55d228014ccddb366d37)
* EC2: Flavour existing AMIs as "base"Colin Percival2023-10-031-0/+1
| | | | | | | | | | | | | | | | Using the recently-added "cloudware flavours" mechanism, turn the existing EC2 AMIs into a new "base" flavour. The only user-visible change is that AMI names now include the word "base". releng/14.0 candidate. Discussed with: gjb Reviewed by: imp MFC after: 5 days Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D41791 (cherry picked from commit 7494fb6b7d809257d4eb9eff06ce226143f27add)
* release/Makefile.vm: Add support for CW flavoursColin Percival2023-10-031-7/+19
| | | | | | | | | | | | | | | | | | | | | There are two "Vagrant" images right now: "Vagrant Image for VirtualBox" and "Vagrant Image for VMWare". Rather than listing these separately in a CLOUDWARE list, place "VAGRANT" into a CLOUDWARE_TYPES list and then use a VAGRANT_FLAVOURS variable to identify the two versions. Add make logic to allow defaults (in this case, image format and filesystem) to be specified once for VAGRANT and inherited by both flavours. This will make future work to add flavoured EC2 images simpler. releng/14.0 candidate. Discussed with: gjb Reviewed by: imp MFC after: 5 days Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D41790 (cherry picked from commit e6eeac9b71795252b12a6b94e7a06633a9ff6e4e)
* release/Makefile.vm: Garbage collect unused bitsColin Percival2023-10-031-22/+1
| | | | | | | | | | | | | | | | | | | | | | | The cw*-package targets were introduced in February 2015 as part of adding support for building GCE images; but GCE support was reworked in June 2015 and the cw*-package targets were in fact never used. Remove them. The *_DISK variables were introduced in February 2015 as part of adding the cloudware-install target; this was removed in May 2016 as the cloudware images are published via the respective cloud systems and not published as disk images via the FreeBSD FTP site. As such, the *_DISK variables are not unused; remove them. releng/14.0 candidate. Discussed with: gjb Reviewed by: imp MFC after: 5 days Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D41789 (cherry picked from commit fcbeeb5ff456b2f21d19d4fc6221774b512e30b7)
* Remove $FreeBSD$: one-line sh patternWarner Losh2023-08-161-1/+0
| | | | Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
* EC2: Build and upload AMIs for both UFS and ZFSColin Percival2023-08-091-1/+1
| | | | | | | | | | The pre-existing "ec2ami" target builds and uploads a single AMI (with filesystem determined by ${VMFS}) as before; a new "ec2amis" target does both UFS and ZFS. Reviewed by: gjb Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D41343
* release: Build cloudware with multiple FS typesColin Percival2023-08-091-12/+31
| | | | | | | | | | | | | | | | New ${CW}_FSLIST settings control the list of filesystem types with which each cloudware image will be built; currently these are all set to "ufs", i.e. no change from previous. The cloudware images have their filesystem type as part of their file name; for backwards compatibilty the ${VMFS} image is linked to the previously used file name. This compatibility can be removed once all the cloudware uploading/publishing code has been updated to use the new image names (possibly more than one of them). Reviewed by: gjb Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D41341
* release: Build UFS and ZFS VM imagesColin Percival2023-08-091-8/+25
| | | | | | | | | | | | | | | | | A new option 'VMFSLIST' controls the list of filesystems for which VM images will be built; the default is to build both UFS and ZFS. The vm-install target installs these as ${OSRELEASE}-${FS}.${FORMAT}, e.g. FreeBSD-14.0-CURRENT-amd64-zfs.vmdk. For backwards compatibility, the ${VMFS} image is linked to the previously used ${OSRELEASE}.${FORMAT} name. Cloudware building will be updated in a later commit. Reviewed by: gjb Reviewed by: emaste, markj (previous version) Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D41340
* release: Add code to make FreeBSD/FirecrackerColin Percival2023-07-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | This just stages the kernel and builds a stripped-down rootfs for use with the Firecracker VMM. At some point in the future the release engineering team might start publishing these, but initially it's just here to simplify FreeBSD/Firecracker development and testing. Note that the rootfs generated: * Uses an IP address of 10.0.0.2 with a gateway of 10.0.0.1, * Has sshd enabled, * Has user "freebsd" with password "freebsd" and a root password of "root", and * Is 1 GB in size (but has growfs enabled). All of those are subject to change without notice; anyone intending to use FreeBSD/Firecracker in anything remotely resembling a production environment should talk to cperciva first. Reviewed by: gjb Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D40956
* release/oci: add Oracle Cloud image builderDave Cottlehuber2022-11-271-0/+4
| | | | | | | | | | | | | | | | | | | Provides an OCI (Oracle Cloud Infrastructure) release target for Oracle's KVM-based VM implementation. Tested using 13.1-RELEASE, primarily on Ampere CPU on A1.Flex VM shapes, but also works on amd64 shapes. - supports cloud-init and custom scripts - provides a freebsd@ sudo-enabled user - root user disabled over ssh & console Approved by: gjb Reviewed by: emaste MFS after: 1 week Sponsored by: The FreeBSD Foundation Sponsored by: SkunkWerks, GmbH Technical assistance from: Oracle Differential Revision: https://reviews.freebsd.org/D34746
* release: Add support for creating ZFS-based VM imagesMark Johnston2022-10-281-2/+3
| | | | | | | | | | | | | | | | | | The change extends vmimage.subr to handle a new parameter, VMFS, which should be equal to either "ufs" or "zfs". When it is set to ZFS, we use makefs to create a bootable pool populated using the same dataset layout as bsdinstall and "poudriere image" use. The pool can be grown using the growfs rc.d script, just as in UFS images. This will make it easy to provide VM and cloud images with ZFS as the root filesystem. So far I did not do extensive testing of cloud images; I merely verified that creation of ZFS-based AWS AMIs works and allows me to create amd64 and arm64 EC2 instances with ZFS as the root filesystem. Reviewed by: emaste, gjb Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D34426
* release: increase IMAGE_SIZE for arm, arm64, riscvGlen Barber2022-07-131-1/+1
| | | | | | Related to: PR 264032 MFC after: 5 minutes Sponsored by: Rubicon Communications, LLC ("Netgate")
* Update Azure release bitsLi-Wen Hsu2021-10-011-1/+1
| | | | | | | | | | | | | | | Imports the changes for building official images on Azure Marketplace, which fulfill the requirements of Azure and FreeBSD cloud images like disk layout and UEFI for Gen2 VM, along with some minor improvements like configurations to speed up booting. "CLOUDWARE" list will be updated after some more collaborations with re completed. Reviewed by: re (gjb) Sponsored by: The FreeBSD Foundation Technical assistance from: Microsoft Differential Revision: https://reviews.freebsd.org/D23804
* release: fix VMSIZE following 1ca8842f3ad9Glen Barber2021-03-041-2/+2
| | | | | | | | | | | | truncate(1) is not case-sensitive with regard to setting the size of a file. makefs(8), however, does not honor upper-case values. Update release-specific files and the release(7) manual page to reflect this. MFC with: 1ca8842f3ad9 Submitted by: ehem_freebsd_m5p.com (original) Differential Review: https://reviews.freebsd.org/D28979 Sponsored by: Rubicon Communications, LLC ("Netgate")
* Include Makefile.inc1 in Makefile.vm, missed in previous changeGlen Barber2021-03-021-0/+1
| | | | | | MFC after: 3 days MFC with: 80ab50e1de19, 0be274d37379 Sponsored by: Rubicon Communications, LLC ("Netgate")
* Adjust where UNAME_r is defined for ports buildsGlen Barber2021-03-021-1/+1
| | | | | | | | | In followup to 80ab50e1de19ca125f05a13937c796d48c4edd4a, export UNAME_r in Makefile.inc1 instead of Makefile.vm. MFC after: 3 days MFC with: 80ab50e1de19 Sponsored by: Rubicon Communications, LLC ("Netgate")
* pass UNAME_r to fix building 14.x ports on 13.xGlen Barber2021-02-181-1/+1
| | | | | MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate")
* release: Add an image for CIEmmanuel Vadot2020-11-021-1/+5
| | | | | | | | | | | | | | | | | | | | A lot of projects CI can't do FreeBSD tests currently. The main reason is that the project CI infrastructure is runned on Linux and that our images aren't modifiable from a Linux hosts. Add a basic image specific for this case (called BASIC-CI for a lack of a better name). The image have no package pre-installed. It only have a few modification to have dhcp client runned on the default interface and sshd started with option to be able to log on without a password as root. Sponsored by: The FreeBSD Foundation Reviewed by: re (gjb@) Differential Revision: https://reviews.freebsd.org/D25598 Notes: svn path=/head/; revision=367284
* Ensure the TYPE, BRANCH, and REVISION variables are set inGlen Barber2020-01-131-0/+6
| | | | | | | | | | | | cloudware targets when OSRELEASE is overridden. Submitted by: Trond Endrestol PR: 243287 MFC after: 3 days Sponsored by: Rubicon Communications, LLC (netgate.com) Notes: svn path=/head/; revision=356685
* Increase the default VMSIZE for raw, qcow2, vhd, and vmdk virtualGlen Barber2019-10-111-1/+1
| | | | | | | | | machine images due to 'filesystem full' failures. Sponsored by: Rubicon Communications, LLC (Netgate) Notes: svn path=/head/; revision=353440
* Reduce the default image size for virtual machine disk images fromGlen Barber2019-04-301-1/+1
| | | | | | | | | | | | | | | | | 30GB to 3GB. The raw images can be resized using truncate(1), and other formats can be resized with tools included with other tools included with other hypervisors. Enable the growfs(8) rc(8) at firstboot if the disk was resized prior to booting the virtual machine for the first time. Discussed with: several PR: 232313 (requested in other context) MFC after: 3 days Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=346959
* Add support for cross-building cloudware images.Colin Percival2019-04-031-1/+20
| | | | | | | | | | | | | | If MACHINE_ARCH doesn't match TARGET_ARCH, and we're not in the special case of building i386 images on an amd64 host, we need to pull in the qemu-user-static package; this allows us to run some commands inside the VM disk image chroot, most notably to install packages. Reviewed by: gjb MFC after: 2 weeks Sponsored by: FreeBSD/EC2 patreon (https://www.patreon.com/cperciva) Notes: svn path=/head/; revision=345858
* Bump the size of virtual machine disk images from 20G to 30G,Glen Barber2018-02-261-1/+1
| | | | | | | | | | | | | providing more space for a local buildworld to succeed without attaching separate disks for /usr/src and /usr/obj. Reported by: mckusick MFC after: 3 days Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=330033
* Ensure ${_CW} is uppercase when passing '-c' to mk-vmimage.sh,Glen Barber2017-06-061-1/+1
| | | | | | | | | | | otherwise with 'CLOUDWARE=vagrant-virtualbox', the path to the configuration file may be incorrect. MFC after: 3 days Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=319621
* Force a few variables to be upper case when they are evaulated.Brad Davis2017-01-311-2/+2
| | | | | | | | | This allows specifying, for example: CLOUDWARE=vagrant-vmware Approved by: re (gjb) Notes: svn path=/head/; revision=313021
* Pass SWAPSIZE in env(1) when invoking mk-vmimage.sh for theGlen Barber2016-11-171-1/+1
| | | | | | | | | vm-image target, missed in r308737. Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=308779
* Pass SWAPSIZE in env(1) when invoking mk-vmimage.sh, otherwiseGlen Barber2016-11-161-1/+1
| | | | | | | | | mkimg(1) does not create the second partition after r307008. Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=308737