Commit Graph

3708 Commits

Author SHA1 Message Date
Michael Marineau
d443daa168 grub: the one bootloader to rule them all
This uses our new GRUB2 features to handle GPT priority partition
selection, terminal selection, OEM tweaks, etc. The old SYSLINUX and
PV-GRUB configs are now unused except for maintaining compatibility
with older installs. Of the old configs only the ones that
coreos-postinst copies are needed. The new setup supports using GRUB2
under Xen, giving us automatic fallback support on all of our platforms
for the very first time!

Since grub.cfg is copied into place instead of generated, build_image's
--boot_args option is no longer supported. It could be re-added later
with some sed goo but for now it is easy enough to just edit grub.cfg.
2014-12-05 16:51:11 -08:00
Michael Marineau
52872481f5 Merge pull request #358 from marineam/mtab
build_library: make sure /etc/mtab is correct before modifying images
2014-12-05 16:44:23 -08:00
Oliver Kurth
735e811a31 add vmware_ova to image formats 2014-12-04 16:19:23 -08:00
Michael Marineau
729f9da872 common: make sure /etc/mtab is correct before mounting anything
If mtab ever gets replaced by a regular file all sorts of things break.
2014-12-03 16:30:19 -08:00
Alex Crawford
bfd3747f60 Merge pull request #357 from crawford/azure
vm_image_util: use only ttyS0 for the console on Azure instances
2014-12-01 15:12:33 -08:00
Alex Crawford
4d6a8aaf08 vm_image_util: use only ttyS0 for the console on Azure instances 2014-12-01 14:54:57 -08:00
Alex Crawford
5efe824a70 Merge pull request #355 from crawford/ami
scripts/oem/ami: fix bad array subscript
2014-11-17 15:40:16 -08:00
Michael Marineau
4c7b01ecec Merge pull request #354 from marineam/verity
Compute verity hashes of /usr filesystem
2014-11-17 17:35:37 -06:00
Michael Marineau
204f0024fb Merge pull request #353 from marineam/gptprio
disk_util: Set priority and successful attributes in new images
2014-11-17 17:25:50 -06:00
Alex Crawford
febf7a064e scripts/oem/ami: fix bad array subscript
Broken in 8abceaa20e.
2014-11-17 11:57:46 -08:00
Michael Marineau
3587784bc4 disk_util: Add support for computing verity hashes 2014-11-15 18:58:10 -08:00
Michael Marineau
931610d5bb disk_util: Set priority and successful attributes in new images
Mark the initial copy of CoreOS as 'successful' and with a non-zero
priority. Required to boot with a stricter interpretation of the
partition selection scheme which ignores partitions that have a priority
of zero. The new grub implementation follows this rule and is what the
original ChromeOS spec used too.

