Commit Graph

641 Commits

Author SHA1 Message Date
Michael Marineau
cd40d3e46b fix(coreos-base/coreos-base): Install sysctl, a little more cleanup.
Pair down the old unused sysctl.conf do what is useful for us and
install it into /usr/lib/sysctl.d for systemd to handle.

Installing /srv in the SDK does no harm so do so.

EAPI=5 because, better.
2013-08-22 21:09:04 -04:00
Michael Marineau
898a3a3a08 fix(coreos-base/coreos-base): Change core's shell to bash.
It is bash but might as well be explicit about that.
2013-08-22 21:07:29 -04:00
Michael Marineau
a1a5f82b28 fix(coreos-base/coreos-base): Remove directory creation.
This duplicates sys-apps/baselayout so don't bother. Probably left over
from when baselayout wasn't properly installed with the 'build' use flag
to initialize the filesystem tree.
2013-08-22 21:07:18 -04:00
Michael Marineau
a19498b725 fix(coreos-base/coreos-base): Update users and groups.
Remove the following unused users/groups:
 - core-access
 - polkituser
 - pkcs11
 - ipsec
 - tor
 - tcpdump
 - debugd
 - openvpn
 - input

Add groups:
 - docker (new group, for things like access to docker socket)
 - systemd-journal (exists in sdk, not images. for journal log access)
 - dialout (exists in sdk, required by default udev rules)

The core user has access to docker and systemd-journal.
2013-08-22 21:07:07 -04:00
Michael Marineau
37a7bb4932 fix(coreos-base/coreos-base): Remove old ChromeOS files.
The udev rules are required on our system and refer to non-existent
groups causing udev to spew a bit of useless noise on boot.

The profile.d scripts don't do anything at all.
2013-08-22 21:05:46 -04:00
Brandon Philips
97c626a8e7 fix(dev-db/etcd): listen on 0.0.0.0:4001
this fixes a regression where etcd no longer listens on 127.0.0.1 and
the public ip. Fix this up because etcd needs to listen on both for user
convienence and for other cluster members to talk to it.

TODO: Add 127.0.0.1 test to ami test.
2013-08-22 10:06:24 -07:00
Michael Marineau
ea7064cc20 fix(coreos-base/vboot_reference): Update git hash to merge commit. 2013-08-21 18:09:34 -04:00
Michael Marineau
2e1e051281 bump(coreos-base/coreos-intaller): minor code update 2013-08-21 14:09:03 -04:00
Michael Marineau
7e41042745 bump(coreos-base/vboot_reference): cgpt bugfix and features!
cgpt next is fixed and will properly failover now.
cgpt create can actually create (or extend) disk image files.
2013-08-20 21:02:57 -04:00
Michael Marineau
b5c4edc3a7 fix(app-emulation/docker): Re-add inherit systemd, dropped by mistake.
Also add || die to actually catch errors for this sort of thing.
2013-08-20 17:05:48 -04:00
Michael Marineau
5793e6c7f9 fix(dev-db/etcd): Fix command line args for >=0.1 etcd versions.
-h is gone, replaced by -n, -c, and -s
2013-08-19 19:06:27 -04:00
Michael Marineau
e251ff660d fix(dev-db/etcd): Remove -v flag, DEBUG is overly verbose prod hosts. 2013-08-19 18:46:22 -04:00
Michael Marineau
9528517210 Merge pull request #165 from marineam/docker
bump(app-emulation/docker): Update to 0.5.3, cleanup ebuild.
2013-08-19 13:09:19 -07:00
Michael Marineau
f43fef7261 bump(app-emulation/docker): Update to 0.5.3, cleanup ebuild.
Now we use a tarball instead of git and set the correct license. Wow!
2013-08-19 15:09:32 -04:00
Michael Marineau
4461185fce Merge pull request #164 from marineam/etcdctl
Etcdctl
2013-08-19 11:51:39 -07:00
Michael Marineau
79f896292c fix(dev-db/etcdctl): Declare copyright properly, this isn't Gentoo 2013-08-19 14:48:33 -04:00
Michael Marineau
9ca28684dd feat(coreos-base/coreos): Add etcdctl 2013-08-19 14:33:03 -04:00
Michael Marineau
eaf29b98ae add(dev-db/etcdctl): New ebuilds!
Add live ebuild along with 0.1.0 and 0.1.1 releases.
2013-08-19 14:30:22 -04:00
Brandon Philips
5eb5cb496a chore(dev-db/etcd): remove unused env variable in ebuild 2013-08-19 11:28:17 -07:00
Brandon Philips
ebd02c0b19 chore(dev-db/etcd): add a command about the hash source 2013-08-19 11:21:51 -07:00
Brandon Philips
0f71c19ca9 bump(dev-db/etcd): etcd-0.1.1 2013-08-19 10:56:48 -07:00
Brandon Philips
948c15c48d fix(etcd-bootstrap): add -f to delete old etcd info
We are changing stuff pretty rapidly in etcd just start blowing away any
info files we find on disk on an upgrade or start.
2013-08-19 10:56:48 -07:00
Brandon Philips
b539972254 feat(dev-db/etcd): set restart service policy 2013-08-19 10:56:48 -07:00
Brandon Philips
37e06a2c65 fix(app-emulation/docker): restart on crash
docker has been known to crash from time to time in odd situations. Auto
restart docker 1 second after an unexpected exit so that people can go
about their business.

