# Copyright 2019 The Knative Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: certificates.networking.internal.knative.dev
  labels:
    serving.knative.dev/release: "v0.15.1"
    knative.dev/crd-install: "true"
spec:
  group: networking.internal.knative.dev
  version: v1alpha1
  names:
    kind: Certificate
    plural: certificates
    singular: certificate
    categories:
    - knative-internal
    - networking
    shortNames:
    - kcert
  scope: Namespaced
  subresources:
    status: {}
  additionalPrinterColumns:
  - name: Ready
    type: string
    JSONPath: ".status.conditions[?(@.type==\"Ready\")].status"
  - name: Reason
    type: string
    JSONPath: ".status.conditions[?(@.type==\"Ready\")].reason"

---
# Copyright 2019 The Knative Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: configurations.serving.knative.dev
  labels:
    serving.knative.dev/release: "v0.15.1"
    knative.dev/crd-install: "true"
    duck.knative.dev/podspecable: "true"
spec:
  group: serving.knative.dev
  preserveUnknownFields: false
  validation:
    openAPIV3Schema:
      type: object
      # this is a work around so we don't need to flush out the
      # schema for each version at this time
      #
      # see issue: https://github.com/knative/serving/issues/912
      x-kubernetes-preserve-unknown-fields: true
  versions:
  - name: v1alpha1
    served: true
    storage: false
  - name: v1beta1
    served: true
    storage: false
  - name: v1
    served: true
    storage: true
  names:
    kind: Configuration
    plural: configurations
    singular: configuration
    categories:
    - all
    - knative
    - serving
    shortNames:
    - config
    - cfg
  scope: Namespaced
  subresources:
    status: {}
  conversion:
    strategy: Webhook
    webhookClientConfig:
      service:
        name: webhook
        namespace: knative-serving
  additionalPrinterColumns:
  - name: LatestCreated
    type: string
    JSONPath: .status.latestCreatedRevisionName
  - name: LatestReady
    type: string
    JSONPath: .status.latestReadyRevisionName
  - name: Ready
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].status"
  - name: Reason
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].reason"

---
# Copyright 2019 The Knative Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: ingresses.networking.internal.knative.dev
  labels:
    serving.knative.dev/release: "v0.15.1"
    knative.dev/crd-install: "true"
spec:
  group: networking.internal.knative.dev
  versions:
  - name: v1alpha1
    served: true
    storage: true
  names:
    kind: Ingress
    plural: ingresses
    singular: ingress
    categories:
    - knative-internal
    - networking
    shortNames:
    - kingress
    - king
  scope: Namespaced
  subresources:
    status: {}
  additionalPrinterColumns:
  - name: Ready
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].status"
  - name: Reason
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].reason"

---
# Copyright 2019 The Knative Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: metrics.autoscaling.internal.knative.dev
  labels:
    serving.knative.dev/release: "v0.15.1"
    knative.dev/crd-install: "true"
spec:
  group: autoscaling.internal.knative.dev
  version: v1alpha1
  names:
    kind: Metric
    plural: metrics
    singular: metric
    categories:
    - knative-internal
    - autoscaling
  scope: Namespaced
  subresources:
    status: {}
  additionalPrinterColumns:
  - name: Ready
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].status"
  - name: Reason
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].reason"

---
# Copyright 2018 The Knative Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: podautoscalers.autoscaling.internal.knative.dev
  labels:
    serving.knative.dev/release: "v0.15.1"
    knative.dev/crd-install: "true"
spec:
  group: autoscaling.internal.knative.dev
  versions:
  - name: v1alpha1
    served: true
    storage: true
  names:
    kind: PodAutoscaler
    plural: podautoscalers
    singular: podautoscaler
    categories:
    - knative-internal
    - autoscaling
    shortNames:
    - kpa
    - pa
  scope: Namespaced
  subresources:
    status: {}
  additionalPrinterColumns:
  - name: DesiredScale
    type: integer
    JSONPath: ".status.desiredScale"
  - name: ActualScale
    type: integer
    JSONPath: ".status.actualScale"
  - name: Ready
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].status"
  - name: Reason
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].reason"

---
# Copyright 2019 The Knative Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: revisions.serving.knative.dev
  labels:
    serving.knative.dev/release: "v0.15.1"
    knative.dev/crd-install: "true"
