{
  "description": "TemplateInstance is the Schema for the templatesinstance API",
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More 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. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": "string"
    },
    "metadata": {
      "type": "object"
    },
    "spec": {
      "description": "TemplateInstanceSpec holds the expected cluster status of the template instance",
      "properties": {
        "parameters": {
          "description": "Parameters hold the values of the defined parameters in the template",
          "items": {
            "properties": {
              "name": {
                "description": "Name is the name of the parameter to set",
                "type": "string"
              },
              "value": {
                "description": "Value is the value of the parameter to set",
                "type": "string"
              }
            },
            "type": "object",
            "additionalProperties": false
          },
          "type": "array"
        },
        "sync": {
          "description": "If true the template instance will keep the deployed resources in sync with the template.",
          "type": "boolean"
        },
        "template": {
          "description": "The template to instantiate. This is an immutable field",
          "type": "string"
        }
      },
      "required": [
        "template"
      ],
      "type": "object",
      "additionalProperties": false
    },
    "status": {
      "description": "TemplateInstanceStatus describes the current status of the template instance in the cluster",
      "properties": {
        "mappedConfigmaps": {
          "additionalProperties": {
            "properties": {
              "reason": {
                "description": "Reason of resource mapping if failed",
                "type": "string"
              },
              "status": {
                "description": "InstanceDeploymentStatus describes the status of template instance deployment as {\"Deployed\", \"Failed\", \"\"}",
                "type": "string"
              }
            },
            "type": "object",
            "additionalProperties": false
          },
          "description": "MappedConfigmaps is a list of configmaps which have been mapped along with its state.",
          "type": "object"
        },
        "mappedSecrets": {
          "additionalProperties": {
            "properties": {
              "reason": {
                "description": "Reason of resource mapping if failed",
                "type": "string"
              },
              "status": {
                "description": "InstanceDeploymentStatus describes the status of template instance deployment as {\"Deployed\", \"Failed\", \"\"}",
                "type": "string"
              }
            },
            "type": "object",
            "additionalProperties": false
          },
          "description": "MappedSecrets is a list of secrets which have been mapped along with its state.",
          "type": "object"
        },
        "message": {
          "description": "A human readable message indicating details about why the namespace is in this condition.",
          "type": "string"
        },
        "observedAt": {
          "description": "LastAppliedAt indicates when the template was last applied",
          "format": "date-time",
          "type": "string"
        },
        "reason": {
          "description": "A brief CamelCase message indicating details about why the namespace is in this state.",
          "type": "string"
        },
        "status": {
          "description": "Status holds the template instances status",
          "type": "string"
        },
        "templateHash": {
          "description": "TemplateHash is used to ignore false-positive template update events",
          "type": "string"
        },
        "templateManifests": {
          "description": "TemplateManifests are the manifests that were rendered before",
          "type": "string"
        }
      },
      "required": [
        "status"
      ],
      "type": "object",
      "additionalProperties": false
    }
  },
  "type": "object"
}
