{ "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "apiVersion": { "type": "string" }, "kind": { "type": "string" }, "metadata": { "type": "object" }, "spec": { "properties": { "instanceName": { "minLength": 1, "type": "string", "x-kubernetes-validations": [ { "message": "spec.instanceName is immutable", "rule": "self == oldSelf" } ] }, "isDisabled": { "default": false, "type": "boolean" }, "name": { "minLength": 1, "type": "string", "x-kubernetes-validations": [ { "message": "spec.name is immutable", "rule": "self == oldSelf" } ] }, "resyncPeriod": { "pattern": "^([0-9]+(\\.[0-9]+)?(ns|us|\u00b5s|ms|s|m|h))+$", "type": "string", "x-kubernetes-validations": [ { "message": "spec.resyncPeriod must be greater than 0", "rule": "duration(self) > duration('0s')" } ] }, "role": { "enum": [ "Viewer", "Editor", "Admin" ], "type": "string" }, "suspend": { "default": false, "type": "boolean" }, "tokens": { "items": { "properties": { "expires": { "format": "date-time", "type": "string" }, "name": { "minLength": 1, "type": "string" }, "secretName": { "minLength": 1, "type": "string" } }, "required": [ "name" ], "type": "object" }, "type": "array", "x-kubernetes-list-map-keys": [ "name" ], "x-kubernetes-list-type": "map" } }, "required": [ "instanceName", "role" ], "type": "object", "x-kubernetes-validations": [ { "message": "spec.name is immutable", "rule": "((!has(oldSelf.name) && !has(self.name)) || (has(oldSelf.name) && has(self.name)))" } ] }, "status": { "properties": { "account": { "properties": { "id": { "format": "int64", "type": "integer" }, "isDisabled": { "type": "boolean" }, "login": { "type": "string" }, "name": { "type": "string" }, "role": { "type": "string" }, "tokens": { "items": { "properties": { "expires": { "format": "date-time", "type": "string" }, "id": { "format": "int64", "type": "integer" }, "name": { "type": "string" }, "secret": { "properties": { "name": { "type": "string" }, "namespace": { "type": "string" } }, "type": "object" } }, "required": [ "id", "name" ], "type": "object" }, "type": "array" } }, "required": [ "id", "isDisabled", "login", "name", "role" ], "type": "object" }, "conditions": { "items": { "properties": { "lastTransitionTime": { "format": "date-time", "type": "string" }, "message": { "maxLength": 32768, "type": "string" }, "observedGeneration": { "format": "int64", "minimum": 0, "type": "integer" }, "reason": { "maxLength": 1024, "minLength": 1, "pattern": "^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$", "type": "string" }, "status": { "enum": [ "True", "False", "Unknown" ], "type": "string" }, "type": { "maxLength": 316, "pattern": "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$", "type": "string" } }, "required": [ "lastTransitionTime", "message", "reason", "status", "type" ], "type": "object" }, "type": "array" }, "lastResync": { "format": "date-time", "type": "string" } }, "type": "object" } }, "type": "object" }