Commit Graph

2915 Commits

Author SHA1 Message Date
Michael Marineau
5375057c86 Merge pull request #62 from marineam/lbzip2
fix(cros_sdk): Support using lbzip2 during chroot creation.
2013-07-26 16:46:58 -07:00
Michael Marineau
ca6415dc89 fix(cros_sdk): Support using lbzip2 during chroot creation.
Our SDK tarballs aren't compressed using pbzip2 so there is no advantage
to using pbzip2 to decompress them over bzip2, however lbzip2 does offer
a big advantage. Also trust that the portage config defines a valid
version of bzip2 since we have control over the tarball creation and can
make sure to always include required utilities.
2013-07-26 18:31:18 -04:00
Michael Marineau
6697c05d0a Merge pull request #61 from marineam/vm_upload
Vm upload
2013-07-26 15:18:04 -07:00
Michael Marineau
37c56b64de feat(build_ebs_on_ec2): Fetch prod images by version, misc cleanup.
The build host will start generating production ami disk images so to
simplify the next step this script can automatically fetch them from
that location by version. The default sticks with the existing 'master'
versioning scheme. Added logging and turned off -x by default to make
the output log more readable.

Removing the zip_and_ship script since it isn't useful with officially
built disk images and only works with locally built images and a very
particular ec2 host. A different long term automation scheme will have
to be found.
2013-07-26 17:45:27 -04:00
Michael Marineau
c5cd245603 feat(image_to_vm): Add support for uploading vm images
After this I can make production AMI images available for download! :-D
2013-07-26 16:31:11 -04:00
Brandon Philips
ecb8ea259c Merge pull request #60 from philips/move-stateful-around
Move stateful around
2013-07-26 11:33:59 -07:00
Brandon Philips
3b30f8def3 fix(build_library): symlnks to stateful
add backward compat symlinks to the stateful directory
2013-07-26 10:20:29 -07:00
Brandon Philips
be72d56a50 fix(*): move dev_image to overlays
put the dev_image in overlays/usr/local
2013-07-26 10:20:18 -07:00
Brandon Philips
ca0b25028e Merge pull request #59 from philips/remove-container-stuff
chore(build_library): remove container library
2013-07-26 08:51:53 -07:00
Brandon Philips
cf8be2c320 fix(*): use /media/state and overlays dir
/mnt/stateful_partition was already a little unruly with
/mnt/stateful_partition/home and /mnt/stateful_partition/var_overlay
serving similar functional purposes.

Then we needed to also add /opt and /srv overlays.

I also have wanted to get rid of the ugly and weird
/mnt/stateful_partition name so lets just have one big move.

/mnt/stateful_partition -> /media/state
/mnt/stateful_partition/var_overlay -> /media/overlays/var
/mnt/stateful_partition/home -> /media/overlays/home

From there we add /media/overlays/srv and /media/overlays/opt
2013-07-26 08:44:47 -07:00
Brandon Philips
0ece58228f chore(*): remove unused scripts
bin/cros_update_image.sh
  cros_show_stacks
  image_to_usb.sh
  make_netboot.sh
  mod_image_for_recovery.sh
  update_kernel.sh
2013-07-26 08:40:32 -07:00
Brandon Philips
141d488da6 chore(build_library): remove container library
This is no longer used. It was used to debug early boot problems early
on.
2013-07-26 05:35:20 -07:00
polvi
7ed28ac286 Merge pull request #58 from marineam/baselayout
Baselayout/release file fixes
2013-07-25 21:14:35 -07:00
Michael Marineau
2acc703cc8 fix(set_lsb_release): Spelling is for suckers 2013-07-26 00:02:11 -04:00
Michael Marineau
9ed620c277 fix(build_image): Fix baselayout install in final images.
The basic system directory structure including the lib symlinks were
fixed for sysroot in the following commits but the image build uses an
entirely different bit of code to do the exact same set of hacks. Port
those changes to the image building code to hopefully make all happy.

2ae0c30f4e
ac931bd088
2013-07-25 23:22:12 -04:00
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