Skip to content
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
13 changes: 9 additions & 4 deletions config.md
Original file line number Diff line number Diff line change
Expand Up @@ -391,14 +391,19 @@ If a hook returns a non-zero exit code, then an error is logged and the remainin

**`annotations`** (object, OPTIONAL) contains arbitrary metadata for the container.
This information MAY be structured or unstructured.
Annotations MUST be a key-value map where both the key and value MUST be strings.
While the value MUST be present, it MAY be an empty string.
Keys MUST be unique and MUST NOT be an empty string within this map, and best practice is to namespace the keys.
Annotations MUST be a key-value map.
If there are no annotations then this property MAY either be absent or an empty map.

Keys MUST be strings.
Keys MUST be unique within this map.
Keys MUST NOT be an empty string.
Keys SHOULD be named using a reverse domain notation - e.g. `com.example.myKey`.
Copy link
Contributor

Choose a reason for hiding this comment

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

while we are here, its also clearer to me when we restructure the above paragraph to follow one a keyword per line.
For example

Annotations MUST be a key-value map
Keys MUST be string.
Keys MUST be unique within this map.
Keys MUST NOT be empty.
Keys using the `org.opencontainers` namespace are reserved and MUST NOT be used by subsequent specifications.
Values MUST be string.
Values MUST be present.
Values MAY be empty.

wdyt ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done (with paragraphs and slightly different wording) in 2c8feeb9cc6137.

Keys using the `org.opencontainers` namespace are reserved and MUST NOT be used by subsequent specifications.
If there are no annotations then this property MAY either be absent or an empty map.
Implementations that are reading/processing this configuration file MUST NOT generate an error if they encounter an unknown annotation key.

Values MUST be strings.
Values MAY be an empty string.

```json
"annotations": {
"com.example.gpu-cores": "2"
Expand Down