20 Commits

Author SHA1 Message Date
Jonathan Boulle 9685f37575 *: adjust copyright header
Inspired by a similar change in the Kubernetes project [1], this changes
the copyright header to the more generic "The rkt Authors" rather than
"CoreOS, Inc.", which is only sometimes correct.

https://github.com/GoogleCloudPlatform/kubernetes/commit/6b3a6e6b983f967c88d14d26542ec6e30c49ebd3
2015-05-03 14:29:15 -07:00
Krzesimir Nowak 21ccdbd1cd *: Standardize on "system" and "local" configuration
So "vendor" config becomes "system" and "custom" one - "local".
2015-04-22 13:26:59 +02:00
Krzesimir Nowak 2d8ec52f83 rkt, common: Move default config paths to common 2015-04-22 10:51:17 +02:00
Vito Caputo 8bf52878e2 rkt: rename common/app.go -> apps.go, image.go -> images.go 2015-04-02 13:11:24 -07:00
Vito Caputo 67158a4e7f rkt: turn rkt/app.go into the package common/apps
Step towards supplying stage0 with Apps rather than a bunch of
lists...
2015-04-02 13:11:24 -07:00
Jonathan Boulle 79753c9b19 *: rocket -> rkt 2015-03-31 16:31:21 -07:00
Eugene Yakubovich ebdc1503df mdsvc: no more 169.254.196.255 address
Since the spec requires AC_METADATA_URL env var,
well known IP is no longer needed. This removes
the iptables manipulation. Instead the IP address of the
host is passed in the AC_METADATA_URL. This host IP
is the address of the host end of the default veth.
2015-03-30 16:04:56 -07:00
Iago López Galeiras d929b96516 rkt: add --no-overlay option
Adds an option to not disable overlay filesystem.
2015-03-30 13:16:37 +02:00
Eugene Yakubovich 4fcbe4f074 Merge pull request #637 from eyakubovich/metadata-unixsock
mdsvc: use Unix socket for registration
2015-03-26 12:00:10 -07:00
Eugene Yakubovich f030f05f02 mdsvc: use Unix socket for registration
Using allows Unix socket allows for limiting who can
register/unregister containers by setting proper
permissions on the socket.

Fixes #437
2015-03-26 11:39:19 -07:00
Iago López Galeiras 662afd78e0 common: rename PodManifest: "container" -> "pod"
This was breaking prepare/run-prepared because it expected the file to
be named "pod".  Rename it accordingly.
2015-03-26 12:24:42 +01:00
Iago López Galeiras 3fe5e18ad2 rkt: fix status with overlay
When using overlay fs rkt status stopped working because it searched for
the status file in the stage1 rootfs, which is either in a different
mount namespace or unmounted.

If the container uses overlay fs, we now search in its upper layer,
which is accessible outside the mount namespace or when the filesystem
is not mounted.
2015-03-25 18:57:55 +01:00
Jonathan Boulle 56530ef74e *: update to 0.5.0 spec 2015-03-24 18:49:50 -07:00
Iago López Galeiras a128256bb9 rkt: support overlay filesystem
This mounts stage1 and the application images as an overlay filesystem
using each ACI's cached tree as the lower filesystem.

Also, the mounts are done in a separate mount namespace so they will be
unmounted when the container exits and they're not visible by the rest
of the system.

Systems that don't support overlay fall back to plain copying.
2015-03-24 10:12:13 +01:00
Eugene Yakubovich 0b935f467f net: set FD_CLOEXEC on RktLock prior to fork/exec
When launching metadata service and net plugins,
set the close-on-exec flag so the child processes
don't end up holding the lock.
2015-03-19 17:14:31 -07:00
Iago López Galeiras 19b1d2414d stage1: support interactive containers
By using systemd's Standard{Input,Output,Error} options we set
/dev/console in stage1 as the tty for the app (see systemd.exec(5)).
This makes interactive executables like bash work with rkt run (or
prepare+run-prepared).

This is only supported if the container has only one app.
2015-03-12 20:22:01 +01:00
Jonathan Boulle 63bb0846c3 rkt: metadatasvc -> metadata-service 2015-03-11 11:37:29 -07:00
Jonathan Boulle 72395d1ffa *: vendor appc spec
Take two at getting the spec vendored into Rocket with Godep.
Since actool is used during the construction of the stage1.aci, it
really needs to be vendored too to prevent any unexpected divergence
between whatever version the user happens to have in their PATH. Thus,
we introduce a silly dummy package (stage1/dummy.go) to coerce Godep
into vendoring actool. This also requires a slight rearrangement of the
appc repo, moving some functionality from actool itself into the aci
package.
2015-02-05 14:36:40 +01:00
Vito Caputo bae52e60ae *: switch stage1 to aci image format
One may now specify an alternative stage1 in a style like run and fetch:
rkt run --stage1-image foo.com/rocket/stage1 app

--stage1-image defaults to "stage1.aci" within the same directory as the rkt
binary.  This is discovered at runtime via "/proc/self/exe"; as long as the rkt
executable and stage1.aci share a directory it should "just work" regardless of
the directory's location and where rkt is executed from.
2015-01-30 10:51:15 -08:00
Jonathan Boulle d5669c9582 *: move rktpath/metadata into single "common" pkg 2015-01-26 11:36:36 -08:00