Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use RFC 2119's keywords (MUST, MAY, ...) #9

Merged
merged 1 commit into from
Dec 17, 2015
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions runtime.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Operations

A conformant runtime should provide an executable (called `funC` in the following examples).
The template for supported commands is:
A conformant runtime MUST provide an executable (called `funC` in the following examples).
That executable MUST support commands with the following template:

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed, looks good.

```sh
$ funC [global-options] <COMMAND> [command-specific-options] <command-specific-arguments>
Expand All @@ -26,14 +26,14 @@ For example, POSIX systems define [`LANG` and related environment variables][pos

Print the runtime version and exit.

* *Options* None are required, but the runtime may support options.
* *Options* None are required, but the runtime MAY support options.
* *Standard streams*
* *stdin:* The runtime may not attempt to read from its stdin.
* *stdout:* The runtime must print its name, a space, and its version as the first line to its stdout.
The name may contain any Unicode characters except a control codes and newlines.
The runtime may print additional lines its stdout, and the format for those lines is not specified in this document.
* *stderr:* The runtime may print diagnostic messages to stderr, and the format for those lines is not specified in this document.
* *Exit code:* The runtime must exit with zero.
* *stdin:* The runtime MUST NOT attempt to read from its stdin.
* *stdout:* The runtime MUST print its name, a space, and its version as the first line to its stdout.
The name MAY contain any Unicode characters, but MUST NOT contain control codes or newlines.
The runtime MAY print additional lines to its stdout, and the format for those lines is not specified in this document.
* *stderr:* The runtime MAY print diagnostic messages to stderr, and the format for those lines is not specified in this document.
* *Exit code:* The runtime MUST exit with zero.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed. Just need to change "its stdout" to "to its stdout"

Example:
```sh
Expand All @@ -52,11 +52,11 @@ Start a container from a bundle directory.
* *`--id <ID>`* Set the container ID when creating or joining a container.
If not set, the runtime is free to pick any ID that is not already in use.
* *`--bundle <PATH>`* Override the path to the bundle directory (defaults to the current working directory).
* *Standard streams:* The runtime must attach its standard streams directly to the application process without inspection.
* *Standard streams:* The runtime MUST attach its standard streams directly to the application process without inspection.
* *Environment variables*
* *`LISTEN_FDS`:* The number of file descriptors passed.
For example, `LISTEN_FDS=2` would mean passing 3 and 4 (in addition to the [standard streams][standard-streams]) to support [socket activation][systemd-listen-fds].
* *Exit code:* The runtime must exit with the application process's exit code.
For example, `LISTEN_FDS=2` would mean that the runtime MUST pass file descriptors 3 and 4 to the application process (in addition to the [standard streams][standard-streams]) to support [socket activation][systemd-listen-fds].
* *Exit code:* The runtime MUST exit with the application process's exit code.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed, looks good to me.

Example:
```sh
Expand Down