Merge pull request #626 from duglin/specCleanup

Cleanup the spec a bit to remove WG/git text that's not really part of the spec
This commit is contained in:
Mrunal Patel 2016-11-16 10:47:59 -08:00 committed by GitHub
commit 7839cbb5dc
5 changed files with 49 additions and 50 deletions

1
.gitignore vendored
View File

@ -1,4 +1,3 @@
output output
schema/validate schema/validate
code-of-conduct.md
version.md version.md

View File

@ -21,13 +21,8 @@ endif
# These docs are in an order that determines how they show up in the PDF/HTML docs. # These docs are in an order that determines how they show up in the PDF/HTML docs.
DOC_FILES := \ DOC_FILES := \
version.md \ version.md \
README.md \ spec.md \
code-of-conduct.md \
principles.md \ principles.md \
style.md \
ROADMAP.md \
implementations.md \
project.md \
bundle.md \ bundle.md \
runtime.md \ runtime.md \
runtime-linux.md \ runtime-linux.md \
@ -54,9 +49,6 @@ $(OUTPUT_DIRNAME)/$(DOC_FILENAME).html: $(DOC_FILES)
$(PANDOC) -f markdown_github -t html5 -o $(PANDOC_DST)$@ $(patsubst %,$(PANDOC_SRC)%,$(DOC_FILES)) $(PANDOC) -f markdown_github -t html5 -o $(PANDOC_DST)$@ $(patsubst %,$(PANDOC_SRC)%,$(DOC_FILES))
endif endif
code-of-conduct.md:
curl -o $@ https://raw.githubusercontent.com/opencontainers/tob/d2f9d68c1332870e40693fe077d311e0742bc73d/code-of-conduct.md
version.md: ./specs-go/version.go version.md: ./specs-go/version.go
go run ./.tool/version-doc.go > $@ go run ./.tool/version-doc.go > $@
@ -105,5 +97,5 @@ endif
.PHONY: clean .PHONY: clean
clean: clean:
rm -rf $(OUTPUT_DIRNAME) *~ rm -rf $(OUTPUT_DIRNAME) *~
rm -f code-of-conduct.md version.md rm -f version.md

View File

