{ "instance": { "allOf": [ { "$ref": "definitions.json#/resourceIdentifier" }, { "type": "object", "additionalProperties": false, "properties": { "forceRename": {}, "prefix": {}, "suffix": {}, "enabled": { "type": "boolean", "default": true }, "annotations": { "$ref": "definitions.json#/annotations" }, "labels": { "$ref": "definitions.json#/labels" }, "endpoints": { "type": "array", "items": { "type": "object" } }, "selector": { "type": "object", "additionalProperties": false, "properties": { "matchLabels": { "type": "object", "additionalProperties": { "type": "string" } }, "matchExpressions": { "type": "array", "items": { "type": "object", "additionalProperties": false, "properties": { "key": {"type": "string"}, "operator": {"type": "string"}, "values": { "type": "array", "items": {"type": "string"} } } } } } }, "serviceName": { "type": "string" }, "targetLabels": { "type": "array" } }, "oneOf": [{"required": ["serviceName"]}, {"required": ["selector"]}], "dependencies": { "selector": {"not": {"required": ["serviceName"]}}, "serviceName": {"not": {"required": ["selector"]}} } } ] } }