Contour · Schema

Gateway

Namespace-scoped resource describing a network infrastructure instance with one or more listeners for handling inbound traffic.

EnvoyIngress ControllerKubernetesNetworkingProxy

Properties

Name Type Description
apiVersion string
kind string
metadata object
spec object Gateway specification.
status object Status of the Gateway as reported by the controller.
View JSON Schema on GitHub

JSON Schema

contour-gateway-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/Gateway",
  "title": "Gateway",
  "type": "object",
  "description": "Namespace-scoped resource describing a network infrastructure instance with one or more listeners for handling inbound traffic.",
  "required": [
    "apiVersion",
    "kind",
    "metadata",
    "spec"
  ],
  "properties": {
    "apiVersion": {
      "type": "string",
      "enum": [
        "gateway.networking.k8s.io/v1"
      ]
    },
    "kind": {
      "type": "string",
      "enum": [
        "Gateway"
      ]
    },
    "metadata": {
      "$ref": "#/components/schemas/ObjectMeta"
    },
    "spec": {
      "type": "object",
      "description": "Gateway specification.",
      "required": [
        "gatewayClassName"
      ],
      "properties": {
        "gatewayClassName": {
          "type": "string",
          "description": "Name of the GatewayClass this Gateway belongs to."
        },
        "listeners": {
          "type": "array",
          "description": "List of listeners for accepting inbound traffic.",
          "items": {
            "$ref": "#/components/schemas/Listener"
          }
        },
        "addresses": {
          "type": "array",
          "description": "Requested network addresses for the Gateway.",
          "items": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "IPAddress",
                  "Hostname"
                ]
              },
              "value": {
                "type": "string"
              }
            }
          }
        }
      }
    },
    "status": {
      "type": "object",
      "description": "Status of the Gateway as reported by the controller.",
      "properties": {
        "addresses": {
          "type": "array",
          "description": "Network addresses assigned to the Gateway.",
          "items": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string"
              },
              "value": {
                "type": "string"
              }
            }
          }
        },
        "conditions": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/Condition"
          }
        },
        "listeners": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/ListenerStatus"
          }
        }
      }
    }
  }
}