Commit Graph

2476 Commits

Author SHA1 Message Date
Thomas Gazagnaire
2b48442fee miragesdk: update .gitignore
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-30 13:40:57 +02:00
Thomas Gazagnaire
9db898ceaf miragesdk: enable all warnings when compiling the projects
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-30 13:40:57 +02:00
Thomas Gazagnaire
b5a3d4b2aa miragesdk: rework the control plane protocol
Previously, the control plane was using HTTP client/server, that various people
found way too complex to run in a privileged container (for very good reasons).

So switching to a simpler binary protocol, using c-like structures. Will
probably switch to an other serialization protocol later (eg. protobuf
or cap-n-proto).

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-30 13:40:57 +02:00
Thomas Gazagnaire
df71c0f299 miragesdk: add mimimal tests for the SDK
Very minimal so far, but the plan is to add much more of them.

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-29 15:41:23 +02:00
Thomas Gazagnaire
c06454273b miragesdk: add a dev-clean target
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-29 14:28:19 +02:00
Thomas Gazagnaire
ec988eb93b miragesdk: fix dev target
Paths have changed since 47b9f08b16

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-29 14:27:38 +02:00
Justin Cormack
46cda7dc72 Merge pull request #1408 from samoht/reorg
mirageSDK: re-organise the file hierarchy
2017-03-29 14:05:19 +02:00
Thomas Gazagnaire
7d08325c7a miragesdk: move files around
The new hiearchy is:
- pkg/{init,mirage-compile}: additional Moby packages
- src/sdk -> the begining of the MirageOS SDK for Moby
- src/dhcp-client -> the code for the MirageOS dhcp-client service

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-29 13:39:20 +02:00
Thomas Gazagnaire
d008e859c6 miragesdk: first cut of a MirageSDK
Today the SDK only contains helper code to create secure Moby services based on
MirageOS. Today the SDK only defines the architecture and the communication
pipes between the privileged service and the calf; the proper communication
API will be specified after we have a few more use-cases.

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-29 12:34:48 +02:00
Thomas Gazagnaire
13d110e2c7 miragesdk: minor cleanups
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-29 12:34:41 +02:00
Anil Madhavapeddy
df33c8a4d3 Merge pull request #1407 from avsm/miragesdk-readme
miragesdk: more tweaks to README markdown
2017-03-28 22:20:18 +01:00
Justin Cormack
e85b432f19 Merge pull request #1373 from avsm/okernel
kernel: add build config for the experimental "split kernel"
2017-03-28 23:11:12 +02:00
Justin Cormack
44f2dbf723 Merge pull request #1397 from justincormack/more-docs
Architecture overview
2017-03-28 23:10:12 +02:00
Anil Madhavapeddy
5c9d5315e5 miragesdk: more tweaks to README markdown
Signed-off-by: Anil Madhavapeddy <anil@docker.com>
2017-03-28 22:07:15 +01:00
Anil Madhavapeddy
9fc9a4d62a Merge pull request #1406 from avsm/miragesdk-readme
Add projects/miragesdk README
2017-03-28 22:05:27 +01:00
Anil Madhavapeddy
3de5c415ef projects: remove double word typo in README.md
Signed-off-by: Anil Madhavapeddy <anil@docker.com>
2017-03-28 19:13:17 +01:00
Anil Madhavapeddy
ab72dbb0e4 miragesdk: add a README explaining the background of the project
Also link it to the roadmap and why-dhcp docs, and include review
comments from @yomimono

Signed-off-by: Anil Madhavapeddy <anil@docker.com>
2017-03-28 19:13:17 +01:00
Rolf Neugebauer
a5cbb4d592 Merge pull request #1400 from rneugeba/init
Fix console handling
2017-03-28 14:44:58 +01:00
Anil Madhavapeddy
c3d4049180 okernel: Make README more Markdown friendly
Signed-off-by: Anil Madhavapeddy <anil@docker.com>
2017-03-28 14:32:06 +01:00
Anil Madhavapeddy
bb49cab9c2 kernel: add build config for the experimental "split kernel"
The aim of the split kernel is to introduce a level of intra-kernel
protection into the kernel so that, amongst other things, it can
offer lifetime guarantees over kernel code and data integrity.

These patches only wire in the kernel build from a 4.11-rc3 snapshot.
The userspace tools will follow shortly.  Instructions came via
https://github.com/linux-okernel/linux-okernel (linux-okernel branch)
and via @edwards-n and @t-koulouris.

The build can be done via `cd projects/okernel && make`.

Signed-off-by: Anil Madhavapeddy <anil@docker.com>
2017-03-28 14:32:06 +01:00
Justin Cormack
f27c450268 Architecture overview
- also some tweaks in README.

