Commit graph

861 commits

Author SHA1 Message Date
Stephen J Day
b542cc19ad
gc: add toy tri-color GC implementation
As a minimum, we would like to maintain generic garbage collection of
containerd resources. This includes images, bundles, containers and
arbitrary content.

The included implementation is just a textbook toy that we can use to
inform the requirements of gc. It implements a simple, stack-based
tricolor algorithm. Nothing special.

Mostly, this is to ensure we think about garbage collection from the
start, rather than as an afterthought or follow on feature.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-06 16:20:40 -08:00
Michael Crosby
df9c09303c Fix ctr build
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-05 16:36:15 -08:00
Michael Crosby
723a72bdf8 Fix execution build
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-05 16:18:05 -08:00
Michael Crosby
e31a99c08a Delete shim
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-05 16:18:05 -08:00
Michael Crosby
21a53c1d70 Add container start and supervisor
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-05 16:18:05 -08:00
Stephen J Day
e620833c9e
events: implemenet transaction event API
With this changeset, we provide an implementation for a transaction
event API. The goal is to support the emission of events with
transactions and sub-transactions, allowing a process post events that
may be rolled back later due to an error in the entire process. When
journaled, a consumer will be able to commit and rollback with the same
behavior as the producer.

Events are left to full definition by each component. We may require
more structure in the future to ensure consistency but we need more use
case before making decisions in that direction.

Events may be organized by a topic. A topic defines a single stream of
messages, that could be associated with a specific component. The topic
defines a grouped stream that may be compacted as one.

Only the contextual API is implemented here. After using, we will make a
determination to see how useful this across the board.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-05 14:53:13 -08:00
Michael Crosby
bde30191f4 Move service to execution package
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-05 14:33:31 -08:00
Kenfe-Mickael Laventure
c857213b4c move work on execution service
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-12-05 14:15:03 -08:00
Michael Crosby
dd5f74edec Remove design document
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-02 16:34:48 -08:00
Stephen J Day
d9a2f40463
api/execution: use Empty well-known type
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-02 16:04:13 -08:00
Stephen J Day
35822784c5
design: crop images in design docs
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-02 15:53:03 -08:00
Stephen J Day
523930a7c1 design: use png rather than svg
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-02 15:45:08 -08:00
Stephen J Day
351fbee358 design: provide rough architecture overview
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-02 15:38:59 -08:00
Michael Crosby
32bf0f69fd Start work on Container and Process model
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-02 15:37:16 -08:00
Michael Crosby
6641888667 Start work on execution server implementation
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-02 11:33:58 -08:00
Michael Crosby
d0e2f3778a Update execution and container services
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-02 10:28:16 -08:00
Michael Crosby
052a18f5a4 Add containerd high level design doc
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-02 10:28:16 -08:00
Stephen J Day
334f7e15cf Merge remote-tracking branch 'origin/master' 2016-12-01 21:38:35 -08:00
Stephen J Day
47f8b25d25
content: add Walk method to content store
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-01 21:37:58 -08:00
Stephen J Day
f898628330 api/mount: add common mount type for services
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-01 15:27:52 -08:00
Kenfe-Mickael Laventure
ef03000b27 Revert "proto: move all protos under a single root"
This reverts commit 352c6b590c.
2016-12-01 14:25:03 -08:00
Kenfe-Mickael Laventure
352c6b590c proto: move all protos under a single root
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-12-01 14:17:13 -08:00
Kenfe-Mickael Laventure
4cf40db861 proto: rename container service to execution
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-12-01 13:57:51 -08:00
Kenfe-Mickael Laventure
62ca43566e proto: rename container to execution
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-12-01 13:38:29 -08:00
Stephen J Day
8a36e1c6d1
api: use correct generation helper
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-01 13:31:57 -08:00
Stephen J Day
9f90fdbf07
api: generate protobufs using go generate
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-01 12:36:19 -08:00
Stephen J Day
4d1a30ff41
api: protos now pass lint checks
Generation is likely broken, but the Makefile linter now passes. Another
pass will have a fully working toolchain.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-01 12:22:05 -08:00
Stephen J Day
2507ee35bb
Makefile: remove all references to gomock
We won't make the mistake of using gomock in this project.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-01 12:11:47 -08:00
Stephen J Day
796b609741
cmd: move cli files to cmd package
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-01 12:07:45 -08:00
Stephen J Day
c4616487fe Merge remote-tracking branch 'origin/master' 2016-12-01 12:05:43 -08:00
Stephen J Day
ab088af2a6
cmd, Makefile: add initial build structure
This adds Makefile and cmd/protoc-gen-gogoctrd for generating protobufs.
More adjustments are required and the default target has been stubbed
out for now.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-12-01 12:04:23 -08:00
Michael Crosby
31abb1d8b6 Update readme format
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-01 12:00:06 -08:00
Michael Crosby
fdbae36237 Move oci and shim to execution package
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-01 11:06:32 -08:00
Michael Crosby
c2a57e2b00 Fix build because of imports in package
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-01 10:47:47 -08:00
Michael Crosby
2ead05e6f1 Add metrics endpoint for containerd
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-12-01 10:34:57 -08:00
Kenfe-Mickael Laventure
6c7b4b4c17 proto: make container.proto compile
Replaced tags with owner. This assumes we will provide a Metadata
endpoint since we're planning on using it for distribution.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-12-01 10:28:38 -08:00
Michael Crosby
f8e7d65b18 Update readme based on doc 2016-12-01 10:22:15 -08:00
Stephen J Day
aa4a1f851d
log: remove crusty context, replace with shiny
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-11-30 17:40:26 -08:00
Stephen J Day
29004dc3b4 Merge branch 'swarmkit-master' into merge-log-swarmkit 2016-11-30 17:30:09 -08:00
Michael Crosby
4764e8902f Add start of roadmap for the project
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-11-30 15:27:20 -08:00
Stephen J Day
cd4f1f98d8 log: mark grpc messages with module
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-11-30 14:07:51 -08:00
Michael Crosby
3ef3f74878 Add ctr run functions for mocking client
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-11-29 16:52:04 -08:00
Michael Crosby
3ebf1c456b Add containerd main binary code
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-11-29 16:10:41 -08:00
Michael Crosby
503b068f59 Change base package to containerd from containerkit
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-11-29 16:08:30 -08:00
Michael Crosby
51510a8806 Move osutil to sys package
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-11-29 15:38:24 -08:00
Michael Crosby
789ff967c1 Move epoll to sys package
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-11-29 15:37:06 -08:00
Michael Crosby
0806a0d8db Update container protos
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-11-29 15:36:25 -08:00
Stephen J Day
2498220eea
design: adjust description of snapshot diffs
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-11-29 11:47:34 -08:00
Stephen J Day
8a02e94fbf
design: describe the role of the mount
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-11-28 19:14:20 -08:00
Stephen J Day
3110cf37dc
snapshot: rename layer manipulator to snapshot
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-11-28 18:58:25 -08:00