{
  "description": "InstanceManager is where Longhorn stores instance manager object.",
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore 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.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": "string"
    },
    "metadata": {
      "type": "object"
    },
    "spec": {
      "description": "InstanceManagerSpec defines the desired state of the Longhorn instance manager",
      "properties": {
        "dataEngine": {
          "type": "string"
        },
        "image": {
          "type": "string"
        },
        "nodeID": {
          "type": "string"
        },
        "type": {
          "enum": [
            "aio",
            "engine",
            "replica"
          ],
          "type": "string"
        }
      },
      "type": "object",
      "additionalProperties": false
    },
    "status": {
      "description": "InstanceManagerStatus defines the observed state of the Longhorn instance manager",
      "properties": {
        "apiMinVersion": {
          "type": "integer"
        },
        "apiVersion": {
          "type": "integer"
        },
        "currentState": {
          "type": "string"
        },
        "instanceEngines": {
          "additionalProperties": {
            "properties": {
              "spec": {
                "properties": {
                  "backendStoreDriver": {
                    "description": "Deprecated:Replaced by field `dataEngine`.",
                    "type": "string"
                  },
                  "dataEngine": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "status": {
                "properties": {
                  "conditions": {
                    "additionalProperties": {
                      "type": "boolean"
                    },
                    "nullable": true,
                    "type": "object"
                  },
                  "endpoint": {
                    "type": "string"
                  },
                  "errorMsg": {
                    "type": "string"
                  },
                  "listen": {
                    "type": "string"
                  },
                  "portEnd": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "portStart": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "resourceVersion": {
                    "format": "int64",
                    "type": "integer"
                  },
                  "state": {
                    "type": "string"
                  },
                  "targetPortEnd": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "targetPortStart": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "type": {
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              }
            },
            "type": "object",
            "additionalProperties": false
          },
          "nullable": true,
          "type": "object"
        },
        "instanceReplicas": {
          "additionalProperties": {
            "properties": {
              "spec": {
                "properties": {
                  "backendStoreDriver": {
                    "description": "Deprecated:Replaced by field `dataEngine`.",
                    "type": "string"
                  },
                  "dataEngine": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "status": {
                "properties": {
                  "conditions": {
                    "additionalProperties": {
                      "type": "boolean"
                    },
                    "nullable": true,
                    "type": "object"
                  },
                  "endpoint": {
                    "type": "string"
                  },
                  "errorMsg": {
                    "type": "string"
                  },
                  "listen": {
                    "type": "string"
                  },
                  "portEnd": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "portStart": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "resourceVersion": {
                    "format": "int64",
                    "type": "integer"
                  },
                  "state": {
                    "type": "string"
                  },
                  "targetPortEnd": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "targetPortStart": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "type": {
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              }
            },
            "type": "object",
            "additionalProperties": false
          },
          "nullable": true,
          "type": "object"
        },
        "instances": {
          "additionalProperties": {
            "properties": {
              "spec": {
                "properties": {
                  "backendStoreDriver": {
                    "description": "Deprecated:Replaced by field `dataEngine`.",
                    "type": "string"
                  },
                  "dataEngine": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              },
              "status": {
                "properties": {
                  "conditions": {
                    "additionalProperties": {
                      "type": "boolean"
                    },
                    "nullable": true,
                    "type": "object"
                  },
                  "endpoint": {
                    "type": "string"
                  },
                  "errorMsg": {
                    "type": "string"
                  },
                  "listen": {
                    "type": "string"
                  },
                  "portEnd": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "portStart": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "resourceVersion": {
                    "format": "int64",
                    "type": "integer"
                  },
                  "state": {
                    "type": "string"
                  },
                  "targetPortEnd": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "targetPortStart": {
                    "format": "int32",
                    "type": "integer"
                  },
                  "type": {
                    "type": "string"
                  }
                },
                "type": "object",
                "additionalProperties": false
              }
            },
            "type": "object",
            "additionalProperties": false
          },
          "description": "Deprecated: Replaced by InstanceEngines and InstanceReplicas",
          "nullable": true,
          "type": "object"
        },
        "ip": {
          "type": "string"
        },
        "ownerID": {
          "type": "string"
        },
        "proxyApiMinVersion": {
          "type": "integer"
        },
        "proxyApiVersion": {
          "type": "integer"
        }
      },
      "type": "object",
      "additionalProperties": false
    }
  },
  "type": "object"
}
