mirror of
https://gitlab.com/deepcypher/dc-kc.git
synced 2026-01-27 11:12:08 +00:00
181 lines
11 KiB
JSON
181 lines
11 KiB
JSON
{
|
|
"description": "Route is responsible for configuring ingress over a collection of Revisions.\nSome of the Revisions a Route distributes traffic over may be specified by\nreferencing the Configuration responsible for creating them; in these cases\nthe Route is additionally responsible for monitoring the Configuration for\n\"latest ready revision\" changes, and smoothly rolling out latest revisions.\nSee also: https://github.com/knative/serving/blob/main/docs/spec/overview.md#route",
|
|
"properties": {
|
|
"apiVersion": {
|
|
"description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
|
|
"type": "string"
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"spec": {
|
|
"description": "Spec holds the desired state of the Route (from the client).",
|
|
"properties": {
|
|
"traffic": {
|
|
"description": "Traffic specifies how to distribute traffic over a collection of\nrevisions and configurations.",
|
|
"items": {
|
|
"description": "TrafficTarget holds a single entry of the routing table for a Route.",
|
|
"properties": {
|
|
"configurationName": {
|
|
"description": "ConfigurationName of a configuration to whose latest revision we will send\nthis portion of traffic. When the \"status.latestReadyRevisionName\" of the\nreferenced configuration changes, we will automatically migrate traffic\nfrom the prior \"latest ready\" revision to the new one. This field is never\nset in Route's status, only its spec. This is mutually exclusive with\nRevisionName.",
|
|
"type": "string"
|
|
},
|
|
"latestRevision": {
|
|
"description": "LatestRevision may be optionally provided to indicate that the latest\nready Revision of the Configuration should be used for this traffic\ntarget. When provided LatestRevision must be true if RevisionName is\nempty; it must be false when RevisionName is non-empty.",
|
|
"type": "boolean"
|
|
},
|
|
"percent": {
|
|
"description": "Percent indicates that percentage based routing should be used and\nthe value indicates the percent of traffic that is be routed to this\nRevision or Configuration. `0` (zero) mean no traffic, `100` means all\ntraffic.\nWhen percentage based routing is being used the follow rules apply:\n- the sum of all percent values must equal 100\n- when not specified, the implied value for `percent` is zero for\n that particular Revision or Configuration",
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"revisionName": {
|
|
"description": "RevisionName of a specific revision to which to send this portion of\ntraffic. This is mutually exclusive with ConfigurationName.",
|
|
"type": "string"
|
|
},
|
|
"tag": {
|
|
"description": "Tag is optionally used to expose a dedicated url for referencing\nthis target exclusively.",
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"description": "URL displays the URL for accessing named traffic targets. URL is displayed in\nstatus, and is disallowed on spec. URL must contain a scheme (e.g. http://) and\na hostname, but may not contain anything else (e.g. basic auth, url path, etc.)",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"status": {
|
|
"description": "Status communicates the observed state of the Route (from the controller).",
|
|
"properties": {
|
|
"address": {
|
|
"description": "Address holds the information needed for a Route to be the target of an event.",
|
|
"properties": {
|
|
"CACerts": {
|
|
"description": "CACerts is the Certification Authority (CA) certificates in PEM format\naccording to https://www.rfc-editor.org/rfc/rfc7468.",
|
|
"type": "string"
|
|
},
|
|
"audience": {
|
|
"description": "Audience is the OIDC audience for this address.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name is the name of the address.",
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"annotations": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"description": "Annotations is additional Status fields for the Resource to save some\nadditional State as well as convey more information to the user. This is\nroughly akin to Annotations on any k8s resource, just the reconciler conveying\nricher information outwards.",
|
|
"type": "object"
|
|
},
|
|
"conditions": {
|
|
"description": "Conditions the latest available observations of a resource's current state.",
|
|
"items": {
|
|
"description": "Condition defines a readiness condition for a Knative resource.\nSee: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#typical-status-properties",
|
|
"properties": {
|
|
"lastTransitionTime": {
|
|
"description": "LastTransitionTime is the last time the condition transitioned from one status to another.\nWe use VolatileTime in place of metav1.Time to exclude this from creating equality.Semantic\ndifferences (all other things held constant).",
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"description": "A human readable message indicating details about the transition.",
|
|
"type": "string"
|
|
},
|
|
"reason": {
|
|
"description": "The reason for the condition's last transition.",
|
|
"type": "string"
|
|
},
|
|
"severity": {
|
|
"description": "Severity with which to treat failures of this type of condition.\nWhen this is not specified, it defaults to Error.",
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"description": "Status of the condition, one of True, False, Unknown.",
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"description": "Type of condition.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"status",
|
|
"type"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"observedGeneration": {
|
|
"description": "ObservedGeneration is the 'Generation' of the Service that\nwas last processed by the controller.",
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"traffic": {
|
|
"description": "Traffic holds the configured traffic distribution.\nThese entries will always contain RevisionName references.\nWhen ConfigurationName appears in the spec, this will hold the\nLatestReadyRevisionName that we last observed.",
|
|
"items": {
|
|
"description": "TrafficTarget holds a single entry of the routing table for a Route.",
|
|
"properties": {
|
|
"configurationName": {
|
|
"description": "ConfigurationName of a configuration to whose latest revision we will send\nthis portion of traffic. When the \"status.latestReadyRevisionName\" of the\nreferenced configuration changes, we will automatically migrate traffic\nfrom the prior \"latest ready\" revision to the new one. This field is never\nset in Route's status, only its spec. This is mutually exclusive with\nRevisionName.",
|
|
"type": "string"
|
|
},
|
|
"latestRevision": {
|
|
"description": "LatestRevision may be optionally provided to indicate that the latest\nready Revision of the Configuration should be used for this traffic\ntarget. When provided LatestRevision must be true if RevisionName is\nempty; it must be false when RevisionName is non-empty.",
|
|
"type": "boolean"
|
|
},
|
|
"percent": {
|
|
"description": "Percent indicates that percentage based routing should be used and\nthe value indicates the percent of traffic that is be routed to this\nRevision or Configuration. `0` (zero) mean no traffic, `100` means all\ntraffic.\nWhen percentage based routing is being used the follow rules apply:\n- the sum of all percent values must equal 100\n- when not specified, the implied value for `percent` is zero for\n that particular Revision or Configuration",
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"revisionName": {
|
|
"description": "RevisionName of a specific revision to which to send this portion of\ntraffic. This is mutually exclusive with ConfigurationName.",
|
|
"type": "string"
|
|
},
|
|
"tag": {
|
|
"description": "Tag is optionally used to expose a dedicated url for referencing\nthis target exclusively.",
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"description": "URL displays the URL for accessing named traffic targets. URL is displayed in\nstatus, and is disallowed on spec. URL must contain a scheme (e.g. http://) and\na hostname, but may not contain anything else (e.g. basic auth, url path, etc.)",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"url": {
|
|
"description": "URL holds the url that will distribute traffic over the provided traffic targets.\nIt generally has the form http[s]://{route-name}.{route-namespace}.{cluster-level-suffix}",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|