Commit Graph

3233 Commits

Author SHA1 Message Date
Brandon Philips
94c36b5483 fix(core_upload_update): remove CORE_UPDATE_URL
We are using the CoreOS CA now in core-admin. This isn't needed (and in
fact breaks things).
2013-07-31 13:58:18 -07:00
Brandon Philips
8e0c8bb8d0 Merge pull request #69 from philips/cleanup-LICENSE
LICENSE: minor cleanups
2013-07-31 11:21:42 -07:00
Brandon Philips
1537c81485 LICENSE: minor cleanups
add 2013 and cleanup the formatting
2013-07-31 11:20:58 -07:00
Brandon Philips
82b40d702a Merge pull request #68 from traviscross/master
License project under the BSD-3 license used by Chrome OS
2013-07-31 11:17:34 -07:00
Travis Cross
3d235a8f74 License project under the BSD-3 license used by Chrome OS 2013-07-31 18:15:32 +00:00
Michael Marineau
ae9b5f877a Merge pull request #66 from marineam/fstrim
fix(build_library): Re-enable zeroing free-space but in a sane way.
2013-07-27 14:45:26 -07:00
Michael Marineau
9f3517a474 Merge pull request #67 from marineam/use-tags
fix(master_release): Use tag names in commit message when available
2013-07-27 14:44:52 -07:00
Michael Marineau
84348c39af fix(build_library): Re-enable zeroing free-space but in a sane way.
As of Linux 3.2 loopback supports discard by punching holes in the
underlying file. This doesn't actually seem to impact things right now
since we are writing to fresh filesystems but might as well do this to
prevent wasted space from sneaking in later on.
2013-07-27 16:39:52 -04:00
Michael Marineau
84f2909531 fix(master_release): Use tag names in commit message when available 2013-07-27 15:56:51 -04:00
Michael Marineau
215a558a20 Merge pull request #65 from marineam/misc
Misc build updates
2013-07-27 09:42:21 -07:00
Michael Marineau
505107c48d fix(catalyst): Cleanup temporary files.
Catalyst doesn't clean up the temporary root directories even though we
don't have seedcache enabled. So lets wipe that mess up.
2013-07-27 00:07:09 -04:00
Michael Marineau
a1a1ed830c fix(build_library): Use sparse files for disk images, no useless sudo
Enable sparse files for all dd and cp commands and replace some dd
commands that are really better off being truncate commands.

While in the neighborhood there were a number of useless sudo commands
for things that just happen to be in sbin. Call them directly instead.
2013-07-26 23:45:10 -04:00
Michael Marineau
f46ee8c332 fix(build_image): Fix building dev and prod without base
Ever since adding prod it hasn't been possible to build just dev and
prod without explicitly building base. Base is always built but usually
there is no point to keeping it around. Add some logic to make dev not
conflict with prod and make sure base is deleted and not uploaded if it
wasn't explicitly requested.
2013-07-26 22:56:27 -04:00
Michael Marineau
1ea1e8ba9b cleanup(common): Remove rarely used pv_cat_cmd
Its single use is in build_common and even then having a little progress
bar for copying images isn't that interesting, they just get lost in the
noise of the emerge output. Keep it simple, use cp.
2013-07-26 22:40:59 -04:00
Brandon Philips
6b603ae9ef Merge pull request #64 from marineam/rename-dev
fix(*): Rename dev image to coreos_developer_image.bin
2013-07-26 19:27:11 -07:00
Michael Marineau
42a4536d7d fix(*): Rename dev image to coreos_developer_image.bin
Remove hard-coded references and unused scripts that mentioned it.
2013-07-26 22:12:10 -04:00
Michael Marineau
17736820bd Merge pull request #63 from marineam/rel
fix(master_release): Fix default branch to pull from, fetch evyerhing.
2013-07-26 18:38:28 -07:00
Michael Marineau
27af72359e fix(master_release): Fix default branch to pull from, fetch evyerhing. 2013-07-26 21:27:18 -04:00
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