Commit Graph

2650 Commits

Author SHA1 Message Date
Michael Marineau
fcb2a614b6 fix(set_lsb_release): swap BUILD_ID and VERSION_ID
This is what happens when you run off without finishing testing.
2013-07-25 23:18:13 -04:00
polvi
a5366ee685 Merge pull request #57 from marineam/lsb_release
fix(set_lsb_release): Add option for production updates, misc updates.
2013-07-25 15:31:53 -07:00
Michael Marineau
cc0873bbd8 fix(set_lsb_release): Add option for production updates, misc updates.
Add --production_track argument to set_lsb_release and
cros_make_image_bootable to support using the production update service
on developer builds of the 'prod' image. This replaces the previous hack
of setting COREOS_OFFICIAL=1 in the middle of the build.

Since lsb-release doesn't exist prior to the first call to
set_lsb_release switch to sudo_clobber instead of append. That way if it
is called a second time later the contents aren't duplicated.

Write the info to gentoo-release and os-release as well so everything
gets the same information.
2013-07-25 18:14:51 -04:00
polvi
36afd6f4e9 Merge pull request #56 from polvi/oem-ami
feat(oem-ami): add oem support for amazon ec2
2013-07-25 12:15:11 -07:00
Michael Marineau
b2b23fdaf4 Merge pull request #55 from marineam/vm
feat(image_to_vm): Refactor to make adding/changing vm formats easier.
2013-07-25 11:05:42 -07:00
Michael Marineau
9379ee19f0 fix(vm_image_util): Remove space before # comment in qemu config.
Last minute bug slipped in because of a line I commented out since the
current coreos kernel doesn't support virtio block devices (that change
coming soon). Qemu doesn't tolerate any spaces before # in comments.
2013-07-25 13:54:50 -04:00
Brandon Philips
7941c739f4 Merge pull request #54 from philips/use-lsb-coreos
chore(*): use COREOS lsb-release variables
2013-07-25 10:23:24 -07:00
Michael Marineau
df886c91e7 fix(vm_image_util): Remove tab characters. 2013-07-25 13:16:04 -04:00
Alex Polvi
5982943b4e add scripts 2013-07-25 07:50:45 -07:00
Alex Polvi
d5befd8097 add ebs script 2013-07-24 21:32:29 -07:00
Michael Marineau
033cf224f1 feat(image_to_vm): Refactor to make adding/changing vm formats easier.
The old script was heading towards spaghetti code realm. This breaks up
all the image variations such as hybrid MBR, OEM packages, etc into
configuration options and small functions that actually do the work.

All this is in the new vm_image_util.sh library but the command line
parsing and overall procedure remains in image_to_vm.sh

As part of this we gain support for putting some qemu options in a
config file as well as Xen virtual machines using pygrub and pvgrub.

Lots of generally unused options have been removed to simplify things
and keep output file names consistent.
2013-07-24 23:11:50 -04:00
Brandon Philips
b9568f9dce chore(*): use COREOS lsb-release variables
use the COREOS_ variables in /etc/lsb-release
2013-07-24 15:43:26 -07:00
Greg Kroah-Hartman
ad32826cbd Merge pull request #51 from polvi/oem-rackspace
add rackspace
2013-07-23 10:16:14 -07:00
Michael Marineau
31bab93688 Merge pull request #53 from marineam/fixns
fix(enter_chroot): Limit sharing system mount sharing
2013-07-23 10:11:30 -07:00
Michael Marineau
efa18698a0 fix(enter_chroot): Limit sharing system mount sharing
The existing code seems to assume that the mounts inherited from the
system are private, the Linux default. However on our systems that
clearly isn't the case, all system mounts are set as shared. Considering
all of us have been have been seeing mounts leak out of the SDK despite
cros_sdk creating a new filesystem namespace via unshare I'm guessing
this is a systemd thing.

