Commit Graph

23 Commits

Author SHA1 Message Date
Michael Marineau
3ff92f4bc3 bootstrap_sdk: use http instead of https
Using https gives us a bit of a dep issue, cannot download the sources
required to build ssl support when ssl hasn't been built yet!
2016-05-02 20:23:30 -07:00
Michael Marineau
5ba4c7181d *: drop usage of COREOS_VERSION_STRING
This variable was semi-deprecated ages ago so `version.txt` could follow
a similar variable naming pattern to `os-release`. Finally drop usage of
it here in favor of `$COREOS_VERSION`.
2016-02-15 13:55:55 -08:00
Michael Marineau
aa4ba8b2bb bootstrap_sdk: do not remove make.conf, turns out catalyst runs sed over it 2015-07-06 13:14:51 -07:00
Michael Marineau
db734ea417 bootstrap_sdk: do not leak catalyst config into sdk tarballs
The version of repos.conf/coreos.conf that catalyst needs isn't valid
for normal SDK chroots and causes env-update to spew errors when it is
run prior to update_chroot which configures portage properly.
2015-07-05 16:57:05 -07:00
Michael Marineau
5789c6bbbf bootstrap_sdk: add support for directly GPG signing SDK tarballs
SDK tarballs have a .DIGESTS file but it is created by catalyst instead
of the upload_image function. In order to support plain GPG signing but
not avoid re-generating .DIGESTS we need to move that code out of
upload_image to a new function. upload_files shouldn't do it itself
because it is also used for portage binary packages which shouldn't be
signed (there is no point, nothing would verify the signatures).
2015-06-28 17:02:23 -07:00
Michael Marineau
4b1a608c2e bootstrap_sdk: prune extra files from SDK tarballs
stage1/2/3 tarballs automatically prune things like /usr/portage but
stage4 does not. Add explicit rules to prune extra cruft.
2014-12-23 17:07:45 -08:00
Michael Marineau
1016bb323b bootstrap_sdk: setup /usr/lib correctly before calling set_lsb_release
os-release is now written to /usr/lib but that is likely a symlink to
/usr/lib64 so a little extra logic is required to avoid clobbering the
symlink.
2014-07-14 17:41:18 -07:00
Michael Marineau
8244c7a260 cleanup(set_lsb_release): Rework release config setup
- Remove custom COREOS_* attributes from /etc/lsb-release
- Move dev image logic to dev_image_util
  For extra fun fix detection of local host URL for devserver.
- Remove weirdly verbose "DESCRIPTION" format.
- Add COREOS_RELEASE_BOARD back to /usr/share/coreos/release
  This is mostly just so update_engine and gmerge report the correct
  board name to devserver, informative-only on prod images.
- Remove version info from /etc/gentoo-release
- Switch from 'track' to 'group' terminology.
2014-03-19 15:56:21 -07:00
Michael Marineau
75972cd991 fix(catalyst): Always use the current SDK tarball as seed.
Right now there is some funky logic to either use a previous build as a
seed or the current SDK tarball if it happens to have been downloaded.
This is a bit confusing and doesn't work reliably since it is reasonable
for there to be neither a previous build or the current SDK available if
the SDK chroot was created some time ago. Fix this by using the new SDK
library and always use the latest SDK, downloading it if needed.
2013-11-23 20:32:55 -08:00
Michael Marineau
763b27bb7f fix(common.sh): Move DIGESTS handling code to common functions.
This code would be useful to use when downloading SDK tarballs in
addition to uploading them. :)
2013-11-22 19:15:10 -08:00
Michael Marineau
6778eeda83 fix(bootstrap_sdk): Remove toolchain build step, replaced by build_toolchains 2013-11-07 13:28:13 -08:00
Michael Marineau
5adbfd8a32 fix(catalyst): Move catalyst scripts from lib to build_library.
Just seems like a better place for them.
2013-10-10 11:47:09 -07:00
Michael Marineau
29ccafbdba fix(sdk): Use coreos-devel/sdk-depends instead of hard-host-depends
coreos-devel/sdk-depends is a super-set of hard-host-depends and has a
somewhat better name.
2013-08-28 15:59:05 -07:00
Michael Marineau
9794ab32b1 feat(bootstrap_sdk): Add release data to SDK tarballs. 2013-08-05 23:18:41 -04:00
Michael Marineau
3600615dc8 fix(bootstrap_sdk): skip final release goo if stage4 wasn't built 2013-08-05 22:44:27 -04: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
Michael Marineau
6b336e17b2 fix(bootstrap_sdk): Move gsutil code to release_util.sh
Sync up bootstrap_sdk with other tools by using the common upload
functions. As part of this refactor release_util a bit to provide a
truly generic upload function.
2013-07-17 19:25:46 -04:00
Michael Marineau
d3e741b807 fix(bootstrap_sdk): Rename catalyst_stage4.sh since it is sdk specific
About to become a lot more sdk specific too. :)
2013-07-09 15:57:21 -04:00
Michael Marineau
6c1e03c06e fix(bootstrap_sdk): Report the time it took to complete 2013-07-05 23:57:04 -04:00
Michael Marineau
e9ca88bc69 fix(bootstrap_sdk): Default to uploading official builds. 2013-07-03 12:24:09 -04:00
Michael Marineau
82b7949c5f fix(bootstrap_sdk): Add option to upload built SDK and packages
This automates the process of uploading the fresh SDK release.
2013-06-26 17:25:55 -04:00
Michael Marineau
76ecff8169 fix(bootstrap_sdk): Rename final output tarball
The name "coreos-sdk-amd64-..." makes much more sense for general
distribution than "stage4..." so after catalyst is done rename the final
tarball and fixup the DIGESTS file to refer to the new name.
2013-06-26 11:32:09 -04:00
Michael Marineau
7bf839c6fb add(bootstrap_sdk): Add a script for bootstrapping the sdk tarball
This uses Gentoo's catalyst for very thoroughly building images from
scratch. Using images based on this will eliminate some of the hackery
in make_chroot.sh for building up the sdk from a stock stage3 tarball.

For reference the procedure it performs is this:

1. snapshot: Grab a snapshot of portage-stable. Note that overalys are
   not snapshotted.
2. stage1: Using a "seed" tarball as a build environment, build a
   minimal root file system into a clean directory using ROOT=...
   and USE=-* The restricted USE flags are key be small and avoid
   circular dependencies.
3. stage2: Run portage-stable/scripts/bootstrap.sh
   This rebuilds the toolchain. Probably not strictly necessary most of
   the time but does super-duper-promise that the toolchain isn't linked
   to or otherwise influenced by whatever was in the "seed" tarball.
4. stage3: Run emerge -e system to rebuild everything using the fresh
   toolchain using the normal USE flags provided by the profile. This
   will also pull in assorted base system packages that weren't included
   in the minimal environment stage1 created.
5. stage4: Install any extra packages or other desired tweaks. For the
   sdk we just install all the packages normally make_chroot.sh does.
2013-06-22 00:30:09 -04:00