apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: models.config.onosproject.org
spec:
  group: config.onosproject.org
  scope: Namespaced
  names:
    kind: Model
    listKind: ModelList
    plural: models
    singular: model
  versions:
  - name: v1beta1
    served: true
    storage: true
    subresources:
      status: {}
    schema:
      openAPIV3Schema:
        type: object
        required:
        - spec
        properties:
          spec:
            type: object
            properties:
              plugin:
                type: object
                required:
                - type
                - version
                properties:
                  type:
                    type: string
                  version:
                    type: string
              modules:
                type: array
                items:
                  type: object
                  required:
                  - name
                  - revision
                  - file
                  properties:
                    name:
                      type: string
                    organization:
                      type: string
                    revision:
                      type: string
                    file:
                      type: string
              files:
                type: object
                additionalProperties:
                  type: string
          status:
            type: object
            properties:
              registryStatuses:
                type: array
                items:
                  type: object
                  properties:
                    podName:
                      type: string
                    phase:
                      type: string