diff --git a/ROADMAP.md b/ROADMAP.md new file mode 100644 index 0000000..8678e25 --- /dev/null +++ b/ROADMAP.md @@ -0,0 +1,69 @@ +# containerd roadmap + +This is a high level roadmap for the project that outlines what is currently being worked on, what comes next, and where you can help. + +The following are the different status the various phases of development can be in: +* Not Started - no work or thinking has been done towards the goal +* In Design - design work has started for the component and you can find design documents in the `design` folder +* In Progress - design has mostly finished and development has started +* Completed - the development work has been completed +* Stable - the apis for the phase are feature complete and considered stable + +## Phase 1 + +#### Status: In Progress + +### GRPC API + +**Document:** + +We are going from a top down design for filling out this missing pieces of containerd and design of the API. + +### Design + +**Document:** + +The high level design work is needed so that the architecture of containerd stays consistent throughout the development process. + +### Build & Test Process + +**Document:** + +We need to have a simple build and test process for new developers to bootstrap their environments. +Because containerd will be the base of many high level systems we need to have a simple build process that does +not require high level tooling. + +## Phase 2 + +Phase 2 includes most of the design and development work for the execution and storage layers of containerd. +It will include porting over existing "graph drivers" from Docker Engine and finding a common model for representing snapshots for layered filesystems. + +This will also include moving the existing execution code support OCI's Runtime Spec and the existing containerd execution code. + +#### Status: In Design + +### Execution + +### Storage + +**Document:** https://github.com/docker/containerkit/blob/master/design/snapshots.md + +## Phase 3 + +Phase 3 involves porting the network drivers from libnetwork and finding a good middle ground between the abstractions of libnetwork and the CNI spec. + +This also includes getting support for the OCI Image spec built into containerd. + +#### Status: Not Started + +### Distribution + +### Networking + +## Phase 4 + +Phase 4 includes work on helping with the releases and packaging of containerd for various distros. + +#### Status: Not Started + +### Release Process & Tools