apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: mysqls.otus.homework # имя CRD должно иметь формат plural.group
spec:
  scope: Namespaced # Данный CRD будер работать в рамках namespace
  group: otus.homework # Группа, отражается в поле apiVersion CR
  versions: # Список версий
    - name: v1
      served: true # Будет ли обслуживаться API-сервером данная версия
      storage: true # Версия описания, которая будет сохраняться в etcd
      schema:
        openAPIV3Schema:
          type: object
          properties:
            apiVersion:
              type: string # Тип данных поля ApiVersion
            kind:
              type: string # Тип данных поля kind
            metadata:
              type: object # Тип поля metadata
              properties: # Доступные параметры и их тип данных поля metadata (словарь)
                name:
                  type: string
            spec:
              type: object
              properties:
                image:
                  type: string
                database:
                  type: string
                password:
                  type: string
                storage_size:
                  type: string
                field:
                  type: string
#                mysql_user:
#                  type: string
#                mysql_password:
#                  type: string
              required:
                - image
                - database
                - password
                - storage_size
            status:
              type: object
              properties:
                describe:
                  type: string
      subresources:
        status: {}
  names: # различные форматы имени объекта CR
    kind: MySQL # kind CR
    plural: mysqls
    singular: mysql
    shortNames:
    - ms