Instead force all system mounts to 'slave' mode in the SDK namespace so
global changes are still visible but no SDK mounts can leak out.
2013-07-23 01:26:35 -04:00
Michael Marineau
a3da99ab4c Merge pull request #50 from marineam/baselayout
Baselayout
2013-07-22 19:14:42 -07:00
Michael Marineau
2ae0c30f4e fix(install_toolchain): Prevent tar from replacing lib symlinks
The cross toolchain doesn't have lib symlinks but this works because it
also doesn't install things to lib. However when this script manually
extracts the toolchain packages to BOARD_ROOT tar includes those empty
directories, replacing the symlinks that were previously there.

Longer term this really needs to go away, whatever build time is saved
by re-using the cross toolchain packages in BOARD_ROOT is not worth this
insane level of complexity it causes...
2013-07-22 21:42:57 -04:00
Michael Marineau
ac931bd088 fix(setup_board): Install baselayout with USE=build
We need to install baselayout with the build use flag as the very first
package in the new board sysroot to ensure the system's directory
structure is created correctly. This should resolve surprise failures
with the bootengine ebuild.
2013-07-22 21:42:57 -04:00
Michael Marineau
be63f41081 fix(make.conf.user): Fix references to old make.conf.user path.
We've moved all of the chroot configs from /etc to /etc/portage but
setup_board was still symlinking to /etc. Fix the path so no one gets
mixed up by the two copies of the same file. Remove unused script that
also used to write to old location.
2013-07-22 21:42:57 -04:00
Brandon Philips
abc38e033b Merge pull request #52 from philips/add-hvc0-to-grub
Add hvc0 to grub
2013-07-22 18:22:02 -07:00
Brandon Philips
69803d5ad6 feat(create_legacy_bootloader): add hvc0 on Xen
add console=hvc0 for systems that use pygrub/pvgrub by adding it to the
menu.lst files.
2013-07-22 17:37:51 -07:00
Brandon Philips
a923365449 chore(build_library/create_legacy_bootloader): remove old stuff
We don't need all of these args. Remove them.
2013-07-22 17:36:17 -07:00
Brandon Philips
e8be1de9ff Merge pull request #49 from philips/cleanup-chromiumos-constants
Cleanup chromiumos constants
2013-07-22 15:09:22 -07:00
Alex Polvi
017ec772a8 add rackspace 2013-07-22 14:55:44 -07:00
Brandon Philips
95b2a4b8cd chore(*): use coreos_ everywhere 2013-07-21 23:20:50 -07:00
Brandon Philips
80b72e9318 chore(*): remove obsolete stuff
- mod_for_factory says it is obsolete
- coreos doesn't sign ssds
- download_latest is just wrong for us
2013-07-21 22:56:58 -07:00
Brandon Philips
5f6d02b7db Merge pull request #48 from philips/reintroduce-unique-a-b-menu.lst
feat(build_library): reintroduce A/B menu.lst
2013-07-21 22:50:56 -07:00
Brandon Philips
836ffc9327 feat(build_library): reintroduce A/B menu.lst
reintroduce unique A/B menu.lsts to work around the kexec problems that
we have. Essentially instead of always using boot_kernel on pvgrub
systems use the A/B kernels installed at update time to the boot
partition.
2013-07-21 22:30:46 -07:00
Brandon Philips
d25d24d582 Merge pull request #47 from philips/make-lsb-release-official-on-prod
feat(build_image): official lsb-release on prod images
2013-07-21 22:13:52 -07:00
Brandon Philips
4c637bbe8c feat(build_image): official lsb-release on prod images
The /etc/lsb-release should have official values on the prod image. That
way someone can ping the official api.core-os.net with this image.
2013-07-21 22:10:02 -07:00
Brandon Philips
88e4176865 Merge pull request #46 from philips/fix-au-key
fix(cros_make_image_bootable): need to mkdir first
2013-07-21 21:24:20 -07:00
Brandon Philips
a924223b75 fix(cros_make_image_bootable): need to mkdir first
The au directory doesn't exist. Make the directory first.
2013-07-21 21:11:10 -07:00
Greg Kroah-Hartman
138e8eb715 Merge pull request #45 from philips/switchup-bootkernel
Switchup bootkernel
2013-07-21 16:22:21 -07:00
Brandon Philips
33e9017478 fix(cros_make_image_bootable): no more bootkernel
the bootkernel is going away and we will just have a single kernel for
all of the things. This is because of the kxec on xen problem.
2013-07-20 16:25:01 -07:00
Brandon Philips
f73cbac8db feat(build_image): install the au-key
Install the developer au key on production images. This will need to
change when we have the production key.
2013-07-20 16:24:13 -07:00
Brandon Philips
a80d755473 Merge pull request #44 from marineam/fix-umount
Fix umount
2013-07-18 23:47:07 -07:00
Michael Marineau
99089076af fix(build_image): Don't unmount when the rootfs isn't mounted
This function is never called when rootfs is mounted but leaving in a
check for it as a just in case sort of thing.
2013-07-19 02:41:52 -04:00
Michael Marineau
e99f088f19 fix(common): Simplify unmount code, die loud and die hard.
As-is safe_umount is extremely dangerous. When passed multiple mount
points and any one of them fail with a "not mounted" or "doesn't exist"
error then any others that fail with a more serious error will be
silently ignored. This can cause untold sadness when running deleting a
chroot with cros_sdk if /mnt/host/source is left mounted, all your code
will be gone. To avoid this situation remove *ALL* this extra logic and
die very loudly when umount fails. Due to the way bind mounts interact
with this code "not mounted" so when unmounting a full tree we need to
still need to gracefully retry when the first umount fails.
2013-07-18 16:59:29 -07:00
Michael Marineau
67cea27070 fix(common): Fix okboat and failboat because boat. 2013-07-18 15:52:47 -07:00
Michael Marineau
b9257ee2a8 fix(common): Read mounts from /proc/self/mounts
Just in case the filesystem view is slightly different.
2013-07-18 15:27:02 -07:00
Brandon Philips
ee3fc09057 Merge pull request #42 from marineam/locale
hack(build_image): Make check for /usr/share/locale a warning.
2013-07-18 10:50:03 -07:00
Michael Marineau
7564371200 hack(build_image): Make check for /usr/share/locale a warning.
Switching the toolchain to upstream Gentoo brought this directory back
and based on the Chromium OS history keeping this directory out of the
builds is a bit tedious. Keeping image sizes down isn't *that* important
right now so just let it be.
2013-07-18 10:38:16 -07:00
Brandon Philips
491fc77fef Merge pull request #41 from marineam/pathfix
fix(bootstrap_sdk): Fix upload path.
2013-07-17 21:47:40 -07:00
Michael Marineau
f0c2cb1ccd fix(bootstrap_sdk): Fix upload path.
Previous commit added an extra /coreos directory to the path.
2013-07-18 00:44:57 -04:00
Brandon Philips
bda24887e3 Merge pull request #39 from philips/use-boot-kernel
Use boot kernel
2013-07-17 19:19:29 -07:00
Michael Marineau
cc056d0527 Merge pull request #40 from marineam/load
fix(scripts): Add --load-average to MAKEOPTS
2013-07-17 18:56:17 -07:00
Michael Marineau
09203453dd fix(scripts): Add --load-average to MAKEOPTS
Already did this for catalyst builds but might as well do it for all.
With this competing builds on the same host should be a little
friendlier to each other.
2013-07-17 18:04:51 -07:00
Brandon Philips
7ea2b4924f feat(boot_kernel): add support for the boot kernel
This adds the boot_kernel to the build boot partiton and updates the
relevant config files. Mission accomplished.

TODO: Update the installer to not worry about moving files around
anymore
2013-07-17 18:02:27 -07:00
Brandon Philips
ed037ea05c chore(build_library): remove efi image
we don't really care about booting on pure efi systems right now and I don't
think this all works so remove it for now.
2013-07-17 18:02:02 -07:00
Brandon Philips
06444a4ffc chore(build_library): strip out verity logic
remove some unused verity variables.
2013-07-17 18:00:00 -07:00