Thanks to dsal & fkautz in #coreos
2013-08-16 15:36:04 -07:00
Michael Marineau
ba1ea07df8 bump(coreos-base/coreos-init): Update code, enables more gettys
Now a getty will be created on every terminal specified by the console=
kernel command line options.
2013-08-16 14:16:54 -04:00
Michael Marineau
17518255d8 bump(coreos-base/coreos-init): tmpfiles update 2013-08-14 12:36:52 -04:00
Brandon Philips
06f12e7668 fix(dev-db/etcd): fixup tmp file handling
instead of having scripts creating and managing directories use
tmpfiles.d do all of that. This will fix c10n not working on the AMI
too.
2013-08-13 15:58:41 -07:00
Michael Marineau
42dc93dc92 fix(coreos-base/oem-ami): Simplify ssh key install
Use the new update-ssh-keys script to make the script a lot simpler. :)
2013-08-12 19:13:40 -04:00
Michael Marineau
14454b0cec fix(coreos-base/oem-vagrant): No need for run.sh for copying ssh key.
Copying authorized_keys is now built in to coreos-init.
2013-08-12 19:05:00 -04:00
Michael Marineau
47b3dd1038 bump(net-misc/gsutil): Update to 3.34
ebuilds originally created and tested in my "misc-overlay"
https://github.com/marineam/misc-overlay
2013-08-12 19:00:18 -04:00
Michael Marineau
d6203b64c1 bump(coreos-base/coreos-init): Replaces oem-services in a generic way.
coreos-detect-virt has moved from oem-service and the oem-service unit
has been replaced by new units that work for both oem and virtfs mounts.
2013-08-11 22:30:21 -04:00
Michael Marineau
bab545f35b bump(coreos-base/coreos-init): Update to latest init code, includes c10n
Biggest diff here: coreos-init has a Makefile that supports the usual
'install' and 'test' targets so no file copying is required now.
coreos-c10n has moved to init from etcd and has its own service now.
This version of init also includes support for automounting virtfs
filesystems under qemu for use with an updated version of c10n but for
now c10n remains unchanged. Optionally unit tests are available too!
2013-08-11 14:43:51 -04:00
Michael Marineau
97c7997850 fix(dev-db/etcd): Remove coreos-c10n, it is moving to coreos-init 2013-08-11 13:55:43 -04:00
Michael Marineau
3e42b6aded fix(sys-kernel/coreos-kernel): Fix virtfs+dbus, add PCI hotplug.
This adds the following patch: (sent upstream, waiting on response)
  "9p: send uevent after adding/removing mount_tag attribute"

