routes.serving.knative.dev created 2021-08-30 18:59:46, version 5625

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: '{"apiVersion":"apiextensions.k8s.io/v1","kind":"CustomResourceDefinition","metadata":{"labels":{"duck.knative.dev/addressable":"true","knative.dev/crd-install":"true","serving.knative.dev/release":"v0.24.0"},"name":"routes.serving.knative.dev"},"spec":{"group":"serving.knative.dev","names":{"categories":["all","knative","serving"],"kind":"Route","plural":"routes","shortNames":["rt"],"singular":"route"},"scope":"Namespaced","versions":[{"additionalPrinterColumns":[{"jsonPath":".status.url","name":"URL","type":"string"},{"jsonPath":".status.conditions[?(@.type==''Ready'')].status","name":"Ready","type":"string"},{"jsonPath":".status.conditions[?(@.type==''Ready'')].reason","name":"Reason","type":"string"}],"name":"v1","schema":{"openAPIV3Schema":{"description":"Route
      is responsible for configuring ingress over a collection of Revisions. Some
      of the Revisions a Route distributes traffic over may be specified by referencing
      the Configuration responsible for creating them; in these cases the Route is
      additionally responsible for monitoring the Configuration for \"latest ready
      revision\" changes, and smoothly rolling out latest revisions. See 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. Servers should
      convert recognized schemas to the latest internal value, and may reject unrecognized
      values. More 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. Servers
      may infer this from the endpoint the client submits requests to. Cannot be updated.
      In CamelCase. More 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 revisions 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 this portion of traffic.
      When the \"status.latestReadyRevisionName\" of the referenced configuration
      changes, we will automatically migrate traffic from the prior \"latest ready\"
      revision to the new one.  This field is never set in Route''s status, only its
      spec.  This is mutually exclusive with RevisionName.","type":"string"},"latestRevision":{"description":"LatestRevision
      may be optionally provided to indicate that the latest ready Revision of the
      Configuration should be used for this traffic target.  When provided LatestRevision
      must be true if RevisionName is empty; it must be false when RevisionName is
      non-empty.","type":"boolean"},"percent":{"description":"Percent indicates that
      percentage based routing should be used and the value indicates the percent
      of traffic that is be routed to this Revision or Configuration. `0` (zero) mean
      no traffic, `100` means all traffic. When percentage based routing is being
      used the follow rules apply: - the sum of all percent values must equal 100
      - when not specified, the implied value for `percent` is zero for   that particular
      Revision or Configuration","format":"int64","type":"integer"},"revisionName":{"description":"RevisionName
      of a specific revision to which to send this portion of traffic.  This is mutually
      exclusive with ConfigurationName.","type":"string"},"tag":{"description":"Tag
      is optionally used to expose a dedicated url for referencing this target exclusively.","type":"string"},"url":{"description":"URL
      displays the URL for accessing named traffic targets. URL is displayed in status,
      and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname,
      but may not contain anything else (e.g. basic auth, url path, etc.)","type":"string"}},"type":"object"},"type":"array"}},"type":"object"},"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":{"url":{"type":"string"}},"type":"object"},"annotations":{"additionalProperties":{"type":"string"},"description":"Annotations
      is additional Status fields for the Resource to save some additional State as
      well as convey more information to the user. This is roughly akin to Annotations
      on any k8s resource, just the reconciler conveying richer 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. See: 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. We use
      VolatileTime in place of metav1.Time to exclude this from creating equality.Semantic
      differences (all other things held constant).","format":"date-time","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. When 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"},"type":"array"},"observedGeneration":{"description":"ObservedGeneration
      is the ''Generation'' of the Service that was last processed by the controller.","format":"int64","type":"integer"},"traffic":{"description":"Traffic
      holds the configured traffic distribution. These entries will always contain
      RevisionName references. When ConfigurationName appears in the spec, this will
      hold the LatestReadyRevisionName 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 this portion of traffic.
      When the \"status.latestReadyRevisionName\" of the referenced configuration
      changes, we will automatically migrate traffic from the prior \"latest ready\"
      revision to the new one.  This field is never set in Route''s status, only its
      spec.  This is mutually exclusive with RevisionName.","type":"string"},"latestRevision":{"description":"LatestRevision
      may be optionally provided to indicate that the latest ready Revision of the
      Configuration should be used for this traffic target.  When provided LatestRevision
      must be true if RevisionName is empty; it must be false when RevisionName is
      non-empty.","type":"boolean"},"percent":{"description":"Percent indicates that
      percentage based routing should be used and the value indicates the percent
      of traffic that is be routed to this Revision or Configuration. `0` (zero) mean
      no traffic, `100` means all traffic. When percentage based routing is being
      used the follow rules apply: - the sum of all percent values must equal 100
      - when not specified, the implied value for `percent` is zero for   that particular
      Revision or Configuration","format":"int64","type":"integer"},"revisionName":{"description":"RevisionName
      of a specific revision to which to send this portion of traffic.  This is mutually
      exclusive with ConfigurationName.","type":"string"},"tag":{"description":"Tag
      is optionally used to expose a dedicated url for referencing this target exclusively.","type":"string"},"url":{"description":"URL
      displays the URL for accessing named traffic targets. URL is displayed in status,
      and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname,
      but may not contain anything else (e.g. basic auth, url path, etc.)","type":"string"}},"type":"object"},"type":"array"},"url":{"description":"URL
      holds the url that will distribute traffic over the provided traffic targets.
      It generally has the form http[s]://{route-name}.{route-namespace}.{cluster-level-suffix}","type":"string"}},"type":"object"}},"type":"object"}},"served":true,"storage":true,"subresources":{"status":{}}}]}}

      '
  creationTimestamp: '2021-08-30T18:59:46Z'
  generation: 1
  labels:
    duck.knative.dev/addressable: 'true'
    knative.dev/crd-install: 'true'
    serving.knative.dev/release: v0.24.0
  managedFields:
  - apiVersion: apiextensions.k8s.io/v1
    fieldsType: FieldsV1
    fieldsV1:
      f:status:
        f:acceptedNames:
          f:categories: {}
          f:kind: {}
          f:listKind: {}
          f:plural: {}
          f:shortNames: {}
          f:singular: {}
        f:conditions:
          k:{"type":"Established"}:
            .: {}
            f:lastTransitionTime: {}
            f:message: {}
            f:reason: {}
            f:status: {}
            f:type: {}
          k:{"type":"NamesAccepted"}:
            .: {}
            f:lastTransitionTime: {}
            f:message: {}
            f:reason: {}
            f:status: {}
            f:type: {}
    manager: k3s
    operation: Update
    time: '2021-08-30T18:59:46Z'
  - apiVersion: apiextensions.k8s.io/v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .: {}
          f:kubectl.kubernetes.io/last-applied-configuration: {}
        f:labels:
          .: {}
          f:duck.knative.dev/addressable: {}
          f:knative.dev/crd-install: {}
          f:serving.knative.dev/release: {}
      f:spec:
        f:conversion:
          .: {}
          f:strategy: {}
        f:group: {}
        f:names:
          f:categories: {}
          f:kind: {}
          f:listKind: {}
          f:plural: {}
          f:shortNames: {}
          f:singular: {}
        f:scope: {}
        f:versions: {}
    manager: manifestival
    operation: Update
    time: '2021-08-30T18:59:49Z'
  name: routes.serving.knative.dev
  resourceVersion: '5625'
  uid: 14610b1d-d768-4913-8e1b-bd7a4d39c7eb
