# SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
#
# 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
#
# http://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/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.16.4
  name: dynamonims.nvidia.com
spec:
  group: nvidia.com
  names:
    kind: DynamoNim
    listKind: DynamoNimList
    plural: dynamonims
    singular: dynamonim
  scope: Namespaced
  versions:
  - name: v1alpha1
    schema:
      openAPIV3Schema:
        properties:
          apiVersion:
            type: string
          kind:
            type: string
          metadata:
            type: object
          spec:
            properties:
              context:
                properties:
                  bentomlVersion:
                    type: string
                type: object
              image:
                type: string
              imagePullSecrets:
                items:
                  properties:
                    name:
                      default: ""
                      type: string
                  type: object
                  x-kubernetes-map-type: atomic
                type: array
              models:
                items:
                  properties:
                    downloadUrl:
                      type: string
                    size:
                      anyOf:
                      - type: integer
                      - type: string
                      pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                      x-kubernetes-int-or-string: true
                    tag:
                      type: string
                  required:
                  - tag
                  type: object
                type: array
              serviceName:
                type: string
              tag:
                type: string
            required:
            - image
            - tag
            type: object
          status:
            properties:
              ready:
                type: boolean
            required:
            - ready
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