fix #1394

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-03-28 15:29:34 +02:00
Rolf Neugebauer
fe43179c3d Merge pull request #1401 from rneugeba/kern-up
kernel: Update to 4.9.18/4.10.6/4.4.57
2017-03-28 14:28:27 +01:00
Justin Cormack
fe6bef5fa4 Merge pull request #1395 from samoht/mirage
More progress on the Mirage SDK
2017-03-28 15:04:17 +02:00
Rolf Neugebauer
d10a41a70a kernel: Update to 4.9.18/4.10.6/4.4.57
For 4.9.18 and 4.10.6 cherry-picked the VMBus leak fix
from Linus' tree instead of char-misc.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-03-28 13:43:21 +01:00
Thomas Gazagnaire
56085a3e6c miragesdk: re-org source code
Split the bits which can be re-used in other services (e.g. init dance
and the server-side of the control path). `main.ml` now only contains what
is specific to the DHCP logic (+ the /caf directory).

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-28 14:42:02 +02:00
Rolf Neugebauer
aa6a668f6c Merge pull request #1399 from samoht/typo
Fix typo in `moby run`
2017-03-28 12:01:47 +02:00
Rolf Neugebauer
02146dcfc5 init: update yaml files with new init image
Also add tty0 as a console to default moby image

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-03-28 10:53:44 +01:00
Rolf Neugebauer
eac2fdd88d init: Enable tty? as console
Enable tty0 and friends as console and start getty on them.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-03-28 10:46:58 +01:00
Thomas Gazagnaire
7fa21377b5 miragesdk: update TODO list
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-28 11:11:17 +02:00
Thomas Gazagnaire
1bee082c6c miragesdk: use a custom BPF filter to allow the calf to get a DHCP lease
Plus a few more minor improvements:

- compile with jbuilder.
- start working on the control path.

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-28 11:09:55 +02:00
Thomas Gazagnaire
b0f758a20d miragesdk: add strace in the init image
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-28 11:09:50 +02:00
Thomas Gazagnaire
18635ed2e1 miragesdk: remove dhccpd in the init container
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-28 11:09:50 +02:00
Thomas Gazagnaire
ebdf371421 miragesdk: fork pkg/init to experiment with removal of dhcpcd
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-28 11:09:50 +02:00
Thomas Gazagnaire
e4a092c0e1 Fix typo in moby run
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-03-28 11:08:28 +02:00
Justin Cormack
bf77b77fd3 Merge pull request #1396 from yomimono/why-dhcp
more documentation on why & what we're doing with dhcp
2017-03-27 19:00:12 +01:00
Justin Cormack
9fb503e2e1 Merge pull request #1392 from justincormack/kernel-nosyslinux
Remove syslinux from kernel build deps
2017-03-27 18:57:57 +01:00
Mindy Preston
46e650ede4 more documentation on why & what we're doing with dhcp
Signed-off-by: Mindy Preston <mindy.preston@docker.com>
2017-03-27 11:55:51 -05:00
Justin Cormack
400f4b6c56 Remove syslinux from kernel build deps
Unused. This should not affect anything, and I didnt actually bump
the kernel version; am working on te build in CI for this...

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-03-27 12:17:09 +01:00
Justin Cormack
8c8fda4c1f Merge pull request #1391 from justincormack/readme-go
Fix go install path
2017-03-27 10:53:05 +01:00
Justin Cormack
dec68b047b Fix go install path
Fix #1388

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-03-27 10:41:10 +01:00
Rolf Neugebauer
f7b4220bc6 Merge pull request #1389 from rneugeba/yaml
Rename .yaml to .yml
2017-03-27 11:06:04 +02:00
Rolf Neugebauer
e9fbe43b34 Rename .yaml to .yml
docker-compose and other utilities use the .yml extension.
For consistency rename all .yaml to .yml

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-03-27 09:53:26 +02:00
Justin Cormack
88286c6868 Merge pull request #1387 from justincormack/report-26mar
Weekly report 26 March
2017-03-26 14:23:29 +01:00
Justin Cormack
9d225884ba Weekly report for March 26 2017
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-03-26 12:42:41 +01:00
Justin Cormack
7925c86ae7 Add link to reports from main README
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-03-26 12:42:14 +01:00
Justin Cormack
1ef7c5c839 Merge pull request #1386 from justincormack/containerdup
Update containerd to current master
2017-03-25 20:07:15 +00:00
Justin Cormack
7b79053306 Update containerd to current master
- now supports image pull and run end to end
- update runc to last version before spec update fix #1302
- remove ext2 utils from init

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-03-25 18:15:52 +00:00
Justin Cormack
4fa2cc4cbe Merge pull request #1385 from rneugeba/infra
infrakit: Move the hyperkit instance plugin into the source directory
2017-03-25 13:28:35 +00:00
Rolf Neugebauer
6a29d153f5 infrakit: Move the hyperkit instance plugin into the source directory
- The tools directory ideally should not contain source code
- Removes double vendoring of packagages
- Makes it easer to hook the build into the top-level Makefile

Eventually, the plugin should be moved to the infrakit repo.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-03-25 13:02:45 +01:00
Justin Cormack
1c0a86caee Merge pull request #1382 from justincormack/moby-run
Use moby run to run hyperkit in Makefile
2017-03-24 19:07:48 +00:00