For the sake of completeness if multiple partitions are configured in
the json file with this feature they will be prioritized in disk-order.
2014-11-15 16:01:25 -08:00
Michael Marineau
96d11eb03b Merge pull request #351 from marineam/secure
A pile of goo to support a minimal secure boot demo
2014-11-07 17:43:06 -08:00
Michael Marineau
be01d92415 Merge pull request #352 from mboersma/use-vagrant-virtio
virtualbox_ovf.sh: use virtio network interfaces
2014-11-07 16:54:13 -08:00
Matt Boersma
1d34b98dff virtualbox_ovf.sh: use virtio network interfaces 2014-11-07 16:16:03 -07:00
Michael Marineau
0c6adece3d A pile of goo to support a minimal secure boot demo 2014-11-07 13:53:46 -08:00
Alex Crawford
b92afcccb3 Merge pull request #350 from crawford/ami_json
scripts/oem/ami: output AMI list in JSON format
2014-11-06 20:51:40 -08:00
Alex Crawford
0b1dc3c712 scripts/oem/ami: output AMI list in JSON format 2014-11-06 20:45:18 -08:00
Michael Marineau
28d21bcb05 Merge pull request #348 from marineam/edk2
vm_image_util: add qemu_uefi image type for easier testing
2014-11-06 12:29:00 -08:00
Michael Marineau
810ba021b7 vm_image_util: add qemu_uefi image type for easier testing 2014-11-05 15:53:17 -08:00
Michael Marineau
95c45cbc1e Merge pull request #343 from vmware/vmx-devices
use devices vmxnet3 and pvscsi
2014-11-03 15:42:39 -08:00
Michael Marineau
d2da1b9081 Merge pull request #346 from marineam/qcow2
vm_image_util: generate qcow2 images compatible with QEMU < 1.1
2014-11-03 14:23:59 -08:00
Michael Marineau
d4f1e55718 Merge pull request #347 from marineam/align
Update disk/partition alignment, hopefully resolves issues with VHD images
2014-11-03 14:19:13 -08:00
Michael Marineau
7ba6381f38 disk_layout: align partitions and disk sizes to 2MB
The VHD format actually uses 2MB blocks internally so the 1MB alignment
used in e77e4e54 wasn't sufficent to prevent other tools from further
adjusting the image size to align it. Additionally a 1MB alignment may
be triggering a bug in OpenStack or XenServer disk resizing that renders
that partial block at the end of the old image size unmapped/unavailabe.
2014-11-03 13:19:58 -08:00
Michael Marineau
2f081e91c8 disk_util: ensure partitions are layed out on disk in order
So far the default iteration order of python dicts has mostly matched
the order that we want the partitions on disk but this is not always the
case. I caught the BIOS-BOOT partition being ordered on disk after the
USR-A partition. Nothing bad came of this but consistancy is good.
2014-11-03 13:07:29 -08:00
Michael Marineau
ea898ea3f6 vm_image_util: generate qcow2 images compatible with QEMU < 1.1 2014-11-03 11:12:09 -08:00
Alex Crawford
edae8bb5e0 Merge pull request #345 from crawford/ami
Clean up AKI lists and bump to 1.04
2014-10-31 20:39:05 -07:00
Alex Crawford
b35768ff8c scripts/oem/ami: bump PV-GRUB AKIs to 1.04 in all regions 2014-10-31 20:38:27 -07:00
Alex Crawford
8abceaa20e scripts/oem/ami: consolidate regions and AKI ids 2014-10-31 20:34:45 -07:00
Alex Crawford
cebf3c0b3c Merge pull request #344 from crawford/ami
ami: add eu-central-1 to list of AWS regions
2014-10-28 20:19:18 -07:00
Alex Crawford
acbc3a4b0b ami: add eu-central-1 to list of AWS regions 2014-10-28 14:44:57 -07:00
Oliver Kurth
67ad41fd22 use vmxnet3 device 2014-10-23 13:52:56 -07:00
Oliver Kurth
431a0b4ec0 use pvscsi device 2014-10-23 13:50:05 -07:00
Oliver Kurth
39eb776b8d add pcie configuration to vmware vmx file 2014-10-23 13:49:50 -07:00
Alex Crawford
1fd2062df9 Merge pull request #342 from crawford/sdk_fixes
Various SDK fixes
2014-10-22 15:28:22 -07:00
Alex Crawford
f0618ab541 build_library: use jq to parse JSON 2014-10-22 15:19:27 -07:00
Alex Crawford
a204e434c6 grub_install: use sudo when reprobing 2014-10-22 15:19:04 -07:00
Michael Marineau
d135ebfabd Merge pull request #341 from marineam/download
offline_signing: download from stable, it gets built/uploaded first.
2014-10-15 18:32:39 -07:00
Michael Marineau
dd9f4213e6 offline_signing: download from stable, it gets built/uploaded first. 2014-10-15 18:17:50 -07:00
Michael Marineau
a87ba9b0d9 Merge pull request #340 from marineam/ami
ami: wait for new volume to become available before attaching
2014-10-14 12:19:46 -07:00
Michael Marineau
51df57bb0b ami: wait for new volume to become available before attaching
Today EC2's volume creation is a bit less instant than usual.
2014-10-14 12:10:29 -07:00
Alex Crawford
a655e50510 Merge pull request #337 from crawford/azure
azure: finalize azure image
2014-10-13 16:05:09 -07:00
Alex Crawford
c226ac1c12 azure: finalize azure image
Increase the root partition to ~28 GiB.
2014-10-13 12:19:41 -07:00
Alex Crawford
44520881c7 build_image, image_to_vm: add disk-size assertions
Assert that the image is a multiple of 1 MiB
2014-10-08 21:09:54 -07:00
Michael Marineau
c4fb64a948 Merge pull request #339 from marineam/hackery
Misc hackery
2014-10-08 20:53:43 -07:00
Michael Marineau
0d3a849e2b disk_layout: adjust ROOT partition sizes to fill new alignment
The new disk size alignment left too much extra space at the end of the
disk which would lead to pointless resizing on first boot. Fill in the
extra space so that no more than 1MB is left unused.
2014-10-08 20:40:54 -07:00
Michael Marineau
e77e4e5499 disk_layout: Align disk sizes to both 1MB and cylinder boundaries.
The VHD disk format internally includes CHS addressing and qemu-img
respectfully aligns disk images to the common 16 heads 63 sectors
geometry when possible. This is unfortunate since images uploaded to
Azure must also be aligned to 1MB we normally do.

Since qemu-img doesn't have a way to handle this well right now adjust
our existing alignment logic to create disk images aligned to both.
2014-10-08 20:40:45 -07:00
Michael Marineau
e361e9170e vm_image_util: Enable new VMware OEM package. 2014-10-08 20:40:45 -07:00
Michael Marineau
bb1c2559fb grub_install: work around intermittent missing loopback partitions
I am unsure exactly what situation is causing the loopback partition
device node to not exist when it is being mounted but this should help
work around the situation and log loudly about it so we can hopefully
figure out where to dig further.
2014-10-08 12:24:01 -07:00
Michael Marineau
cf3e001a11 Merge pull request #338 from c4milo/vmware-vhardware-version-upgrade
Upgrades virtual hardware version to a more reasonable minimum default
2014-10-08 11:08:11 -07:00