spec:
  group: serving.knative.dev
  preserveUnknownFields: false
  validation:
    openAPIV3Schema:
      type: object
      # this is a work around so we don't need to flush out the
      # schema for each version at this time
      #
      # see issue: https://github.com/knative/serving/issues/912
      x-kubernetes-preserve-unknown-fields: true
  versions:
  - name: v1alpha1
    served: true
    storage: false
  - name: v1beta1
    served: true
    storage: false
  - name: v1
    served: true
    storage: true
  names:
    kind: Revision
    plural: revisions
    singular: revision
    categories:
    - all
    - knative
    - serving
    shortNames:
    - rev
  scope: Namespaced
  subresources:
    status: {}
  conversion:
    strategy: Webhook
    webhookClientConfig:
      service:
        name: webhook
        namespace: knative-serving
  additionalPrinterColumns:
  - name: Config Name
    type: string
    JSONPath: ".metadata.labels['serving\\.knative\\.dev/configuration']"
  - name: K8s Service Name
    type: string
    JSONPath: ".status.serviceName"
  - name: Generation
    type: string # int in string form :(
    JSONPath: ".metadata.labels['serving\\.knative\\.dev/configurationGeneration']"
  - name: Ready
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].status"
  - name: Reason
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].reason"

---
# Copyright 2019 The Knative Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: routes.serving.knative.dev
  labels:
    serving.knative.dev/release: "v0.15.1"
    knative.dev/crd-install: "true"
    duck.knative.dev/addressable: "true"
spec:
  group: serving.knative.dev
  preserveUnknownFields: false
  validation:
    openAPIV3Schema:
      type: object
      # this is a work around so we don't need to flush out the
      # schema for each version at this time
      #
      # see issue: https://github.com/knative/serving/issues/912
      x-kubernetes-preserve-unknown-fields: true
  versions:
  - name: v1alpha1
    served: true
    storage: false
  - name: v1beta1
    served: true
    storage: false
  - name: v1
    served: true
    storage: true
  names:
    kind: Route
    plural: routes
    singular: route
    categories:
    - all
    - knative
    - serving
    shortNames:
    - rt
  scope: Namespaced
  subresources:
    status: {}
  conversion:
    strategy: Webhook
    webhookClientConfig:
      service:
        name: webhook
        namespace: knative-serving
  additionalPrinterColumns:
  - name: URL
    type: string
    JSONPath: .status.url
  - name: Ready
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].status"
  - name: Reason
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].reason"

---
# Copyright 2019 The Knative Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: serverlessservices.networking.internal.knative.dev
  labels:
    serving.knative.dev/release: "v0.15.1"
    knative.dev/crd-install: "true"
spec:
  group: networking.internal.knative.dev
  versions:
  - name: v1alpha1
    served: true
    storage: true
  names:
    kind: ServerlessService
    plural: serverlessservices
    singular: serverlessservice
    categories:
    - knative-internal
    - networking
    shortNames:
    - sks
  scope: Namespaced
  subresources:
    status: {}
  additionalPrinterColumns:
  - name: Mode
    type: string
    JSONPath: ".spec.mode"
  - name: Activators
    type: integer
    JSONPath: ".spec.numActivators"
  - name: ServiceName
    type: string
    JSONPath: ".status.serviceName"
  - name: PrivateServiceName
    type: string
    JSONPath: ".status.privateServiceName"
  - name: Ready
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].status"
  - name: Reason
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].reason"

---
# Copyright 2019 The Knative Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: services.serving.knative.dev
  labels:
    serving.knative.dev/release: "v0.15.1"
    knative.dev/crd-install: "true"
    duck.knative.dev/addressable: "true"
    duck.knative.dev/podspecable: "true"
spec:
  group: serving.knative.dev
  preserveUnknownFields: false
  validation:
    openAPIV3Schema:
      type: object
      # this is a work around so we don't need to flush out the
      # schema for each version at this time
      #
      # see issue: https://github.com/knative/serving/issues/912
      x-kubernetes-preserve-unknown-fields: true
  versions:
  - name: v1alpha1
    served: true
    storage: false
  - name: v1beta1
    served: true
    storage: false
  - name: v1
    served: true
    storage: true
  names:
    kind: Service
    plural: services
    singular: service
    categories:
    - all
    - knative
    - serving
    shortNames:
    - kservice
    - ksvc
  scope: Namespaced
  subresources:
    status: {}
  conversion:
    strategy: Webhook
    webhookClientConfig:
      service:
        name: webhook
        namespace: knative-serving
  additionalPrinterColumns:
  - name: URL
    type: string
    JSONPath: .status.url
  - name: LatestCreated
    type: string
    JSONPath: .status.latestCreatedRevisionName
  - name: LatestReady
    type: string
    JSONPath: .status.latestReadyRevisionName
  - name: Ready
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].status"
  - name: Reason
    type: string
    JSONPath: ".status.conditions[?(@.type=='Ready')].reason"

---
# Copyright 2018 The Knative Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: images.caching.internal.knative.dev
  labels:
    knative.dev/crd-install: "true"
spec:
  group: caching.internal.knative.dev
  version: v1alpha1
  names:
    kind: Image
    plural: images
    singular: image
    categories:
    - knative-internal
    - caching
    shortNames:
    - img
  scope: Namespaced
  subresources:
    status: {}

---
