Open JSON schema file
{
"_type": "nixopsState",
"resources": {},
"deployments": {}
}
Raw JSON schema
Title: NixOps4 State Event/File Schema
| |
| Type | combining |
| Required | No |
| Additional properties | Any type allowed |
Description: This schema describes the shape of state events and the cumulative state file. The state file is a JSON file that contains the current state of the NixOps4 deployment. The state events are a sequence of changes to the state file, and are used to track the history of the deployment.
1. Property StateEvent
| |
| Type | object |
| Required | No |
| Additional properties | Any type allowed |
| Defined in | #/definitions/StateEvent |
| Property | Type | Pattern | Title/Description |
| + index | integer | No | The index of the event. This should be a monotonically increasing number that is used to order the events. A lack of monotonicity indicates concurrent operations that may need manual reconciliation. |
| + meta | object | No | - |
| + patch | array | No | JSON Patch |
1.1. Property index
Description: The index of the event. This should be a monotonically increasing number that is used to order the events. A lack of monotonicity indicates concurrent operations that may need manual reconciliation.
| |
| Type | object |
| Required | Yes |
| Additional properties | Any type allowed |
| Property | Type | Pattern | Title/Description |
| + time | string | No | The time at which the event occurred. |
| - | object | No | - |
1.2.1. Property time
| |
| Type | string |
| Required | Yes |
| Format | date-time |
Description: The time at which the event occurred.
1.3. Property patch
Title: JSON Patch
| |
| Type | array |
| Required | Yes |
| Defined in | #/definitions/Patch |
Description: An RFC 6902 JSON Patch document. See https://tools.ietf.org/html/rfc6902, https://json.schemastore.org/json-patch.json
| Array restrictions |
| Min items | N/A |
| Max items | N/A |
| Items unicity | False |
| Additional items | False |
| Tuple validation | See below |
| Each item of this array must be | Description |
| patch items | - |
1.3.1. patch items
| |
| Type | combining |
| Required | No |
| Additional properties | Any type allowed |
1.3.1.1. Property item 0
| |
| Type | object |
| Required | No |
| Additional properties | Not allowed |
| Property | Type | Pattern | Title/Description |
| + path | string | No | A JSON Pointer path. |
| + op | enum (of string) | No | The operation to perform. |
| + value | object | No | The value to add, replace or test. |
####### 1.3.1.1.1. Property path
| |
| Type | string |
| Required | Yes |
| Defined in | #/definitions/path |
Description: A JSON Pointer path.
| Restrictions | |
| Must match regular expression | ^#?(|(/([^/~]|~[01])*)*)$ Test |
####### 1.3.1.1.2. Property op
| |
| Type | enum (of string) |
| Required | Yes |
Description: The operation to perform.
Must be one of:
####### 1.3.1.1.3. Property value
| |
| Type | object |
| Required | Yes |
| Additional properties | Any type allowed |
Description: The value to add, replace or test.
1.3.1.2. Property item 1
| |
| Type | object |
| Required | No |
| Additional properties | Not allowed |
| Property | Type | Pattern | Title/Description |
| + path | string | No | A JSON Pointer path. |
| + op | enum (of string) | No | The operation to perform. |
####### 1.3.1.2.1. Property path
| |
| Type | string |
| Required | Yes |
| Same definition as | path |
Description: A JSON Pointer path.
####### 1.3.1.2.2. Property op
| |
| Type | enum (of string) |
| Required | Yes |
Description: The operation to perform.
Must be one of:
1.3.1.3. Property item 2
| |
| Type | object |
| Required | No |
| Additional properties | Not allowed |
| Property | Type | Pattern | Title/Description |
| + path | string | No | A JSON Pointer path. |
| + op | enum (of string) | No | The operation to perform. |
| + from | string | No | A JSON Pointer path pointing to the location to move/copy from. |
####### 1.3.1.3.1. Property path
| |
| Type | string |
| Required | Yes |
| Same definition as | path |
Description: A JSON Pointer path.
####### 1.3.1.3.2. Property op
| |
| Type | enum (of string) |
| Required | Yes |
Description: The operation to perform.
Must be one of:
####### 1.3.1.3.3. Property from
| |
| Type | string |
| Required | Yes |
| Defined in | #/definitions/path |
Description: A JSON Pointer path pointing to the location to move/copy from.
| Restrictions | |
| Must match regular expression | ^#?(|(/([^/~]|~[01])*)*)$ Test |
2. Property State
| |
| Type | object |
| Required | No |
| Additional properties | Any type allowed |
| Defined in | #/definitions/State |
| Property | Type | Pattern | Title/Description |
| + _type | enum (of string) | No | The type of the state. This is used to distinguish the format of the NixOps state. Currently only one type has been developed: `nixopsState`. Any code that reads the state should reject any other type. |
| + resources | object | No | - |
| + deployments | object | No | A set of nested deployments, TBD |
2.1. Property _type
| |
| Type | enum (of string) |
| Required | Yes |
Description: The type of the state. This is used to distinguish the format of the NixOps state. Currently only one type has been developed: nixopsState. Any code that reads the state should reject any other type.
Must be one of:
2.2. Property resources
| |
| Type | object |
| Required | Yes |
| Additional properties | Any type allowed |
| Property | Type | Pattern | Title/Description |
| - | object | No | - |
2.3. Property deployments
| |
| Type | object |
| Required | Yes |
| Additional properties | Any type allowed |
Description: A set of nested deployments, TBD