Commit Graph

4103 Commits

Author SHA1 Message Date
Michael Marineau
b63901023e ROADMAP: add initial overall CoreOS roadmap document
This doc covers CoreOS as a whole and a few details that don't really
fit anywhere else. Individual projects maintain their own roadmaps.

Update LICENSE and add a README as general housekeeping.
2015-04-30 16:58:53 -07:00
Michael Marineau
bc7e9d7048 Merge pull request #404 from marineam/gov
oem/ami: add support for publishing AMIs in us-gov-west-1
2015-04-27 12:57:47 -07:00
Michael Marineau
8531f85cb1 oem/ami: add support for publishing AMIs in us-gov-west-1
A few general changes:
 - Use https for EC2 endpoint URLs
 - Remove parallelism from prod-publish, was launching enough Java
   processes at once to trigger OOM :(
 - Only share snapshots with Amazon in us-east-1: only needed for
   marketplace listing and marketplace only uses us-east-1.
2015-04-23 23:26:45 -07:00
mjg59
0ce635c1d1 Merge pull request #397 from mjg59/master
Add support for signed kernels
2015-04-23 16:10:25 -07:00
Michael Marineau
edfed4227d Merge pull request #403 from marineam/scripts
oem/ami: update path to ami scripts directory
2015-04-22 19:15:43 -07:00
Michael Marineau
41a64f6da1 oem/ami: update path to ami scripts directory
The ami builder host now has a proper checkout of the scripts repo.
2015-04-22 18:33:07 -07:00
Matthew Garrett
9579f4d68a Update grub configuration to handle ESP kernels, build it into grub
The grub configuration needs some updates to handle dealing with booting
the kernel from the ESP rather than from inside the image. We also want to
be able to avoid dealing with signing the config file, so build it into the
binary. Finally, rather than having to cope with signing grub modules, build
the ones we need to boot into the grub image.
2015-04-22 11:37:15 -07:00
Michael Marineau
02dcb2790b Merge pull request #402 from marineam/vmdk
vm_image_util: add support for VMDK images for EC2 AMIs
2015-04-21 16:38:28 -07:00
Michael Marineau
c81228b60f Merge pull request #401 from marineam/import
oem/ami: make import zone and bucket conferable
2015-04-21 16:32:41 -07:00
Michael Marineau
db2404664a oem/ami: make import zone and bucket configurable
The intent is to export the bucket and optionally the zone in the
environment alone with the AWS auth credentials.
2015-04-21 16:29:12 -07:00
Michael Marineau
12c53080a4 vm_image_util: add support for VMDK images for EC2 AMIs
Lets us avoid larger data transfers when importing images.
2015-04-21 16:27:37 -07:00
Michael Marineau
1e623f3eb6 Merge pull request #400 from marineam/import
oem/ami: add new import script, replaces build_ebs_on_ec2.sh
2015-04-21 11:55:39 -07:00
Michael Marineau
1508b44722 oem/ami: add new import script, replaces build_ebs_on_ec2.sh
This script uses the EC2 volume import tools instead of attaching and
writing to an EBS volume. This mechanism will be useful for creating
AMIs in isolated EC2 regions and can be run from any host with API
access and the EC2 tools.

TODO: Allow region to be specified and automatically create region-local
S3 buckets as needed. This version hard codes a bucket only usable by
our dev AWS account, not prod. Later on: move to a more compact disk
format like VMDK.
2015-04-21 11:54:50 -07:00
Michael Marineau
5181e6b71c Merge pull request #399 from marineam/move
setup_board: explicitly perform all package moves
2015-04-17 14:01:19 -07:00
Michael Marineau
d1ec00c932 setup_board: explicitly perform all package moves
For some reason package moves are not handled automatically in the board
build roots. Add explicit calls to emaint to update cached binary
packages, installed packages, and the world file.
2015-04-17 13:40:20 -07:00
Alex Crawford
859675b62a Merge pull request #398 from jonhiggs/create-coreos-vdi_bugfix
Avoid errors when paths contain spaces by quoting.
2015-04-17 01:54:04 -07:00
Jon Higgs
b7afa4f179 Avoid errors when paths contain spaces by quoting. 2015-04-17 13:00:32 +10:00
Matthew Garrett
07e5220f60 Add the kernels to the ESP
Once we're signing the root filesystem, we're not going to be able to boot
the kernel from there. Copy the kernel out to the EFI System Partition and
sign it.
2015-04-16 15:55:02 -07:00
mjg59
a3d8d43cb2 Merge pull request #396 from mjg59/master
Add support for Secure Boot images and sign unofficial builds with test ...
2015-04-15 14:50:54 -07:00
Matthew Garrett
4b8a64b70c Build shim into the image
grub requires that shim be available in order to call out to verify the
kernel. Sign it and stick it in the image alongside grub.
2015-04-15 11:24:17 -07:00
Matthew Garrett
707803ed43 Add support for Secure Boot images and sign unofficial builds with test keys
Add qemu_uefi_secure target for building Secure Boot images. These are
identical to qemu_uefi images with the exception that the test keys have
been installed into the flash image, enabling Secure Boot by default. In
addition, sign the grub binary with the test keys during build when
producing unofficial images.
2015-04-15 11:11:24 -07:00
Michael Marineau
a6824e7bbe Merge pull request #395 from glevand/for-merge
scripts: Minor cleanups
2015-04-10 10:56:24 -07:00
Geoff Levand
dcc9a2b97d build_packages: Update help for CoreOS
Signed-off-by: Geoff Levand <geoff@infradead.org>
2015-04-09 09:42:26 -07:00
Geoff Levand
de00a676a8 setup_board: Remove unused option
setup_board's --latest_toolchain option seems to be a left over from a
removed feature.  It's not used, so remove it.

Signed-off-by: Geoff Levand <geoff@infradead.org>
2015-04-09 09:42:26 -07:00
Michael Marineau
83bfa8f4f6 Merge pull request #394 from marineam/arm64
update_chroot: fail if --toolchain_boards= was given invalid names
2015-04-08 19:14:32 -07:00
Michael Marineau
629021b6de update_chroot: fail if --toolchain_boards= was given invalid names 2015-04-08 17:11:12 -07:00
Michael Marineau
dc88c752e9 Merge pull request #392 from glevand/for-merge
Add basic support for arm64
2015-04-08 13:42:29 -07:00
Geoff Levand
ec53361620 toolchain_util: Add arm64-usr support
Adds CROSS_PROFILES, BOARD_CHOSTS, and BOARD_PROFILES definitions to support a
generic arm64-usr board.

get_portage_arch() is updated to convert aarch64 correctly.

Signed-off-by: Geoff Levand <geoff@infradead.org>
2015-04-08 13:30:38 -07:00
Alex Crawford
53ed93d652 Merge pull request #393 from crawford/prepub
oem/azure: add pre-publish blob copy
2015-04-08 12:43:42 -07:00
Alex Crawford
e9566a5749 oem/azure: add pre-publish blob copy 2015-04-08 11:45:30 -07:00
Michael Marineau
f04e213c2c Merge pull request #391 from marineam/repos
toolchain_util: include repos.conf in bootstrap build environments
2015-04-03 13:45:18 -07:00
Michael Marineau
6e6a0a4967 toolchain_util: include repos.conf in bootstrap build environments
This is required for the eventual removal of `$PORTDIR` and
`$PORTDIR_OVERLAY` and ensures toolchain rebuilds/updates with
`./build_packages --nousepkg` don't erroniously try to use ebuilds from
`/usr/portage` inside of the SDK.

In order to fix up the build_toolchains script the crossdev overlay
needs to be setup properly, previously only setup_board did it.

Overall silences a lot of warnings and fixes an issue with crossdev:

    /usr/bin/emerge-wrapper: line 48: /eclass/toolchain-funcs.eclass: No such file or directory
    /usr/bin/emerge-wrapper: line 49: tc-arch: command not found
2015-04-01 16:30:37 -07:00
Michael Marineau
10c9a82f79 Merge pull request #390 from marineam/cbuild
Fixes for cross compiling
2015-04-01 16:27:52 -07:00
Geoff Levand
ea6cf50b8d toolchain_util.sh: Fix _configure_sysroot CBUILD
The portage CBUILD and HOSTCC variables need to be set to the SDK host to get
a proper cross build when building target binaries.

Change _configure_sysroot to use the CBUILD environment variable to set the
CBUILD and HOSTCC variables of ${ROOT}/etc/portage/make.conf.  Also, fix up all
calls to _configure_sysroot to set the CBUILD environment variable.

Fixes setup_board failure when the host and target architectures differ.

Signed-off-by: Geoff Levand <geoff@infradead.org>

[marineam: fixed a copy/paste error]
2015-04-01 15:54:43 -07:00
Geoff Levand
46f5478991 setup_board: Fix hard coded symbol path
commit 03e8d451bf (setup_board: setup
gdb wrapper and debug symbol path) added hard coded paths for the
symbol path.  Change those to use the BOARD_ROOT variable.

Signed-off-by: Geoff Levand <geoff@infradead.org>
2015-04-01 10:58:57 -07:00
Alex Crawford
1c5ce61bb2 Merge pull request #387 from crawford/ami
oem/ami: update tests for etcd2
2015-03-25 23:48:53 -07:00
Alex Crawford
d8e808c061 oem/ami: update tests for etcd2
The v1 API has been removed, so use v2 instead. The 10-second sleep was
added because the fleet tests were failing without it. My guess is that
etcd needed some time to warm up before we flooded it with requests.
2015-03-25 22:42:25 -07:00
Michael Marineau
798d9087fb Merge pull request #386 from marineam/fsck
disk_util: include fsck output during resize operation
2015-03-25 14:31:29 -07:00
Michael Marineau
07fc135a12 disk_util: include fsck output during resize operation
Previously fsck output was suppressed to reduce the amount of noise in
build logs on the assumption that fsck really shouldn't have a reason to
fail. The filesystem is freshly created after all. However some users
have reported that fsck is failing but without error messages we don't
know why.
2015-03-25 14:16:15 -07:00
Michael Marineau
5be55a6898 Merge pull request #385 from marineam/licenses
build_image_util: generate package license list for each image
2015-03-24 18:37:46 -07:00
Michael Marineau
3b8cf7d1fb build_image_util: generate package license list for each image
There isn't a sane way for users to know the licenses of individual
packages in CoreOS images in built images. The information is hidden
away back in the original ebuilds. This extends our existing package
list with a new file that also includes licenses:

```
app-admin/flannel-0.3.0-r3::coreos Apache-2.0
app-admin/fleet-0.9.1::coreos Apache-2.0
app-admin/locksmith-0.2.3::coreos Apache-2.0
app-admin/sdnotify-proxy-0.1.0::coreos Apache-2.0
app-admin/sudo-1.8.10_p2::portage-stable ISC BSD
app-admin/toolbox-0.0.0-r4::coreos Apache-2.0
app-arch/bzip2-1.0.6-r6::portage-stable BZIP2
app-arch/gzip-1.5::portage-stable GPL-3
app-arch/tar-1.27.1-r2::portage-stable GPL-3+
...
```
2015-03-24 18:10:45 -07:00
Michael Marineau
e235fb5f9f Merge pull request #384 from marineam/loop
build_packages: add support breaking loops with multiple use flags
2015-03-18 12:06:40 -07:00
Michael Marineau
03411ad4d8 build_packages: add support breaking loops with multiple use flags
Sorry, this is just getting bad. We need to switch to initializing the
board root stage3 style, similar to how the SDK or most any
semi-complicated Gentoo install starts. Breaking loops while merging
into a clean root is just too complicated.

On what this does: util-linux now has a udev *and* a systemd use flag.
Since we use systemd they both are effectively the same and pull in the
systemd package. This adds support for disabling both flags during the
loop breaking procedure.
2015-03-18 11:59:25 -07:00
Nick Owens
a4fd6a62f6 Merge pull request #383 from mischief/diskless-groupname
vm_image_util.sh: use correct group name in production images with no writeable /etc
2015-03-02 17:16:50 -08:00
mischief
7d2ee0e33c vm_image_util.sh: use correct group name in production images with no writeable /etc 2015-03-02 17:13:24 -08:00
techdragon
79ce0a3304 Enhanced dev_image_util with equivalent to --base_pkg
- "./build_image prod" already has the ability to specify which package will specify all the packages that should be pulled in and built into an image by specifying a package name using the --base_pkg command line flag. This creates an equivalent option for "./build_image dev" creating a --base_dev_pkg flag that passes a package name into the create_dev_img() function in dev_image_util.sh the same way that --base_pkg is passed into create_prod_image() inside prod_image_util.sh.
2015-03-02 13:21:56 +08:00
Alex Crawford
f26b209ab7 Merge pull request #378 from crawford/azure
oem/azure: add more image-publishing functionality
2015-02-27 18:05:32 -08:00
Alex Crawford
80e887dd8a oem/azure: add share-image.sh 2015-02-27 16:47:45 -08:00
Alex Crawford
4fa2583d7c oem/azure: add publish.sh 2015-02-27 16:47:45 -08:00
Alex Crawford
08f2d4cd23 oem/azure: add replicate-image.sh 2015-02-27 16:47:45 -08:00