Also enable PCI hotplug to take advantage of more qemu fun! Now
adding/removing virtio devices (which are represented as PCI devices)
at runtime via the qemu monitor console works.
2013-08-11 13:00:02 -04:00
Michael Marineau
741c2aa70c feat(coreos-base/coreos-base): Add default vimrc so vim acts like vim.
Because, I mean, really.
2013-08-10 14:46:05 -04:00
Michael Marineau
73b14d27cf feat(sys-kernel/coreos-kernel): Add 9P virtio fs support.
This allows qemu virtual machines to access plain directories on the
host system in addition to the usual disk/filesystem images.
2013-08-08 13:15:00 -04:00
Michael Marineau
7575dfa11a fix(app-emulation/qemu): Remove unused architectures.
We don't have any arm or i386 targets right now so they can go away.
2013-08-08 13:11:14 -04:00
Michael Marineau
59407a0ebe fix(eclass): Remove old linux-info eclass, use upstream instead. 2013-08-06 21:36:01 -04:00
Michael Marineau
e7015a87a5 fix(virtual/linux-sources): Only install coreos-kernel on targets.
We don't have a valid kernel (or use-case to have one) for "cros_host"
(the SDK) so just fake it. Also remove some unused flags.

This change prevents the latest kmod ebuild from pulling in
coreos-kernel, bootengine, and friends into the SDK.
2013-08-06 19:58:18 -04:00
Michael Marineau
37b2e4a2e8 Merge branch 'master' of ssh://github.com/coreos/coreos-overlay 2013-08-06 18:43:50 -04:00
Brandon Philips
498a8af5cf chore(sys-kernel/coreos-kernel): remove EGIT_MASTER
this doesn't make a difference anymore, remove it.
2013-08-06 09:51:02 -07:00
Brandon Philips
d477975252 chore(eclass/git-2): delete
use the portage-stable version
2013-08-06 09:50:43 -07:00
Brandon Philips
1d9e3cca26 fix(eclass/cros-workon): revert EGIT_BRANCH hack
this hack didn't seem to work and with the removal of sync-c in the
manifest make it all a moot point anyways
2013-08-05 17:04:34 -07:00
Brandon Philips
035cb38bce feat(eclass/cros-kernel): add hardware support
add some more hadware support
2013-08-05 17:04:34 -07:00
Brandon Philips
ef35830b07 bump(sys-kernel/coreos-kernel): bump to 3.10.5 2013-08-05 17:04:34 -07:00
Michael Marineau
bf535dc832 fix(profiles): Enable dev-lang/yasm-1.2.0-r1
This version fixes XML errors and python eclass usage.
2013-08-05 18:41:55 -04:00
Michael Marineau
5c0ba24317 fix(coreos-base/coreos-dev): Replace dev-python/argparse with virtual.
argparse is bundled into python-2.7 so dev-python/argparse cannot be
installed. Instead the virtual package should be used to work with any
python version combination.
2013-08-05 15:21:20 -04:00
Michael Marineau
b444a5ec51 fix(profiles): Switch to python2.7 as the one and only version. 2013-08-05 14:21:03 -04:00
Michael Marineau
063d5d2972 bump(dev-lang/python): Update to python 2.7, ebuilds from chromiumos.
They have some patches to fix cross-compiling in this build environment.

Start off simply by adding 2.7 as a new parallel install target, will
switch to 2.7 as the primary version in a later step.
2013-08-04 19:53:40 -04:00
Michael Marineau
bcd2cea31b fix(profiles): Disable systemd use flag for dbus on targets.
This flag enables 'at_console' policy support using logind. I don't
think we actually have a use for that and having it disabled hasn't
caused anything weird that I know of so far so leave it disabled.