spec:
  conversion:
    strategy: None
  group: serving.knative.dev
  names:
    categories:
    - all
    - knative
    - serving
    kind: Route
    listKind: RouteList
    plural: routes
    shortNames:
    - rt
    singular: route
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .status.url
      name: URL
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].status
      name: Ready
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].reason
      name: Reason
      type: string
    name: v1
    schema:
      openAPIV3Schema:
        description: 'Route is responsible for configuring ingress over a collection
          of Revisions. Some of the Revisions a Route distributes traffic over may
          be specified by referencing the Configuration responsible for creating them;
          in these cases the Route is additionally responsible for monitoring the
          Configuration for "latest ready revision" changes, and smoothly rolling
          out latest revisions. See 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. Servers should convert recognized schemas to the latest
              internal value, and may reject unrecognized values. More 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. Servers may infer this from the endpoint the client
              submits requests to. Cannot be updated. In CamelCase. More 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 revisions 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 this portion of traffic. When the "status.latestReadyRevisionName"
                        of the referenced configuration changes, we will automatically
                        migrate traffic from the prior "latest ready" revision to
                        the new one.  This field is never set in Route's status, only
                        its spec.  This is mutually exclusive with RevisionName.
                      type: string
                    latestRevision:
                      description: LatestRevision may be optionally provided to indicate
                        that the latest ready Revision of the Configuration should
                        be used for this traffic target.  When provided LatestRevision
                        must be true if RevisionName is empty; it must be false when
                        RevisionName is non-empty.
                      type: boolean
                    percent:
                      description: 'Percent indicates that percentage based routing
                        should be used and the value indicates the percent of traffic
                        that is be routed to this Revision or Configuration. `0` (zero)
                        mean no traffic, `100` means all traffic. When percentage
                        based routing is being used the follow rules apply: - the
                        sum of all percent values must equal 100 - when not specified,
                        the implied value for `percent` is zero for   that particular
                        Revision or Configuration'
                      format: int64
                      type: integer
                    revisionName:
                      description: RevisionName of a specific revision to which to
                        send this portion of traffic.  This is mutually exclusive
                        with ConfigurationName.
                      type: string
                    tag:
                      description: Tag is optionally used to expose a dedicated url
                        for referencing this target exclusively.
                      type: string
                    url:
                      description: URL displays the URL for accessing named traffic
                        targets. URL is displayed in status, and is disallowed on
                        spec. URL must contain a scheme (e.g. http://) and a hostname,
                        but may not contain anything else (e.g. basic auth, url path,
                        etc.)
                      type: string
                  type: object
                type: array
            type: object
          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:
                  url:
                    type: string
                type: object
              annotations:
                additionalProperties:
                  type: string
                description: Annotations is additional Status fields for the Resource
                  to save some additional State as well as convey more information
                  to the user. This is roughly akin to Annotations on any k8s resource,
                  just the reconciler conveying richer 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. See: 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. We use VolatileTime
                        in place of metav1.Time to exclude this from creating equality.Semantic
                        differences (all other things held constant).
                      format: date-time
                      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. When 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
                type: array
              observedGeneration:
                description: ObservedGeneration is the 'Generation' of the Service
                  that was last processed by the controller.
                format: int64
                type: integer
              traffic:
                description: Traffic holds the configured traffic distribution. These
                  entries will always contain RevisionName references. When ConfigurationName
                  appears in the spec, this will hold the LatestReadyRevisionName
                  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 this portion of traffic. When the "status.latestReadyRevisionName"
                        of the referenced configuration changes, we will automatically
                        migrate traffic from the prior "latest ready" revision to
                        the new one.  This field is never set in Route's status, only
                        its spec.  This is mutually exclusive with RevisionName.
                      type: string
                    latestRevision:
                      description: LatestRevision may be optionally provided to indicate
                        that the latest ready Revision of the Configuration should
                        be used for this traffic target.  When provided LatestRevision
                        must be true if RevisionName is empty; it must be false when
                        RevisionName is non-empty.
                      type: boolean
                    percent:
                      description: 'Percent indicates that percentage based routing
                        should be used and the value indicates the percent of traffic
                        that is be routed to this Revision or Configuration. `0` (zero)
                        mean no traffic, `100` means all traffic. When percentage
                        based routing is being used the follow rules apply: - the
                        sum of all percent values must equal 100 - when not specified,
                        the implied value for `percent` is zero for   that particular
                        Revision or Configuration'
                      format: int64
                      type: integer
                    revisionName:
                      description: RevisionName of a specific revision to which to
                        send this portion of traffic.  This is mutually exclusive
                        with ConfigurationName.
                      type: string
                    tag:
                      description: Tag is optionally used to expose a dedicated url
                        for referencing this target exclusively.
                      type: string
                    url:
                      description: URL displays the URL for accessing named traffic
                        targets. URL is displayed in status, and is disallowed on
                        spec. URL must contain a scheme (e.g. http://) and a hostname,
                        but may not contain anything else (e.g. basic auth, url path,
                        etc.)
                      type: string
                  type: object
                type: array
              url:
                description: URL holds the url that will distribute traffic over the
                  provided traffic targets. It generally has the form http[s]://{route-name}.{route-namespace}.{cluster-level-suffix}
                type: string
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    categories:
    - all
    - knative
    - serving
    kind: Route
    listKind: RouteList
    plural: routes
    shortNames:
    - rt
    singular: route
  conditions:
  - lastTransitionTime: '2021-08-30T18:59:46Z'
    message: no conflicts found
    reason: NoConflicts
    status: 'True'
    type: NamesAccepted
  - lastTransitionTime: '2021-08-30T18:59:46Z'
    message: the initial names have been accepted
    reason: InitialNamesAccepted
    status: 'True'
    type: Established
  storedVersions:
  - v1