SMI HTTPRouteGroup

Service Mesh Interface (SMI) HTTPRouteGroup resource (specs.smi-spec.io/v1alpha4). Describes a set of HTTP match rules referenced by TrafficTarget and TrafficSplit. Source: https://github.com/servicemeshinterface/smi-spec/blob/main/apis/traffic-specs/v1alpha4/traffic-specs.md

Service MeshKubernetesTraffic PolicyTraffic ManagementTraffic MetricsStandardsCNCFArchivedSpecificationCustom Resource Definitions

Properties

Name Type Description
apiVersion object
kind object
metadata object
spec object
View JSON Schema on GitHub

JSON Schema

http-route-group-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://api-evangelist.github.io/service-mesh-interface/json-schema/http-route-group-schema.json",
  "title": "SMI HTTPRouteGroup",
  "description": "Service Mesh Interface (SMI) HTTPRouteGroup resource (specs.smi-spec.io/v1alpha4). Describes a set of HTTP match rules referenced by TrafficTarget and TrafficSplit. Source: https://github.com/servicemeshinterface/smi-spec/blob/main/apis/traffic-specs/v1alpha4/traffic-specs.md",
  "type": "object",
  "required": ["apiVersion", "kind", "metadata", "spec"],
  "properties": {
    "apiVersion": { "const": "specs.smi-spec.io/v1alpha4" },
    "kind": { "const": "HTTPRouteGroup" },
    "metadata": {
      "type": "object",
      "required": ["name"],
      "properties": {
        "name": { "type": "string" },
        "namespace": { "type": "string" }
      }
    },
    "spec": {
      "type": "object",
      "required": ["matches"],
      "properties": {
        "matches": {
          "type": "array",
          "minItems": 1,
          "items": {
            "type": "object",
            "required": ["name"],
            "properties": {
              "name": { "type": "string" },
              "pathRegex": { "type": "string" },
              "methods": {
                "type": "array",
                "items": {
                  "oneOf": [
                    { "type": "string", "enum": ["GET", "HEAD", "POST", "PUT", "PATCH", "DELETE", "OPTIONS", "CONNECT", "TRACE"] },
                    { "const": "*" }
                  ]
                }
              },
              "headers": {
                "type": "object",
                "additionalProperties": { "type": "string" },
                "description": "Map of header name to regex pattern."
              }
            }
          }
        }
      }
    }
  }
}