Skip to content

Commit d49c29f

Browse files
committed
config: Replace "required" with "REQUIRED"
In all of these cases we want to use the RFC 2119 semantics. Generated with: $ sed -i 's/required/REQUIRED/g' config*.md after which I rolled back the change for: ...controllers required to fulfill... since that was already MUSTed. Signed-off-by: W. Trevor King <[email protected]>
1 parent c35cf57 commit d49c29f

File tree

2 files changed

+27
-27
lines changed

2 files changed

+27
-27
lines changed

config-linux.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ For more information, see [the man page](http://man7.org/linux/man-pages/man7/na
2626
Namespaces are specified as an array of entries inside the `namespaces` root field.
2727
The following parameters can be specified to setup namespaces:
2828

29-
* **`type`** *(string, required)* - namespace type. The following namespaces types are supported:
29+
* **`type`** *(string, REQUIRED)* - namespace type. The following namespaces types are supported:
3030
* **`pid`** processes inside the container will only be able to see other processes inside the same container.
3131
* **`network`** the container will have its own network stack.
3232
* **`mount`** the container will have an isolated mount table.
@@ -104,10 +104,10 @@ The runtime may supply them however it likes (with [mknod][mknod.2], by bind mou
104104

105105
The following parameters can be specified:
106106

107-
* **`type`** *(string, required)* - type of device: `c`, `b`, `u` or `p`.
107+
* **`type`** *(string, REQUIRED)* - type of device: `c`, `b`, `u` or `p`.
108108
More info in [mknod(1)][mknod.1].
109-
* **`path`** *(string, required)* - full path to device inside container.
110-
* **`major, minor`** *(int64, required unless **`type`** is `p`)* - [major, minor numbers][devices] for the device.
109+
* **`path`** *(string, REQUIRED)* - full path to device inside container.
110+
* **`major, minor`** *(int64, REQUIRED unless **`type`** is `p`)* - [major, minor numbers][devices] for the device.
111111
* **`fileMode`** *(uint32, OPTIONAL)* - file mode for the device.
112112
You can also control access to devices [with cgroups](#device-whitelist).
113113
* **`uid`** *(uint32, OPTIONAL)* - id of device owner.
@@ -204,7 +204,7 @@ The runtime MUST apply entries in the listed order.
204204

205205
The following parameters can be specified:
206206

207-
* **`allow`** *(boolean, required)* - whether the entry is allowed or denied.
207+
* **`allow`** *(boolean, REQUIRED)* - whether the entry is allowed or denied.
208208
* **`type`** *(string, OPTIONAL)* - type of device: `a` (all), `c` (char), or `b` (block).
209209
`null` or unset values mean "all", mapping to `a`.
210210
* **`major, minor`** *(int64, OPTIONAL)* - [major, minor numbers][devices] for the device.
@@ -347,15 +347,15 @@ The following parameters can be specified to setup the controller:
347347
* **`blkioLeafWeight`** *(uint16, OPTIONAL)* - equivalents of `blkioWeight` for the purpose of deciding how much weight tasks in the given cgroup has while competing with the cgroup's child cgroups. The range is from 10 to 1000.
348348

349349
* **`blkioWeightDevice`** *(array, OPTIONAL)* - specifies the list of devices which will be bandwidth rate limited. The following parameters can be specified per-device:
350-
* **`major, minor`** *(int64, required)* - major, minor numbers for device. More info in `man mknod`.
350+
* **`major, minor`** *(int64, REQUIRED)* - major, minor numbers for device. More info in `man mknod`.
351351
* **`weight`** *(uint16, OPTIONAL)* - bandwidth rate for the device, range is from 10 to 1000
352352
* **`leafWeight`** *(uint16, OPTIONAL)* - bandwidth rate for the device while competing with the cgroup's child cgroups, range is from 10 to 1000, CFQ scheduler only
353353

354354
You must specify at least one of `weight` or `leafWeight` in a given entry, and can specify both.
355355

356356
* **`blkioThrottleReadBpsDevice`**, **`blkioThrottleWriteBpsDevice`**, **`blkioThrottleReadIOPSDevice`**, **`blkioThrottleWriteIOPSDevice`** *(array, OPTIONAL)* - specify the list of devices which will be IO rate limited. The following parameters can be specified per-device:
357-
* **`major, minor`** *(int64, required)* - major, minor numbers for device. More info in `man mknod`.
358-
* **`rate`** *(uint64, required)* - IO rate limit for the device
357+
* **`major, minor`** *(int64, REQUIRED)* - major, minor numbers for device. More info in `man mknod`.
358+
* **`rate`** *(uint64, REQUIRED)* - IO rate limit for the device
359359

360360
###### Example
361361

@@ -401,9 +401,9 @@ For more information, see the [kernel cgroups documentation about HugeTLB][cgrou
401401

402402
`hugepageLimits` is an array of entries, each having the following structure:
403403

404-
* **`pageSize`** *(string, required)* - hugepage size
404+
* **`pageSize`** *(string, REQUIRED)* - hugepage size
405405

406-
* **`limit`** *(uint64, required)* - limit in bytes of *hugepagesize* HugeTLB usage
406+
* **`limit`** *(uint64, REQUIRED)* - limit in bytes of *hugepagesize* HugeTLB usage
407407

408408
###### Example
409409

@@ -427,8 +427,8 @@ The following parameters can be specified to setup these cgroup controllers:
427427

428428
* **`priorities`** *(array, OPTIONAL)* - specifies a list of objects of the priorities assigned to traffic originating from
429429
processes in the group and egressing the system on various interfaces. The following parameters can be specified per-priority:
430-
* **`name`** *(string, required)* - interface name
431-
* **`priority`** *(uint32, required)* - priority applied to the interface
430+
* **`name`** *(string, REQUIRED)* - interface name
431+
* **`priority`** *(uint32, REQUIRED)* - priority applied to the interface
432432

433433
###### Example
434434

@@ -455,7 +455,7 @@ For more information, see [the pids cgroup man page][cgroup-v1-pids].
455455

456456
The following parameters can be specified to setup the controller:
457457

458-
* **`limit`** *(int64, required)* - specifies the maximum number of tasks in the cgroup
458+
* **`limit`** *(int64, REQUIRED)* - specifies the maximum number of tasks in the cgroup
459459

460460
###### Example
461461

config.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Below is a detailed description of each field defined in the configuration forma
1010

1111
## Specification version
1212

13-
* **`ociVersion`** (string, required) MUST be in [SemVer v2.0.0](http://semver.org/spec/v2.0.0.html) format and specifies the version of the Open Container Runtime Specification with which the bundle complies.
13+
* **`ociVersion`** (string, REQUIRED) MUST be in [SemVer v2.0.0](http://semver.org/spec/v2.0.0.html) format and specifies the version of the Open Container Runtime Specification with which the bundle complies.
1414
The Open Container Runtime Specification follows semantic versioning and retains forward and backward compatibility within major versions.
1515
For example, if a configuration is compliant with version 1.1 of this specification, it is compatible with all runtimes that support any 1.1 or later release of this specification, but is not compatible with a runtime that supports 1.0 and not 1.1.
1616

@@ -22,9 +22,9 @@ For example, if a configuration is compliant with version 1.1 of this specificat
2222

2323
## Root Configuration
2424

25-
**`root`** (object, required) configures the container's root filesystem.
25+
**`root`** (object, REQUIRED) configures the container's root filesystem.
2626

27-
* **`path`** (string, required) Specifies the path to the root filesystem for the container.
27+
* **`path`** (string, REQUIRED) Specifies the path to the root filesystem for the container.
2828
The path can be an absolute path (starting with /) or a relative path (not starting with /), which is relative to the bundle.
2929
For example (Linux), with a bundle at `/to/bundle` and a root filesystem at `/to/bundle/rootfs`, the `path` value can be either `/to/bundle/rootfs` or `rootfs`.
3030
A directory MUST exist at the path declared by the field.
@@ -45,12 +45,12 @@ For example, if a configuration is compliant with version 1.1 of this specificat
4545
The runtime MUST mount entries in the listed order.
4646
The parameters are similar to the ones in [the Linux mount system call](http://man7.org/linux/man-pages/man2/mount.2.html).
4747

48-
* **`destination`** (string, required) Destination of mount point: path inside container.
48+
* **`destination`** (string, REQUIRED) Destination of mount point: path inside container.
4949
For the Windows operating system, one mount destination MUST NOT be nested within another mount (e.g., c:\\foo and c:\\foo\\bar).
50-
* **`type`** (string, required) The filesystem type of the filesystem to be mounted.
50+
* **`type`** (string, REQUIRED) The filesystem type of the filesystem to be mounted.
5151
Linux: *filesystemtype* argument supported by the kernel are listed in */proc/filesystems* (e.g., "minix", "ext2", "ext3", "jfs", "xfs", "reiserfs", "msdos", "proc", "nfs", "iso9660").
5252
Windows: ntfs.
53-
* **`source`** (string, required) A device name, but can also be a directory name or a dummy.
53+
* **`source`** (string, REQUIRED) A device name, but can also be a directory name or a dummy.
5454
Windows: the volume name that is the target of the mount point, \\?\Volume\{GUID}\ (on Windows source is called target).
5555
* **`options`** (list of strings, OPTIONAL) Mount options of the filesystem to be used.
5656
Linux: [supported][mount.8-filesystem-independent] [options][mount.8-filesystem-specific] are listed in [mount(8)][mount.8].
@@ -92,15 +92,15 @@ See links for details about [mountvol](http://ss64.com/nt/mountvol.html) and [Se
9292

9393
## Process configuration
9494

95-
**`process`** (object, required) configures the container process.
95+
**`process`** (object, REQUIRED) configures the container process.
9696

9797
* **`terminal`** (bool, OPTIONAL) specifies whether you want a terminal attached to that process, defaults to false.
98-
* **`cwd`** (string, required) is the working directory that will be set for the executable.
98+
* **`cwd`** (string, REQUIRED) is the working directory that will be set for the executable.
9999
This value MUST be an absolute path.
100100
* **`env`** (array of strings, OPTIONAL) contains a list of variables that will be set in the process's environment prior to execution.
101101
Elements in the array are specified as Strings in the form "KEY=value".
102102
The left hand side MUST consist solely of letters, digits, and underscores `_` as outlined in [IEEE Std 1003.1-2001](http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap08.html).
103-
* **`args`** (array of strings, required) executable to launch and any flags as an array.
103+
* **`args`** (array of strings, REQUIRED) executable to launch and any flags as an array.
104104
The executable is the first element and MUST be available at the given path inside of the rootfs.
105105
If the executable path is not an absolute path then the search $PATH is interpreted to find the executable.
106106

@@ -126,8 +126,8 @@ The user for the process is a platform-specific structure that allows specific c
126126

127127
For Linux and Solaris based systems the user structure has the following fields:
128128

129-
* **`uid`** (int, required) specifies the user ID in the [container namespace][container-namespace].
130-
* **`gid`** (int, required) specifies the group ID in the [container namespace][container-namespace].
129+
* **`uid`** (int, REQUIRED) specifies the user ID in the [container namespace][container-namespace].
130+
* **`gid`** (int, REQUIRED) specifies the group ID in the [container namespace][container-namespace].
131131
* **`additionalGids`** (array of ints, OPTIONAL) specifies additional group IDs (in the [container namespace][container-namespace]) to be added to the process.
132132

133133
_Note: symbolic name for uid and gid, such as uname and gname respectively, are left to upper levels to derive (i.e. `/etc/passwd` parsing, NSS, etc)_
@@ -230,11 +230,11 @@ For Windows based systems the user structure has the following fields:
230230

231231
**`platform`** specifies the configuration's target platform.
232232

233-
* **`os`** (string, required) specifies the operating system family this image targets.
233+
* **`os`** (string, REQUIRED) specifies the operating system family this image targets.
234234
The runtime MUST generate an error if it does not support the configured **`os`**.
235235
Bundles SHOULD use, and runtimes SHOULD understand, **`os`** entries listed in the Go Language document for [`$GOOS`][go-environment].
236236
If an operating system is not included in the `$GOOS` documentation, it SHOULD be submitted to this specification for standardization.
237-
* **`arch`** (string, required) specifies the instruction set for which the binaries in the image have been compiled.
237+
* **`arch`** (string, REQUIRED) specifies the instruction set for which the binaries in the image have been compiled.
238238
The runtime MUST generate an error if it does not support the configured **`arch`**.
239239
Values for **`arch`** SHOULD use, and runtimes SHOULD understand, **`arch`** entries listed in the Go Language document for [`$GOARCH`][go-environment].
240240
If an architecture is not included in the `$GOARCH` documentation, it SHOULD be submitted to this specification for standardization.
@@ -341,7 +341,7 @@ If a hook returns a non-zero exit code, then an error is logged and the remainin
341341
}
342342
```
343343

344-
`path` is required for a hook.
344+
`path` is REQUIRED for a hook.
345345
`args` and `env` are OPTIONAL.
346346
`timeout` is the number of seconds before aborting the hook.
347347
The semantics are the same as `Path`, `Args` and `Env` in [golang Cmd](https://golang.org/pkg/os/exec/#Cmd).

0 commit comments

Comments
 (0)