Enabling this flag causes a circular dependency between systemd and dbus
which is resolved in catalyst bootstrapped builds like the SDK but for
target builds this is a problem.
2013-08-04 14:46:14 -04:00
Michael Marineau
7878926463 drop(sys-apps/dbus): Moved to portage-stable 2013-08-03 20:25:54 -04:00
Michael Marineau
07632fc185 drop(sys-apps/sysvinit-tools): was only required by dracut < 031
031 includes a shell reimplementation of pidof which is the only tool I
could find that it used from sysvinit.
2013-08-03 20:21:14 -04:00
Michael Marineau
806979675e bump(sys-kernel/dracut): bump to 031 from gentoo
Only local modification is to remove the sysvinit dependency
2013-08-03 20:19:26 -04:00
Michael Marineau
bb47bc354a fix(profiles): Use systemd profile, clean init stuff from other places.
Now the default/linux profile pulls in the systemd-only profile, all
other things systemd/openrc/init references can go away now.
2013-08-03 19:03:31 -04:00
Michael Marineau
a6e4651e25 feat(profiles): Add systemd profile from my Gentoo systemd-only overlay.
No need for me to maintain a similar profile in two entirely different
ways. This is also one tiny step towards cleaning up our profiles in
general. Original here: https://github.com/marineam/systemd-only-overlay

As part of this change the baselayout dependency on openrc is now
handled via a use flag instead of package.provided. We didn't previously
include a virtual/init package but Gentoo has one and I needed it for my
generic systemd-only overlay so might as well include it here if it is
needed in the future.
2013-08-03 18:59:28 -04:00
Alex Polvi
76d81a0f19 feat(oem-service): make etcd bootstrapping optional, and only supported on ec2 for now. This will continue to be refactored. 2013-08-01 19:15:21 -07:00
Brandon Philips
cba48d9b3b Merge pull request #141 from philips/etcd-restrictions
feat(dev-db/etcd): run as etcd user
2013-08-01 13:38:00 -07:00
Michael Marineau
867e664a94 Merge pull request #146 from marineam/vlite
vagrant oem, misc cleanups
2013-08-01 13:34:44 -07:00
Michael Marineau
52dab6e268 fix(coreos-base/oem-ami): Cleanup ebuild, bump to EAPI=5
Generally a good idea to use newer EAPIs that default to failing on
errors. Uses the same S fix as oem-vagrant does.
2013-08-01 16:12:49 -04:00
Brandon Philips
eac9de51bf feat(sys-kernel/coreos-kernel): add netfilter redirect
add this so we can do some 169. magic with etcd
2013-08-01 13:03:55 -07:00
Brandon Philips
0fbecd3a4e bump(sys-kernel/coreos-kernel): to 3.10.4
- bump to the latest stable - 3.10.4
- add some minimal real hardware support
- modify cros-workon to allow EGIT_BRANCH to be set
2013-08-01 11:49:18 -07:00
Michael Marineau
dec3691adc fix(coreos-base/oem-vagrant): Fix compatibility with newer EAPIs
No source directory exists so change the value of S, otherwise the
implied cd $S prior to src_install fails. This isn't an issue in oem-ami
which I was using as reference because it declares EAPI=2 which doesn't
make errors fatal by default.
2013-08-01 11:36:28 -04:00
Michael Marineau
e5f16ba427 add(coreos-base/oem-vagrant): Add OEM package for the vagrant ssh key 2013-07-31 23:53:03 -04:00
Michael Marineau
7cdb04ef14 fix(make.conf): Use absolute path to make.conf.host_setup
The relative path wasn't working with euse correctly. Gotta love
re-implementations of portage config parsing, in perl, with weird bugs.
2013-07-31 15:59:18 -04:00
Michael Marineau
95b3dedcf1 remove(app-emulation/qemu-kvm): Remove ancient qemu version. 2013-07-31 15:23:07 -04:00
Michael Marineau
18e28643ac Merge pull request #143 from marineam/buildbot
Buildhost ebuilds
2013-07-31 09:36:08 -07:00
Michael Marineau
2e37393af5 fix(sys-kernel/coreos-kernel): Add evdev module.
ACPI power buttons are input devices! Without this it isn't possible to
trigger a graceful shutdown via qemu's command 'system_powerdown' or
whatever libvirt and similar APIs that are layered on top of it.

