diff --git a/src/schemas/json/dofigen.json b/src/schemas/json/dofigen.json index 41ed7c02ad5..2412f01d564 100644 --- a/src/schemas/json/dofigen.json +++ b/src/schemas/json/dofigen.json @@ -118,6 +118,17 @@ "extend": { "$ref": "#/definitions/OneOrMany_Resource" }, + "globalArg": { + "anyOf": [ + { + "$ref": "#/definitions/HashMapPatch_string_string" + }, + { + "type": "null", + "nullable": true + } + ] + }, "healthcheck": { "anyOf": [ { @@ -151,6 +162,18 @@ } ] }, + "network": { + "anyOf": [ + { + "$ref": "#/definitions/Network" + }, + { + "type": "null", + "nullable": true + } + ], + "default": null + }, "root": { "anyOf": [ { @@ -173,6 +196,29 @@ } ] }, + "secret": { + "anyOf": [ + { + "$ref": "#/definitions/VecDeepPatch_Secret" + }, + { + "type": "null", + "nullable": true + } + ] + }, + "security": { + "anyOf": [ + { + "$ref": "#/definitions/Security" + }, + { + "type": "null", + "nullable": true + } + ], + "default": null + }, "shell": { "anyOf": [ { @@ -184,6 +230,28 @@ } ] }, + "ssh": { + "anyOf": [ + { + "$ref": "#/definitions/VecDeepPatch_Ssh" + }, + { + "type": "null", + "nullable": true + } + ] + }, + "tmpfs": { + "anyOf": [ + { + "$ref": "#/definitions/VecDeepPatch_ParsableStruct_TmpFs" + }, + { + "type": "null", + "nullable": true + } + ] + }, "user": { "anyOf": [ { @@ -293,6 +361,11 @@ "type": ["string", "null"], "default": null, "nullable": true + }, + "unpack": { + "type": ["boolean", "null"], + "default": null, + "nullable": true } }, "additionalProperties": false @@ -301,6 +374,11 @@ "title": "AddGitRepo", "type": "object", "properties": { + "checksum": { + "type": ["string", "null"], + "default": null, + "nullable": true + }, "chmod": { "type": ["string", "number", "null"], "default": null, @@ -738,6 +816,11 @@ "default": null, "nullable": true }, + "platform": { + "type": ["string", "null"], + "default": null, + "nullable": true + }, "port": { "type": ["integer", "null"], "default": null, @@ -795,6 +878,26 @@ } ] }, + "Network": { + "description": "Represents a network configuration", + "oneOf": [ + { + "description": "Run in the default network.", + "type": "string", + "const": "default" + }, + { + "description": "Run with no network access.", + "type": "string", + "const": "none" + }, + { + "description": "Run in the host's network environment.", + "type": "string", + "const": "host" + } + ] + }, "OneOrMany_Resource": { "title": "OneOrMany", "oneOf": [ @@ -864,6 +967,17 @@ } ] }, + "ParsableStruct_TmpFs": { + "title": "ParsableStruct", + "oneOf": [ + { + "$ref": "#/definitions/TmpFs" + }, + { + "type": "string" + } + ] + }, "ParsableStruct_User": { "title": "ParsableStruct", "oneOf": [ @@ -944,6 +1058,18 @@ } ] }, + "network": { + "anyOf": [ + { + "$ref": "#/definitions/Network" + }, + { + "type": "null", + "nullable": true + } + ], + "default": null + }, "run": { "anyOf": [ { @@ -955,6 +1081,29 @@ } ] }, + "secret": { + "anyOf": [ + { + "$ref": "#/definitions/VecDeepPatch_Secret" + }, + { + "type": "null", + "nullable": true + } + ] + }, + "security": { + "anyOf": [ + { + "$ref": "#/definitions/Security" + }, + { + "type": "null", + "nullable": true + } + ], + "default": null + }, "shell": { "anyOf": [ { @@ -965,6 +1114,118 @@ "nullable": true } ] + }, + "ssh": { + "anyOf": [ + { + "$ref": "#/definitions/VecDeepPatch_Ssh" + }, + { + "type": "null", + "nullable": true + } + ] + }, + "tmpfs": { + "anyOf": [ + { + "$ref": "#/definitions/VecDeepPatch_ParsableStruct_TmpFs" + }, + { + "type": "null", + "nullable": true + } + ] + } + } + }, + "Secret": { + "title": "Secret", + "type": "object", + "properties": { + "env": { + "type": ["string", "null"], + "default": null, + "nullable": true + }, + "gid": { + "type": ["integer", "null"], + "default": null, + "maximum": 65535, + "minimum": 0, + "nullable": true + }, + "id": { + "type": ["string", "null"], + "default": null, + "nullable": true + }, + "mode": { + "type": ["string", "null"], + "default": null, + "nullable": true + }, + "required": { + "type": ["boolean", "null"], + "default": null, + "nullable": true + }, + "target": { + "type": ["string", "null"], + "default": null, + "nullable": true + }, + "uid": { + "type": ["integer", "null"], + "default": null, + "maximum": 65535, + "minimum": 0, + "nullable": true + } + } + }, + "Security": { + "description": "Represents a security mode", + "type": "string", + "enum": ["sandbox", "insecure"] + }, + "Ssh": { + "title": "Ssh", + "type": "object", + "properties": { + "gid": { + "type": ["integer", "null"], + "default": null, + "maximum": 65535, + "minimum": 0, + "nullable": true + }, + "id": { + "type": ["string", "null"], + "default": null, + "nullable": true + }, + "mode": { + "type": ["string", "null"], + "default": null, + "nullable": true + }, + "required": { + "type": ["boolean", "null"], + "default": null, + "nullable": true + }, + "target": { + "type": ["string", "null"], + "default": null, + "nullable": true + }, + "uid": { + "type": ["integer", "null"], + "default": null, + "maximum": 65535, + "minimum": 0, + "nullable": true } } }, @@ -1038,6 +1299,18 @@ } ] }, + "network": { + "anyOf": [ + { + "$ref": "#/definitions/Network" + }, + { + "type": "null", + "nullable": true + } + ], + "default": null + }, "root": { "anyOf": [ { @@ -1060,6 +1333,29 @@ } ] }, + "secret": { + "anyOf": [ + { + "$ref": "#/definitions/VecDeepPatch_Secret" + }, + { + "type": "null", + "nullable": true + } + ] + }, + "security": { + "anyOf": [ + { + "$ref": "#/definitions/Security" + }, + { + "type": "null", + "nullable": true + } + ], + "default": null + }, "shell": { "anyOf": [ { @@ -1071,6 +1367,28 @@ } ] }, + "ssh": { + "anyOf": [ + { + "$ref": "#/definitions/VecDeepPatch_Ssh" + }, + { + "type": "null", + "nullable": true + } + ] + }, + "tmpfs": { + "anyOf": [ + { + "$ref": "#/definitions/VecDeepPatch_ParsableStruct_TmpFs" + }, + { + "type": "null", + "nullable": true + } + ] + }, "user": { "anyOf": [ { @@ -1124,6 +1442,22 @@ {} ] }, + "TmpFs": { + "title": "TmpFs", + "type": "object", + "properties": { + "size": { + "type": ["string", "null"], + "default": null, + "nullable": true + }, + "target": { + "type": ["string", "null"], + "default": null, + "nullable": true + } + } + }, "UnknownPatch": { "title": "CopyOptions", "type": "object", @@ -1380,6 +1714,153 @@ } ] }, + "VecDeepPatch_ParsableStruct_TmpFs": { + "title": "VecDeepPatch", + "oneOf": [ + { + "$ref": "#/definitions/ParsableStruct_TmpFs" + }, + { + "type": "array", + "items": { + "$ref": "#/definitions/ParsableStruct_TmpFs" + } + }, + { + "type": "object", + "patternProperties": { + "^\\+$": { + "type": "array", + "items": { + "$ref": "#/definitions/ParsableStruct_TmpFs" + } + }, + "^\\+\\d+$": { + "type": "array", + "items": { + "$ref": "#/definitions/ParsableStruct_TmpFs" + } + }, + "^\\d+$": { + "$ref": "#/definitions/ParsableStruct_TmpFs" + }, + "^\\d+<$": { + "$ref": "#/definitions/ParsableStruct_TmpFs" + }, + "^\\d+\\+$": { + "type": "array", + "items": { + "$ref": "#/definitions/ParsableStruct_TmpFs" + } + }, + "_": { + "type": "array", + "items": { + "$ref": "#/definitions/ParsableStruct_TmpFs" + } + } + } + } + ] + }, + "VecDeepPatch_Secret": { + "title": "VecDeepPatch", + "oneOf": [ + { + "$ref": "#/definitions/Secret" + }, + { + "type": "array", + "items": { + "$ref": "#/definitions/Secret" + } + }, + { + "type": "object", + "patternProperties": { + "^\\+$": { + "type": "array", + "items": { + "$ref": "#/definitions/Secret" + } + }, + "^\\+\\d+$": { + "type": "array", + "items": { + "$ref": "#/definitions/Secret" + } + }, + "^\\d+$": { + "$ref": "#/definitions/Secret" + }, + "^\\d+<$": { + "$ref": "#/definitions/Secret" + }, + "^\\d+\\+$": { + "type": "array", + "items": { + "$ref": "#/definitions/Secret" + } + }, + "_": { + "type": "array", + "items": { + "$ref": "#/definitions/Secret" + } + } + } + } + ] + }, + "VecDeepPatch_Ssh": { + "title": "VecDeepPatch", + "oneOf": [ + { + "$ref": "#/definitions/Ssh" + }, + { + "type": "array", + "items": { + "$ref": "#/definitions/Ssh" + } + }, + { + "type": "object", + "patternProperties": { + "^\\+$": { + "type": "array", + "items": { + "$ref": "#/definitions/Ssh" + } + }, + "^\\+\\d+$": { + "type": "array", + "items": { + "$ref": "#/definitions/Ssh" + } + }, + "^\\d+$": { + "$ref": "#/definitions/Ssh" + }, + "^\\d+<$": { + "$ref": "#/definitions/Ssh" + }, + "^\\d+\\+$": { + "type": "array", + "items": { + "$ref": "#/definitions/Ssh" + } + }, + "_": { + "type": "array", + "items": { + "$ref": "#/definitions/Ssh" + } + } + } + } + ] + }, "VecPatch_Resource": { "title": "VecPatch", "oneOf": [