{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/cloudera/main/json-schema/cloudera-update-deployment-request-schema.json", "title": "UpdateDeploymentRequest", "description": "Provides all of the configuration that dictates how a deployment should be updated.", "x-generated": "2026-10-04", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/cloudera-cdflocalrpcapiversion1-api-openapi.yml#/components/schemas/UpdateDeploymentRequest", "type": "object", "x-workload": true, "x-client-only": true, "required": [ "environmentCrn", "configurationVersion", "deploymentCrn" ], "properties": { "environmentCrn": { "type": "string", "description": "The CRN of an environment to execute the command." }, "deploymentCrn": { "type": "string", "description": "The CRN of the existing deployment to be updated." }, "configurationVersion": { "type": "integer", "format": "int32", "description": "The version of this configuration." }, "assetUpdateRequestCrn": { "type": "string", "description": "The CRN of the asset update request. Required when updating assets of an existing deployment. Deprecated, use asset-update-request-crn in the update-flow-in-deployment command.", "x-deprecated": true }, "clusterSize": { "description": "The deployment t-shirt size.", "$ref": "#/$defs/BasicClusterSize" }, "parameterGroups": { "type": "array", "description": "The list of flow parameter groups, for the first deployed flow. Deprecated, use parameter-groups in the update-flow-in-deployment command.", "items": { "$ref": "#/$defs/FlowParameterGroup" }, "x-deprecated": true }, "autoScaleMinNodes": { "type": "integer", "format": "int32", "description": "The minimum number of nodes that the cluster should allocate. May only be specified when autoScalingEnabled is true." }, "autoScaleMaxNodes": { "type": "integer", "format": "int32", "description": "The maximum number of nodes that the cluster should scale to. May only be specified when autoScalingEnabled is true." }, "staticNodeCount": { "type": "integer", "format": "int32", "description": "The static number of nodes that the cluster should allocate. May only be specified when autoScalingEnabled is false." }, "kpis": { "type": "array", "description": "The list of Key Performance Indicators (KPIs) with which to replace the current list of configured KPIs. Only deployment-level KPIs are allowed. To configure flow-level KPIs, use update-flow-in-deployment. If the list is empty, all KPIs are deleted; however, if it is not specified, the current KPI settings are not updated.", "items": { "$ref": "#/$defs/ConfiguredKpi" } }, "inboundHostname": { "type": "string", "description": "The FQDN of inbound hostname or just the prefix part." }, "listenComponents": { "type": "array", "description": "Listen components port and protocol data.", "items": { "$ref": "#/$defs/SimpleListenComponent" } }, "inboundConnectionAuthorizedIpRanges": { "type": "array", "description": "Set of authorized CIDR ranges for the inbound connections.", "uniqueItems": true, "items": { "type": "string" } }, "deactivateInboundConnection": { "type": "boolean", "description": "Specifies that the inbound connection be deactivated." }, "customNarConfigurationCrn": { "type": "string", "description": "The CRN of the Custom NAR configuration." }, "customPythonConfigurationCrn": { "type": "string", "description": "The CRN of the Custom Python configuration." }, "cliSupportsMultiFlow": { "type": "boolean", "description": "Specifies whether the CDP CLI supports the multi-flow. Deprecated, this argument is only for internal use.", "x-deprecated": true } }, "$defs": { "AlertFrequencyUnit": { "type": "object", "description": "The alert frequency unit to use in KPI tolerances and metrics", "x-workload": true, "x-client-only": true, "required": [ "id", "label" ], "properties": { "id": { "type": "string", "description": "The id of the frequency unit", "enum": [ "SECONDS", "MINUTES", "HOURS", "DAYS" ] }, "label": { "type": "string", "description": "The user-friendly label of the frequency unit" }, "abbreviation": { "type": "string", "description": "The abbreviation for frequency unit" } } }, "AssetReference": { "type": "object", "description": "A reference to an asset used in a flow parameter", "x-workload": true, "x-client-only": true, "properties": { "id": { "type": "string", "description": "The ID of the asset" }, "name": { "type": "string", "description": "The name of the asset" }, "path": { "type": "string", "description": "The path of the asset" }, "version": { "type": "string", "description": "The version of the asset" }, "environmentProvided": { "type": "boolean", "description": "Whether or not the asset is provided automatically by the environment. If true, the asset cannot removed or replaced." } } }, "BasicClusterSize": { "type": "object", "description": "Cluster scaling parameters.", "x-workload": true, "x-client-only": true, "required": [ "name" ], "properties": { "name": { "type": "string", "description": "The name of this Cluster Size.", "enum": [ "EXTRA_SMALL", "SMALL", "MEDIUM", "LARGE", "CUSTOM" ] }, "coresPerNode": { "type": "number", "format": "double", "description": "The number of CPU Cores per node (will be truncated to the nearest integer)." }, "memoryLimit": { "type": "number", "format": "double", "description": "The memory limit (will be truncated to the nearest integer)." } } }, "ConfiguredAlert": { "type": "object", "description": "An alert configuration that specifies a configured frequency with lower and/or upper thresholds", "x-workload": true, "x-client-only": true, "properties": { "thresholdMoreThan": { "description": "The optional moreThan threshold that should trigger an alert; at least one of thresholdMoreThan and thresholdLessThan is required", "$ref": "#/$defs/ConfiguredAlertThreshold" }, "thresholdLessThan": { "description": "The optional lessThan threshold that should trigger an alert", "$ref": "#/$defs/ConfiguredAlertThreshold" }, "frequencyTolerance": { "description": "The configured alert frequency tolerance for the KPI", "$ref": "#/$defs/ConfiguredAlertFrequencyTolerance" } } }, "ConfiguredAlertFrequencyTolerance": { "type": "object", "description": "An alert configuration frequency tolerance for measuring an amount of time and unit for alert triggering", "x-workload": true, "x-client-only": true, "required": [ "unit", "value" ], "properties": { "unit": { "description": "The unit of time controlling how long a metric value can persist outside its boundaries before an alert is generated", "$ref": "#/$defs/AlertFrequencyUnit" }, "value": { "type": "number", "format": "double", "description": "The amount of time, associated with the given unit, a metric value can persist outside its boundaries before an alert is generated" } } }, "ConfiguredAlertThreshold": { "type": "object", "description": "A configured alert threshold to pair together a statistical unit and value", "x-workload": true, "x-client-only": true, "required": [ "unitId", "value" ], "properties": { "unitId": { "type": "string", "description": "The identifier of the alert threshold unit to associate with the given threshold value" }, "value": { "type": "number", "format": "double", "description": "The threshold value whose triggering causes an alert" } } }, "ConfiguredKpi": { "type": "object", "description": "An instantiated KPI specifying a metric on which to alert", "x-workload": true, "x-client-only": true, "required": [ "metricId" ], "properties": { "metricId": { "type": "string", "description": "The id of the associated metric" }, "id": { "type": "string", "description": "The id of the KPI; used only when viewing and editing existing KPIs" }, "metricComponentType": { "type": "string", "description": "The component type of the associated metric", "enum": [ "SYSTEM", "NIFI_FLOW", "NIFI_PROCESSOR", "NIFI_PROCESS_GROUP", "NIFI_CONNECTION" ] }, "alert": { "description": "The alert specification for the associated metric", "$ref": "#/$defs/ConfiguredAlert" }, "componentId": { "type": "string", "description": "The optional process group ID, processor ID, or connection ID. This is a composite ID containing a chain of process group IDs representing the component's full ancestry" } } }, "FlowParameter": { "type": "object", "description": "A flow parameter", "x-workload": true, "x-client-only": true, "properties": { "name": { "type": "string", "description": "The name of the parameter" }, "description": { "type": "string", "description": "The description of the param" }, "value": { "type": "string", "description": "The value of the parameter", "x-no-paramfile": true }, "sensitive": { "type": "boolean", "description": "Whether or not the parameter value is sensitive" }, "type": { "type": "string", "description": "The type of parameter. Possibly TEXT, FILE, FILES", "enum": [ "TEXT", "FILE", "FILES" ] }, "assetReferences": { "type": "array", "description": "The list of referenced assets.", "items": { "$ref": "#/$defs/AssetReference" } }, "valueSet": { "type": "boolean", "description": "Indicates if the value of this parameter is set (i.e. not null)", "readOnly": true }, "sourceParameterGroupId": { "type": "string", "description": "The ID of the shared parameter group where the value should come from." } } }, "FlowParameterGroup": { "type": "object", "description": "A flow parameter group", "x-workload": true, "x-client-only": true, "properties": { "name": { "type": "string", "description": "The name of the parameter group" }, "parameters": { "type": "array", "description": "The parameters in the group", "items": { "$ref": "#/$defs/FlowParameter" } }, "inheritedParameterGroups": { "type": "array", "description": "The names and versions of the inherited parameter groups", "uniqueItems": true, "items": { "$ref": "#/$defs/VersionedParameterGroupReference" } }, "otherName": { "type": "string", "description": "The other name that can be used to reference this group in a flow. This is used when multiple flows with same parameter group are deployed in to same NiFi cluster." } } }, "SimpleListenComponent": { "type": "object", "description": "Provides subset of metadata of a Listen* component.", "x-workload": true, "x-client-only": true, "required": [ "protocol" ], "properties": { "protocol": { "type": "string", "description": "Inbound protocol.", "enum": [ "TCP", "UDP" ] }, "port": { "type": "string", "description": "Inbound port." } } }, "VersionedParameterGroupReference": { "type": "object", "description": "A reference to a specific version of a shared parameter group", "x-workload": true, "x-client-only": true, "required": [ "groupId" ], "properties": { "groupId": { "type": "string", "description": "The ID of the parameter group" }, "version": { "type": "integer", "format": "int64", "description": "The version of the parameter group. Empty or null means the latest version." } } } } }