Probably applicable to other things too that we just don't know about.
2013-07-30 21:10:41 -04:00
Michael Marineau
9d975a3dd7 fix(coreos-devel/coreos-buildbot): Update git commit hash
Merged, use fresh new merge hash.
2013-07-30 16:52:26 -04:00
Michael Marineau
5f2f390b9a fix(profiles): Set use flags required by buildhost-depends 2013-07-30 13:41:23 -04:00
Michael Marineau
0c564ebf78 add(coreos-devel/*-depends): Meta ebuilds for buildhost and SDK.
Create a meta-ebuild for the SDK based on the packages currently listed
explicitly in bootstrap_sdk.sh and a buildhost ebuild that expands on
that, adding packages that are required in containers used by build
slave instances.
2013-07-30 13:19:15 -04:00
Michael Marineau
ae43aaf5df add(coreos-devel/coreos-buildbot): Add ebuild for our buildbot tools.
Creating a new category for this, coreos-base is overused and dev-python
didn't seem right for custom infrastructure tools. Going forward I'd
like to put SDK and build host specific stuff in this category when
previously coreos-base would be used. Things that actually land in
images would stick with coreos-base.
2013-07-30 13:02:17 -04:00
Brandon Philips
64350b1aed Merge pull request #140 from philips/drop-unused-package
chore(coreos): remove app-crypt/trousers
2013-07-30 09:24:57 -07:00
Brandon Philips
bf35170ead fix(dev-db/etcd): use mkdir -p in pre-exec
Ensure that we don't fail on the /var/run/etcd directory creation.
2013-07-30 09:04:47 -07:00
Brandon Philips
db2708f2e8 fix(dev-db/etcd): use new state location
have etcd use /var/lib like other daemons do.
2013-07-30 09:03:45 -07:00
Michael Marineau
9d25f8c06c fix(dev-db/etcd): Handle missing ec2 user-data correctly.
Important notice to all using curl: by default a 404 is not an error!

I noticed that instances created without any user data were attempting
to connect to a *lot* of random IP addresses and failing. After
attempting the curl command c10n uses to fetch user data it would seem
we have lots of virtual machines using the following as a secret key:

    <?xml version="1.0" encoding="iso-8859-1"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
             "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
     <head>
      <title>404 - Not Found</title>
     </head>
     <body>
      <h1>404 - Not Found</h1>
     </body>
    </html>

ᕙ(⇀‸↼‶)ᕗ

The --fail option is required for curl to behave responsibly.
2013-07-30 11:44:46 -04:00
Brandon Philips
5bd666247c feat(dev-db/etcd): run as etcd user
thie patch does a few things

1) Add the etcd user and run etcd as that user

2) Add the /var/lib/etcd directory and have it owned by the etcd user

3) Move /media/state/etcd/* files into /var/lib/etcd/ and chown them to
   etcd

Test-plan: Build an AMI and ensure this all works with the
bootstrapping.
2013-07-29 23:09:14 -07:00
Brandon Philips
ea25c209af chore(coreos): remove app-crypt/trousers
It will be awhile before CoreOS runs on something with a working TPM.
Remove this.
2013-07-29 21:39:53 -07:00
Brandon Philips
033a385685 chore(coreos-base/coreos-base): remove unused groups/users
we have a few unused groups and users. Reserve the UIDs but just don't
have them in the DB until we need them.
2013-07-29 21:33:04 -07:00
Brandon Philips
c3444a8ad5 Merge pull request #138 from doodles526/certs
added commit for our certs
2013-07-29 14:05:46 -07:00
Josh Deare
9df7791b42 added commit for our certs 2013-07-29 11:47:18 -07:00
Michael Marineau
3d7b6336fb fix(coreos-base/coreos-init): Fix invalid git hash.
Merge gone wrong with a rebase maybe? Dunno but should build now. :)
2013-07-29 14:36:26 -04:00
Brandon Philips
b48f95c3db Merge pull request #135 from philips/add-local.target
fix(init): move a few things around
2013-07-29 10:15:36 -07:00
Brandon Philips
da254bcd45 fix(init): move a few things around
1) Make default.target be multi-user.target instead of the default,
   graphical.target

2) Move daemons out of coreos-startup and just have them wantedby
   default.target

3) Have update-engine not rely on coreos-startup and add itself to
   default.target.wants

4) Grab the new init code that does the above

5) Add the local-enable.service which will add /media/state/units to
   /run/systemd/system and start local.target
2013-07-28 22:59:08 -07:00
Michael Marineau
c8b83b06c8 bump(dev-db/etcd): Fix revision number, we wend backwards by mistake. 2013-07-28 17:41:29 -04:00
Michael Marineau
6f7ec78b85 fix(coreos-base/coreos-base): Include default nsswitch.conf
Until we start installing glibc like sane people we need to include this
via other means. Without it name resolution behavior is somewhat surprising.
2013-07-27 13:20:13 -04:00
Michael Marineau
9effa608cd bump(coreos-base/cros-devutils+gmerge): Update to latest code 2013-07-26 22:49:05 -04:00
Michael Marineau
7ed8357499 bump(dev-db/etcd): Grab latest build fixes 2013-07-26 21:14:55 -04:00
Michael Marineau
7696459498 fix(profiles): Enable lbzip2 for both SDK and targets, move to profiles
It has been long enough since adding lbzip2 to the system set, time to
put it to work for all our binary package needs!
2013-07-26 19:12:31 -04:00
Brandon Philips
2e0a3d9a2e bump(coreos-init): create /srv and /opt 2013-07-26 11:28:43 -07:00
Brandon Philips
aa944b9be2 fix(coreos-installer): get dev image location fix 2013-07-26 11:09:51 -07:00
Brandon Philips
8bb371377f fix(coreos-base): move images/dev to overlays/usr/local 2013-07-26 10:49:19 -07:00
Brandon Philips
3970d28b5a fix(*): move /home/core/user to /home/core 2013-07-26 10:38:33 -07:00
Brandon Philips
589a10d8d5 fix(coreos-base/*): move /mnt/stateful_partition around
This bumps all of the ebuilds to use the new /media/state code.
2013-07-26 08:56:08 -07:00
Brandon Philips
cb3e04d55b fix(*): use new stateful_partition location
moving /mnt/stateful_partition to /media/state
2013-07-26 08:30:22 -07:00
Brandon Philips
b585ebc2d6 chore(net-misc/strongswan): remove, we don't use it right now
remove strongswan, we aren't using it right now.
2013-07-26 06:42:56 -07:00
polvi
e3b4bbb8c7 Merge pull request #125 from polvi/docker-start
re-add docker starting by default
2013-07-25 15:28:54 -07:00
Alex Polvi
20dc12868f add symlink 2013-07-25 15:24:05 -07:00
Michael Marineau
7006b267c2 fix(coreos-base/coreos-base): Disable sudo password for core user.
Considering access to production systems will be by ssh keys, not some
developer password, the user doesn't have a password to give sudo.
2013-07-25 15:45:48 -04:00
Michael Marineau
8f733efe2f fix(profiles): Disable zeroconf use flag globally. 2013-07-25 15:30:44 -04:00
Alex Polvi
8affc38775 re-add docker starting by default 2013-07-25 12:28:53 -07:00