Skip to content

Subscription schema

{
    "$schema": "https://json-schema.org/draft/2019-09/schema#",
    "title": "JSON SCHEMA for Subscription manifests",
    "type": "object",
    "properties": {
        "apiVersion": {
            "const": "opentestfactory.org/v1alpha1"
        },
        "kind": {
            "const": "Subscription"
        },
        "metadata": {
            "type": "object",
            "properties": {
                "name": {
                    "type": "string"
                }
            },
            "additionalProperties": true,
            "required": [
                "name"
            ]
        },
        "spec": {
            "type": "object",
            "properties": {
                "selector": {
                    "type": "object",
                    "properties": {
                        "matchKind": {
                            "type": "string"
                        },
                        "matchLabels": {
                            "type": "object",
                            "patternProperties": {
                                "^([a-zA-Z0-9-.]+/)?[a-zA-Z0-9]([a-zA-Z0-9._-]*[a-zA-Z0-9])?$": {
                                    "type": "string"
                                }
                            },
                            "minProperties": 1,
                            "additionalProperties": false
                        },
                        "matchFields": {
                            "type": "object",
                            "patternProperties": {
                                "^[a-z]([a-zA-Z0-9.-]*[a-zA-Z0-9])?$": {
                                    "type": "string"
                                }
                            },
                            "minProperties": 1,
                            "additionalProperties": false
                        }
                    },
                    "minProperties": 1,
                    "additionalProperties": false
                },
                "subscriber": {
                    "type": "object",
                    "properties": {
                        "endpoint": {
                            "type": "string"
                        },
                        "insecure-skip-tls-verify": {
                            "type": "boolean"
                        }
                    },
                    "additionalProperties": false,
                    "required": [
                        "endpoint"
                    ]
                }
            },
            "required": [
                "subscriber"
            ],
            "additionalProperties": false
        }
    },
    "required": [
        "apiVersion",
        "kind",
        "metadata",
        "spec"
    ],
    "additionalProperties": false
}