{
  "description": "CompositePodGroupTemplate represents a template for a CompositePodGroup with a scheduling policy.",
  "properties": {
    "compositePodGroupTemplates": {
      "description": "compositePodGroupTemplates is the list of templates for children CompositePodGroups. The maximum number of templates is 8. At least one entry in CompositePodGroupTemplates or PodGroupTemplates must be set.",
      "items": {
        "$ref": "_definitions.json#/definitions/io.k8s.api.scheduling.v1beta1.CompositePodGroupTemplate"
      },
      "type": [
        "array",
        "null"
      ],
      "x-kubernetes-list-map-keys": [
        "name"
      ],
      "x-kubernetes-list-type": "map"
    },
    "disruptionMode": {
      "$ref": "_definitions.json#/definitions/io.k8s.api.scheduling.v1beta1.CompositeDisruptionMode",
      "description": "disruptionMode defines the mode in which a given CompositePodGroup can be disrupted. One of Single, All. This field is immutable."
    },
    "name": {
      "description": "name is a unique identifier for the CompositePodGroupTemplate within the Workload. It must be a DNS label. This field is required.",
      "type": [
        "string",
        "null"
      ]
    },
    "podGroupTemplates": {
      "description": "podGroupTemplates is the list of templates for children PodGroups. The maximum number of templates is 8. At least one entry in CompositePodGroupTemplates or PodGroupTemplates must be set.",
      "items": {
        "$ref": "_definitions.json#/definitions/io.k8s.api.scheduling.v1beta1.PodGroupTemplate"
      },
      "type": [
        "array",
        "null"
      ],
      "x-kubernetes-list-map-keys": [
        "name"
      ],
      "x-kubernetes-list-type": "map"
    },
    "preemptionPolicy": {
      "description": "preemptionPolicy is the Policy for preempting pods/podgroups with lower priority. One of Never, PreemptLowerPriority. This field is immutable.",
      "type": [
        "string",
        "null"
      ]
    },
    "priority": {
      "description": "priority is the value of priority of composite pod groups created from this template. Various system components use this field to find the priority of the composite pod group. The higher the value, the higher the priority. This field is immutable.",
      "format": "int32",
      "type": [
        "integer",
        "null"
      ]
    },
    "priorityClassName": {
      "description": "priorityClassName indicates the priority that should be considered when scheduling a composite pod group created from this template. This field is immutable.",
      "type": [
        "string",
        "null"
      ]
    },
    "schedulingConstraints": {
      "$ref": "_definitions.json#/definitions/io.k8s.api.scheduling.v1beta1.CompositePodGroupSchedulingConstraints",
      "description": "schedulingConstraints defines optional scheduling constraints (e.g. topology) for this CompositePodGroupTemplate. This field is immutable."
    },
    "schedulingPolicy": {
      "$ref": "_definitions.json#/definitions/io.k8s.api.scheduling.v1beta1.CompositePodGroupSchedulingPolicy",
      "description": "schedulingPolicy defines the scheduling policy for this template."
    }
  },
  "required": [
    "name",
    "schedulingPolicy"
  ],
  "type": "object",
  "$schema": "http://json-schema.org/schema#"
}