@ -2,38 +2,17 @@
The [Open Container Initiative](http://www.opencontainers.org/) develops specifications for standards on Operating System process and application containers. The [Open Container Initiative](http://www.opencontainers.org/) develops specifications for standards on Operating System process and application containers.
The specification can be found [here](spec.md).
Table of Contents Additional documentation about how this group operates:
- [Introduction](README.md) - [Code of Conduct](https://github.com/opencontainers/tob/blob/d2f9d68c1332870e40693fe077d311e0742bc73d/code-of-conduct.md)
- [Code of Conduct](#code-of-conduct) - [Style and Conventions](style.md)
- [Container Principles](principles.md) - [Roadmap](ROADMAP.md)
- [Style and Conventions](style.md) - [Implementations](implementations.md)
- [Roadmap](ROADMAP.md) - [Releases](RELEASES.md)
- [Implementations](implementations.md) - [project](project.md)
- [project](project.md) - [charter][charter]
- [Filesystem Bundle](bundle.md)
- Runtime and Lifecycle
- [General Runtime and Lifecycle](runtime.md)
- [Linux-specific Runtime and Lifecycle](runtime-linux.md)
- Configuration
- [General Configuration](config.md)
- [Linux-specific Configuration](config-linux.md)
- [Solaris-specific Configuration](config-solaris.md)
- [Windows-specific Configuration](config-windows.md)
- [Glossary](glossary.md)
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as described in [RFC 2119][rfc2119].
The key words "unspecified", "undefined", and "implementation-defined" are to be interpreted as described in the [rationale for the C99 standard][c99-unspecified].
An implementation is not compliant for a given CPU architecture if it fails to satisfy one or more of the MUST, REQUIRED, or SHALL requirements for the protocols it implements.
An implementation is compliant for a given CPU architecture if it satisfies all the MUST, REQUIRED, and SHALL requirements for the protocols it implements.
Protocols defined by this specification are:
* Linux containers: [runtime.md](runtime.md), [config.md](config.md), [config-linux.md](config-linux.md), and [runtime-linux.md](runtime-linux.md).
* Solaris containers: [runtime.md](runtime.md), [config.md](config.md), and [config-solaris.md](config-solaris.md).
* Windows containers: [runtime.md](runtime.md), [config.md](config.md), and [config-windows.md](config-windows.md).
# Use Cases # Use Cases
@ -66,10 +45,6 @@ Issues are used for bugs and actionable items and longer discussions can happen
The specification and code is licensed under the Apache 2.0 license found in the [LICENSE](./LICENSE) file. The specification and code is licensed under the Apache 2.0 license found in the [LICENSE](./LICENSE) file.
## Code of Conduct
Participation in the OCI community is governed by the [OCI Code of Conduct](https://github.com/opencontainers/tob/blob/d2f9d68c1332870e40693fe077d311e0742bc73d/code-of-conduct.md).
## Discuss your design ## Discuss your design
The project welcomes submissions, but please let everyone know what you are working on. The project welcomes submissions, but please let everyone know what you are working on.
@ -165,7 +140,6 @@ Read more on [How to Write a Git Commit Message](http://chris.beams.io/posts/git
* If there was important/useful/essential conversation or information, copy or include a reference * If there was important/useful/essential conversation or information, copy or include a reference
8. When possible, one keyword to scope the change in the subject (i.e. "README: ...", "runtime: ...") 8. When possible, one keyword to scope the change in the subject (i.e. "README: ...", "runtime: ...")
[c99-unspecified]: http://www.open-std.org/jtc1/sc22/wg14/www/C99RationaleV5.10.pdf#page=18
[UberConference]: https://www.uberconference.com/opencontainers [UberConference]: https://www.uberconference.com/opencontainers
[irc-logs]: http://ircbot.wl.linuxfoundation.org/eavesdrop/%23opencontainers/ [irc-logs]: http://ircbot.wl.linuxfoundation.org/eavesdrop/%23opencontainers/
[rfc2119]: http://tools.ietf.org/html/rfc2119 [charter]: https://www.opencontainers.org/about/governance

View File

@ -562,7 +562,7 @@ Its value is either slave, private, or shared.
## Masked Paths ## Masked Paths
**`maskedPaths`** (array of strings, OPTIONAL) will mask over the provided paths inside the container so that they cannot be read. **`maskedPaths`** (array of strings, OPTIONAL) will mask over the provided paths inside the container so that they cannot be read.
The values MUST be absolute paths in the [container namespace][container-namespace]. The values MUST be absolute paths in the [container namespace][container-namespace2].
###### Example ###### Example
@ -575,7 +575,7 @@ The values MUST be absolute paths in the [container namespace][container-namespa
## Readonly Paths ## Readonly Paths
**`readonlyPaths`** (array of strings, OPTIONAL) will set the provided paths as readonly inside the container. **`readonlyPaths`** (array of strings, OPTIONAL) will set the provided paths as readonly inside the container.
The values MUST be absolute paths in the [container namespace][container-namespace]. The values MUST be absolute paths in the [container namespace][container-namespace2].
###### Example ###### Example
@ -595,7 +595,7 @@ The values MUST be absolute paths in the [container namespace][container-namespa
"mountLabel": "system_u:object_r:svirt_sandbox_file_t:s0:c715,c811" "mountLabel": "system_u:object_r:svirt_sandbox_file_t:s0:c715,c811"
``` ```
[container-namespace]: glossary.md#container_namespace [container-namespace2]: glossary.md#container_namespace
[cgroup-v1]: https://www.kernel.org/doc/Documentation/cgroup-v1/cgroups.txt [cgroup-v1]: https://www.kernel.org/doc/Documentation/cgroup-v1/cgroups.txt
[cgroup-v1-blkio]: https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt [cgroup-v1-blkio]: https://www.kernel.org/doc/Documentation/cgroup-v1/blkio-controller.txt
[cgroup-v1-cpusets]: https://www.kernel.org/doc/Documentation/cgroup-v1/cpusets.txt [cgroup-v1-cpusets]: https://www.kernel.org/doc/Documentation/cgroup-v1/cpusets.txt

34
spec.md Normal file
View File

@ -0,0 +1,34 @@
# Open Container Initiative Runtime Specification
The [Open Container Initiative](http://www.opencontainers.org/) develops specifications for standards on Operating System process and application containers.
Protocols defined by this specification are:
* Linux containers: [runtime.md](runtime.md), [config.md](config.md), [config-linux.md](config-linux.md), and [runtime-linux.md](runtime-linux.md).
* Solaris containers: [runtime.md](runtime.md), [config.md](config.md), and [config-solaris.md](config-solaris.md).
* Windows containers: [runtime.md](runtime.md), [config.md](config.md), and [config-windows.md](config-windows.md).
# Table of Contents
- [Introduction](spec.md)
- [Notational Conventions](#notational-conventions)
- [Container Principles](principles.md)
- [Filesystem Bundle](bundle.md)
- [Runtime and Lifecycle](runtime.md)
- [Linux-specific Runtime and Lifecycle](runtime-linux.md)
- [Configuration](config.md)
- [Linux-specific Configuration](config-linux.md)
- [Solaris-specific Configuration](config-solaris.md)
- [Windows-specific Configuration](config-windows.md)
- [Glossary](glossary.md)
# Notational Conventions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as described in [RFC 2119][rfc2119].
The key words "unspecified", "undefined", and "implementation-defined" are to be interpreted as described in the [rationale for the C99 standard][c99-unspecified].
An implementation is not compliant for a given CPU architecture if it fails to satisfy one or more of the MUST, REQUIRED, or SHALL requirements for the protocols it implements.
An implementation is compliant for a given CPU architecture if it satisfies all the MUST, REQUIRED, and SHALL requirements for the protocols it implements.
[c99-unspecified]: http://www.open-std.org/jtc1/sc22/wg14/www/C99RationaleV5.10.pdf#page=18
[rfc2119]: http://tools.ietf.org/html/rfc2119