{
  "description": "DBClusterParameterGroup is the Schema for the DBClusterParameterGroups API",
  "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": "DBClusterParameterGroupSpec defines the desired state of DBClusterParameterGroup.\n\nContains the details of an Amazon RDS DB cluster parameter group.\n\nThis data type is used as a response element in the DescribeDBClusterParameterGroups\naction.",
      "properties": {
        "description": {
          "description": "The description for the DB cluster parameter group.",
          "type": "string"
        },
        "family": {
          "description": "The DB cluster parameter group family name. A DB cluster parameter group\ncan be associated with one and only one DB cluster parameter group family,\nand can be applied only to a DB cluster running a database engine and engine\nversion compatible with that DB cluster parameter group family.\n\n# Aurora MySQL\n\nExample: aurora-mysql5.7, aurora-mysql8.0\n\n# Aurora PostgreSQL\n\nExample: aurora-postgresql14\n\n# RDS for MySQL\n\nExample: mysql8.0\n\n# RDS for PostgreSQL\n\nExample: postgres13\n\nTo list all of the available parameter group families for a DB engine, use\nthe following command:\n\naws rds describe-db-engine-versions --query \"DBEngineVersions[].DBParameterGroupFamily\"\n--engine\n\nFor example, to list all of the available parameter group families for the\nAurora PostgreSQL DB engine, use the following command:\n\naws rds describe-db-engine-versions --query \"DBEngineVersions[].DBParameterGroupFamily\"\n--engine aurora-postgresql\n\nThe output contains duplicates.\n\nThe following are the valid DB engine values:\n\n  - aurora-mysql\n\n  - aurora-postgresql\n\n  - mysql\n\n  - postgres",
          "type": "string"
        },
        "name": {
          "description": "The name of the DB cluster parameter group.\n\nConstraints:\n\n  - Must not match the name of an existing DB cluster parameter group.\n\nThis value is stored as a lowercase string.",
          "type": "string"
        },
        "parameterOverrides": {
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        },
        "parameters": {
          "description": "A list of parameters in the DB cluster parameter group to modify.\n\nValid Values (for the application method): immediate | pending-reboot\n\nYou can use the immediate value with dynamic parameters only. You can use\nthe pending-reboot value for both dynamic and static parameters.\n\nWhen the application method is immediate, changes to dynamic parameters are\napplied immediately to the DB clusters associated with the parameter group.\nWhen the application method is pending-reboot, changes to dynamic and static\nparameters are applied after a reboot without failover to the DB clusters\nassociated with the parameter group.",
          "items": {
            "description": "This data type is used as a request parameter in the ModifyDBParameterGroup\nand ResetDBParameterGroup actions.\n\nThis data type is used as a response element in the DescribeEngineDefaultParameters\nand DescribeDBParameters actions.",
            "properties": {
              "allowedValues": {
                "type": "string"
              },
              "applyMethod": {
                "type": "string"
              },
              "applyType": {
                "type": "string"
              },
              "dataType": {
                "type": "string"
              },
              "description": {
                "type": "string"
              },
              "isModifiable": {
                "type": "boolean"
              },
              "minimumEngineVersion": {
                "type": "string"
              },
              "parameterName": {
                "type": "string"
              },
              "parameterValue": {
                "type": "string"
              },
              "source": {
                "type": "string"
              },
              "supportedEngineModes": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            },
            "type": "object",
            "additionalProperties": false
          },
          "type": "array"
        },
        "tags": {
          "description": "Tags to assign to the DB cluster parameter group.",
          "items": {
            "description": "Metadata assigned to an Amazon RDS resource consisting of a key-value pair.\n\nFor more information, see Tagging Amazon RDS resources (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html)\nin the Amazon RDS User Guide or Tagging Amazon Aurora and Amazon RDS resources\n(https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html)\nin the Amazon Aurora User Guide.",
            "properties": {
              "key": {
                "type": "string"
              },
              "value": {
                "type": "string"
              }
            },
            "type": "object",
            "additionalProperties": false
          },
          "type": "array"
        }
      },
      "required": [
        "description",
        "family",
        "name"
      ],
      "type": "object",
      "additionalProperties": false
    },
    "status": {
      "description": "DBClusterParameterGroupStatus defines the observed state of DBClusterParameterGroup",
      "properties": {
        "ackResourceMetadata": {
          "description": "All CRs managed by ACK have a common `Status.ACKResourceMetadata` member\nthat is used to contain resource sync state, account ownership,\nconstructed ARN for the resource",
          "properties": {
            "arn": {
              "description": "ARN is the Amazon Resource Name for the resource. This is a\nglobally-unique identifier and is set only by the ACK service controller\nonce the controller has orchestrated the creation of the resource OR\nwhen it has verified that an \"adopted\" resource (a resource where the\nARN annotation was set by the Kubernetes user on the CR) exists and\nmatches the supplied CR's Spec field values.\nhttps://github.com/aws/aws-controllers-k8s/issues/270",
              "type": "string"
            },
            "ownerAccountID": {
              "description": "OwnerAccountID is the AWS Account ID of the account that owns the\nbackend AWS service API resource.",
              "type": "string"
            },
            "region": {
              "description": "Region is the AWS region in which the resource exists or will exist.",
              "type": "string"
            }
          },
          "required": [
            "ownerAccountID",
            "region"
          ],
          "type": "object",
          "additionalProperties": false
        },
        "conditions": {
          "description": "All CRs managed by ACK have a common `Status.Conditions` member that\ncontains a collection of `ackv1alpha1.Condition` objects that describe\nthe various terminal states of the CR and its backend AWS service API\nresource",
          "items": {
            "description": "Condition is the common struct used by all CRDs managed by ACK service\ncontrollers to indicate terminal states  of the CR and its backend AWS\nservice API resource",
            "properties": {
              "lastTransitionTime": {
                "description": "Last time the condition transitioned from one status to another.",
                "format": "date-time",
                "type": "string"
              },
              "message": {
                "description": "A human readable message indicating details about the transition.",
                "type": "string"
              },
              "reason": {
                "description": "The reason for the condition's last transition.",
                "type": "string"
              },
              "status": {
                "description": "Status of the condition, one of True, False, Unknown.",
                "type": "string"
              },
              "type": {
                "description": "Type is the type of the Condition",
                "type": "string"
              }
            },
            "required": [
              "status",
              "type"
            ],
            "type": "object",
            "additionalProperties": false
          },
          "type": "array"
        },
        "parameterOverrideStatuses": {
          "description": "Provides a list of parameters for the DB cluster parameter group.",
          "items": {
            "description": "This data type is used as a request parameter in the ModifyDBParameterGroup\nand ResetDBParameterGroup actions.\n\nThis data type is used as a response element in the DescribeEngineDefaultParameters\nand DescribeDBParameters actions.",
            "properties": {
              "allowedValues": {
                "type": "string"
              },
              "applyMethod": {
                "type": "string"
              },
              "applyType": {
                "type": "string"
              },
              "dataType": {
                "type": "string"
              },
              "description": {
                "type": "string"
              },
              "isModifiable": {
                "type": "boolean"
              },
              "minimumEngineVersion": {
                "type": "string"
              },
              "parameterName": {
                "type": "string"
              },
              "parameterValue": {
                "type": "string"
              },
              "source": {
                "type": "string"
              },
              "supportedEngineModes": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            },
            "type": "object",
            "additionalProperties": false
          },
          "type": "array"
        }
      },
      "type": "object",
      "additionalProperties": false
    }
  },
  "type": "object"
}
