{
  "description": "DockerClusterTemplate is the Schema for the dockerclustertemplates API.\n\nDeprecated: This type will be removed in one of the next releases.",
  "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": "DockerClusterTemplateSpec defines the desired state of DockerClusterTemplate.",
      "properties": {
        "template": {
          "description": "DockerClusterTemplateResource describes the data needed to create a DockerCluster from a template.",
          "properties": {
            "spec": {
              "description": "DockerClusterSpec defines the desired state of DockerCluster.",
              "properties": {
                "controlPlaneEndpoint": {
                  "description": "ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.",
                  "properties": {
                    "host": {
                      "description": "Host is the hostname on which the API server is serving.",
                      "type": "string"
                    },
                    "port": {
                      "description": "Port is the port on which the API server is serving.",
                      "type": "integer"
                    }
                  },
                  "required": [
                    "host",
                    "port"
                  ],
                  "type": "object",
                  "additionalProperties": false
                },
                "failureDomains": {
                  "additionalProperties": {
                    "description": "FailureDomainSpec is the Schema for Cluster API failure domains.\nIt allows controllers to understand how many failure domains a cluster can optionally span across.",
                    "properties": {
                      "attributes": {
                        "additionalProperties": {
                          "type": "string"
                        },
                        "description": "attributes is a free form map of attributes an infrastructure provider might use or require.",
                        "type": "object"
                      },
                      "controlPlane": {
                        "description": "controlPlane determines if this failure domain is suitable for use by control plane machines.",
                        "type": "boolean"
                      }
                    },
                    "type": "object",
                    "additionalProperties": false
                  },
                  "description": "FailureDomains are not usulaly defined on the spec.\nThe docker provider is special since failure domains don't mean anything in a local docker environment.\nInstead, the docker cluster controller will simply copy these into the Status and allow the Cluster API\ncontrollers to do what they will with the defined failure domains.",
                  "type": "object"
                },
                "loadBalancer": {
                  "description": "LoadBalancer allows defining configurations for the cluster load balancer.",
                  "properties": {
                    "imageRepository": {
                      "description": "ImageRepository sets the container registry to pull the haproxy image from.\nif not set, \"kindest\" will be used instead.",
                      "type": "string"
                    },
                    "imageTag": {
                      "description": "ImageTag allows to specify a tag for the haproxy image.\nif not set, \"v20210715-a6da3463\" will be used instead.",
                      "type": "string"
                    }
                  },
                  "type": "object",
                  "additionalProperties": false
                }
              },
              "type": "object",
              "additionalProperties": false
            }
          },
          "required": [
            "spec"
          ],
          "type": "object",
          "additionalProperties": false
        }
      },
      "required": [
        "template"
      ],
      "type": "object",
      "additionalProperties": false
    }
  },
  "type": "object"
}
