{
  "description": "ClusterResourceSetBinding lists all matching ClusterResourceSets with the cluster it belongs to.",
  "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": "spec is the desired state of ClusterResourceSetBinding.",
      "properties": {
        "bindings": {
          "description": "bindings is a list of ClusterResourceSets and their resources.",
          "items": {
            "description": "ResourceSetBinding keeps info on all of the resources in a ClusterResourceSet.",
            "properties": {
              "clusterResourceSetName": {
                "description": "clusterResourceSetName is the name of the ClusterResourceSet that is applied to the owner cluster of the binding.",
                "maxLength": 253,
                "minLength": 1,
                "type": "string"
              },
              "resources": {
                "description": "resources is a list of resources that the ClusterResourceSet has.",
                "items": {
                  "description": "ResourceBinding shows the status of a resource that belongs to a ClusterResourceSet matched by the owner cluster of the ClusterResourceSetBinding object.",
                  "properties": {
                    "applied": {
                      "description": "applied is to track if a resource is applied to the cluster or not.",
                      "type": "boolean"
                    },
                    "hash": {
                      "description": "hash is the hash of a resource's data. This can be used to decide if a resource is changed.\nFor \"ApplyOnce\" ClusterResourceSet.spec.strategy, this is no-op as that strategy does not act on change.",
                      "maxLength": 256,
                      "minLength": 1,
                      "type": "string"
                    },
                    "kind": {
                      "description": "kind of the resource. Supported kinds are: Secrets and ConfigMaps.",
                      "enum": [
                        "Secret",
                        "ConfigMap"
                      ],
                      "type": "string"
                    },
                    "lastAppliedTime": {
                      "description": "lastAppliedTime identifies when this resource was last applied to the cluster.",
                      "format": "date-time",
                      "type": "string"
                    },
                    "name": {
                      "description": "name of the resource that is in the same namespace with ClusterResourceSet object.",
                      "maxLength": 253,
                      "minLength": 1,
                      "type": "string"
                    }
                  },
                  "required": [
                    "applied",
                    "kind",
                    "name"
                  ],
                  "type": "object",
                  "additionalProperties": false
                },
                "maxItems": 100,
                "type": "array",
                "x-kubernetes-list-type": "atomic"
              }
            },
            "required": [
              "clusterResourceSetName"
            ],
            "type": "object",
            "additionalProperties": false
          },
          "maxItems": 100,
          "type": "array",
          "x-kubernetes-list-type": "atomic"
        },
        "clusterName": {
          "description": "clusterName is the name of the Cluster this binding applies to.",
          "maxLength": 63,
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "clusterName"
      ],
      "type": "object",
      "additionalProperties": false
    }
  },
  "required": [
    "spec"
  ],
  "type": "object"
}
