@cdktf/provider-databricks
Version:
Prebuilt databricks Provider for Terraform CDK (cdktf)
1,066 lines (1,065 loc) • 315 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DataDatabricksInstancePool = exports.DataDatabricksInstancePoolPoolInfoOutputReference = exports.DataDatabricksInstancePoolPoolInfoStatsOutputReference = exports.DataDatabricksInstancePoolPoolInfoPreloadedDockerImageList = exports.DataDatabricksInstancePoolPoolInfoPreloadedDockerImageOutputReference = exports.DataDatabricksInstancePoolPoolInfoPreloadedDockerImageBasicAuthOutputReference = exports.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesList = exports.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesOutputReference = exports.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideList = exports.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideOutputReference = exports.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionOutputReference = exports.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionOutputReference = exports.DataDatabricksInstancePoolPoolInfoGcpAttributesOutputReference = exports.DataDatabricksInstancePoolPoolInfoDiskSpecOutputReference = exports.DataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeOutputReference = exports.DataDatabricksInstancePoolPoolInfoAzureAttributesOutputReference = exports.DataDatabricksInstancePoolPoolInfoAwsAttributesOutputReference = void 0;
exports.dataDatabricksInstancePoolPoolInfoAwsAttributesToTerraform = dataDatabricksInstancePoolPoolInfoAwsAttributesToTerraform;
exports.dataDatabricksInstancePoolPoolInfoAwsAttributesToHclTerraform = dataDatabricksInstancePoolPoolInfoAwsAttributesToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoAzureAttributesToTerraform = dataDatabricksInstancePoolPoolInfoAzureAttributesToTerraform;
exports.dataDatabricksInstancePoolPoolInfoAzureAttributesToHclTerraform = dataDatabricksInstancePoolPoolInfoAzureAttributesToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeToTerraform = dataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeToTerraform;
exports.dataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeToHclTerraform = dataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoDiskSpecToTerraform = dataDatabricksInstancePoolPoolInfoDiskSpecToTerraform;
exports.dataDatabricksInstancePoolPoolInfoDiskSpecToHclTerraform = dataDatabricksInstancePoolPoolInfoDiskSpecToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoGcpAttributesToTerraform = dataDatabricksInstancePoolPoolInfoGcpAttributesToTerraform;
exports.dataDatabricksInstancePoolPoolInfoGcpAttributesToHclTerraform = dataDatabricksInstancePoolPoolInfoGcpAttributesToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionToTerraform = dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionToTerraform;
exports.dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionToHclTerraform = dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionToTerraform = dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionToTerraform;
exports.dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionToHclTerraform = dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideToTerraform = dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideToTerraform;
exports.dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideToHclTerraform = dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesToTerraform = dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesToTerraform;
exports.dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesToHclTerraform = dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoPreloadedDockerImageBasicAuthToTerraform = dataDatabricksInstancePoolPoolInfoPreloadedDockerImageBasicAuthToTerraform;
exports.dataDatabricksInstancePoolPoolInfoPreloadedDockerImageBasicAuthToHclTerraform = dataDatabricksInstancePoolPoolInfoPreloadedDockerImageBasicAuthToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoPreloadedDockerImageToTerraform = dataDatabricksInstancePoolPoolInfoPreloadedDockerImageToTerraform;
exports.dataDatabricksInstancePoolPoolInfoPreloadedDockerImageToHclTerraform = dataDatabricksInstancePoolPoolInfoPreloadedDockerImageToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoStatsToTerraform = dataDatabricksInstancePoolPoolInfoStatsToTerraform;
exports.dataDatabricksInstancePoolPoolInfoStatsToHclTerraform = dataDatabricksInstancePoolPoolInfoStatsToHclTerraform;
exports.dataDatabricksInstancePoolPoolInfoToTerraform = dataDatabricksInstancePoolPoolInfoToTerraform;
exports.dataDatabricksInstancePoolPoolInfoToHclTerraform = dataDatabricksInstancePoolPoolInfoToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function dataDatabricksInstancePoolPoolInfoAwsAttributesToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
availability: cdktf.stringToTerraform(struct.availability),
spot_bid_price_percent: cdktf.numberToTerraform(struct.spotBidPricePercent),
zone_id: cdktf.stringToTerraform(struct.zoneId),
};
}
function dataDatabricksInstancePoolPoolInfoAwsAttributesToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
availability: {
value: cdktf.stringToHclTerraform(struct.availability),
isBlock: false,
type: "simple",
storageClassType: "string",
},
spot_bid_price_percent: {
value: cdktf.numberToHclTerraform(struct.spotBidPricePercent),
isBlock: false,
type: "simple",
storageClassType: "number",
},
zone_id: {
value: cdktf.stringToHclTerraform(struct.zoneId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class DataDatabricksInstancePoolPoolInfoAwsAttributesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._availability !== undefined) {
hasAnyValues = true;
internalValueResult.availability = this._availability;
}
if (this._spotBidPricePercent !== undefined) {
hasAnyValues = true;
internalValueResult.spotBidPricePercent = this._spotBidPricePercent;
}
if (this._zoneId !== undefined) {
hasAnyValues = true;
internalValueResult.zoneId = this._zoneId;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._availability = undefined;
this._spotBidPricePercent = undefined;
this._zoneId = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._availability = value.availability;
this._spotBidPricePercent = value.spotBidPricePercent;
this._zoneId = value.zoneId;
}
}
get availability() {
return this.getStringAttribute('availability');
}
set availability(value) {
this._availability = value;
}
resetAvailability() {
this._availability = undefined;
}
// Temporarily expose input value. Use with caution.
get availabilityInput() {
return this._availability;
}
get spotBidPricePercent() {
return this.getNumberAttribute('spot_bid_price_percent');
}
set spotBidPricePercent(value) {
this._spotBidPricePercent = value;
}
resetSpotBidPricePercent() {
this._spotBidPricePercent = undefined;
}
// Temporarily expose input value. Use with caution.
get spotBidPricePercentInput() {
return this._spotBidPricePercent;
}
get zoneId() {
return this.getStringAttribute('zone_id');
}
set zoneId(value) {
this._zoneId = value;
}
resetZoneId() {
this._zoneId = undefined;
}
// Temporarily expose input value. Use with caution.
get zoneIdInput() {
return this._zoneId;
}
}
exports.DataDatabricksInstancePoolPoolInfoAwsAttributesOutputReference = DataDatabricksInstancePoolPoolInfoAwsAttributesOutputReference;
_a = JSII_RTTI_SYMBOL_1;
DataDatabricksInstancePoolPoolInfoAwsAttributesOutputReference[_a] = { fqn: "@cdktf/provider-databricks.dataDatabricksInstancePool.DataDatabricksInstancePoolPoolInfoAwsAttributesOutputReference", version: "13.36.0" };
function dataDatabricksInstancePoolPoolInfoAzureAttributesToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
availability: cdktf.stringToTerraform(struct.availability),
spot_bid_max_price: cdktf.numberToTerraform(struct.spotBidMaxPrice),
};
}
function dataDatabricksInstancePoolPoolInfoAzureAttributesToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
availability: {
value: cdktf.stringToHclTerraform(struct.availability),
isBlock: false,
type: "simple",
storageClassType: "string",
},
spot_bid_max_price: {
value: cdktf.numberToHclTerraform(struct.spotBidMaxPrice),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class DataDatabricksInstancePoolPoolInfoAzureAttributesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._availability !== undefined) {
hasAnyValues = true;
internalValueResult.availability = this._availability;
}
if (this._spotBidMaxPrice !== undefined) {
hasAnyValues = true;
internalValueResult.spotBidMaxPrice = this._spotBidMaxPrice;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._availability = undefined;
this._spotBidMaxPrice = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._availability = value.availability;
this._spotBidMaxPrice = value.spotBidMaxPrice;
}
}
get availability() {
return this.getStringAttribute('availability');
}
set availability(value) {
this._availability = value;
}
resetAvailability() {
this._availability = undefined;
}
// Temporarily expose input value. Use with caution.
get availabilityInput() {
return this._availability;
}
get spotBidMaxPrice() {
return this.getNumberAttribute('spot_bid_max_price');
}
set spotBidMaxPrice(value) {
this._spotBidMaxPrice = value;
}
resetSpotBidMaxPrice() {
this._spotBidMaxPrice = undefined;
}
// Temporarily expose input value. Use with caution.
get spotBidMaxPriceInput() {
return this._spotBidMaxPrice;
}
}
exports.DataDatabricksInstancePoolPoolInfoAzureAttributesOutputReference = DataDatabricksInstancePoolPoolInfoAzureAttributesOutputReference;
_b = JSII_RTTI_SYMBOL_1;
DataDatabricksInstancePoolPoolInfoAzureAttributesOutputReference[_b] = { fqn: "@cdktf/provider-databricks.dataDatabricksInstancePool.DataDatabricksInstancePoolPoolInfoAzureAttributesOutputReference", version: "13.36.0" };
function dataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
azure_disk_volume_type: cdktf.stringToTerraform(struct.azureDiskVolumeType),
ebs_volume_type: cdktf.stringToTerraform(struct.ebsVolumeType),
};
}
function dataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
azure_disk_volume_type: {
value: cdktf.stringToHclTerraform(struct.azureDiskVolumeType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
ebs_volume_type: {
value: cdktf.stringToHclTerraform(struct.ebsVolumeType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class DataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._azureDiskVolumeType !== undefined) {
hasAnyValues = true;
internalValueResult.azureDiskVolumeType = this._azureDiskVolumeType;
}
if (this._ebsVolumeType !== undefined) {
hasAnyValues = true;
internalValueResult.ebsVolumeType = this._ebsVolumeType;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._azureDiskVolumeType = undefined;
this._ebsVolumeType = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._azureDiskVolumeType = value.azureDiskVolumeType;
this._ebsVolumeType = value.ebsVolumeType;
}
}
get azureDiskVolumeType() {
return this.getStringAttribute('azure_disk_volume_type');
}
set azureDiskVolumeType(value) {
this._azureDiskVolumeType = value;
}
resetAzureDiskVolumeType() {
this._azureDiskVolumeType = undefined;
}
// Temporarily expose input value. Use with caution.
get azureDiskVolumeTypeInput() {
return this._azureDiskVolumeType;
}
get ebsVolumeType() {
return this.getStringAttribute('ebs_volume_type');
}
set ebsVolumeType(value) {
this._ebsVolumeType = value;
}
resetEbsVolumeType() {
this._ebsVolumeType = undefined;
}
// Temporarily expose input value. Use with caution.
get ebsVolumeTypeInput() {
return this._ebsVolumeType;
}
}
exports.DataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeOutputReference = DataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeOutputReference;
_c = JSII_RTTI_SYMBOL_1;
DataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeOutputReference[_c] = { fqn: "@cdktf/provider-databricks.dataDatabricksInstancePool.DataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeOutputReference", version: "13.36.0" };
function dataDatabricksInstancePoolPoolInfoDiskSpecToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
disk_count: cdktf.numberToTerraform(struct.diskCount),
disk_size: cdktf.numberToTerraform(struct.diskSize),
disk_type: dataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeToTerraform(struct.diskType),
};
}
function dataDatabricksInstancePoolPoolInfoDiskSpecToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
disk_count: {
value: cdktf.numberToHclTerraform(struct.diskCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
disk_size: {
value: cdktf.numberToHclTerraform(struct.diskSize),
isBlock: false,
type: "simple",
storageClassType: "number",
},
disk_type: {
value: dataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeToHclTerraform(struct.diskType),
isBlock: true,
type: "list",
storageClassType: "DataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class DataDatabricksInstancePoolPoolInfoDiskSpecOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// disk_type - computed: false, optional: true, required: false
this._diskType = new DataDatabricksInstancePoolPoolInfoDiskSpecDiskTypeOutputReference(this, "disk_type");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._diskCount !== undefined) {
hasAnyValues = true;
internalValueResult.diskCount = this._diskCount;
}
if (this._diskSize !== undefined) {
hasAnyValues = true;
internalValueResult.diskSize = this._diskSize;
}
if (this._diskType?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.diskType = this._diskType?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._diskCount = undefined;
this._diskSize = undefined;
this._diskType.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._diskCount = value.diskCount;
this._diskSize = value.diskSize;
this._diskType.internalValue = value.diskType;
}
}
get diskCount() {
return this.getNumberAttribute('disk_count');
}
set diskCount(value) {
this._diskCount = value;
}
resetDiskCount() {
this._diskCount = undefined;
}
// Temporarily expose input value. Use with caution.
get diskCountInput() {
return this._diskCount;
}
get diskSize() {
return this.getNumberAttribute('disk_size');
}
set diskSize(value) {
this._diskSize = value;
}
resetDiskSize() {
this._diskSize = undefined;
}
// Temporarily expose input value. Use with caution.
get diskSizeInput() {
return this._diskSize;
}
get diskType() {
return this._diskType;
}
putDiskType(value) {
this._diskType.internalValue = value;
}
resetDiskType() {
this._diskType.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get diskTypeInput() {
return this._diskType.internalValue;
}
}
exports.DataDatabricksInstancePoolPoolInfoDiskSpecOutputReference = DataDatabricksInstancePoolPoolInfoDiskSpecOutputReference;
_d = JSII_RTTI_SYMBOL_1;
DataDatabricksInstancePoolPoolInfoDiskSpecOutputReference[_d] = { fqn: "@cdktf/provider-databricks.dataDatabricksInstancePool.DataDatabricksInstancePoolPoolInfoDiskSpecOutputReference", version: "13.36.0" };
function dataDatabricksInstancePoolPoolInfoGcpAttributesToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
gcp_availability: cdktf.stringToTerraform(struct.gcpAvailability),
local_ssd_count: cdktf.numberToTerraform(struct.localSsdCount),
zone_id: cdktf.stringToTerraform(struct.zoneId),
};
}
function dataDatabricksInstancePoolPoolInfoGcpAttributesToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
gcp_availability: {
value: cdktf.stringToHclTerraform(struct.gcpAvailability),
isBlock: false,
type: "simple",
storageClassType: "string",
},
local_ssd_count: {
value: cdktf.numberToHclTerraform(struct.localSsdCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
zone_id: {
value: cdktf.stringToHclTerraform(struct.zoneId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class DataDatabricksInstancePoolPoolInfoGcpAttributesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._gcpAvailability !== undefined) {
hasAnyValues = true;
internalValueResult.gcpAvailability = this._gcpAvailability;
}
if (this._localSsdCount !== undefined) {
hasAnyValues = true;
internalValueResult.localSsdCount = this._localSsdCount;
}
if (this._zoneId !== undefined) {
hasAnyValues = true;
internalValueResult.zoneId = this._zoneId;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._gcpAvailability = undefined;
this._localSsdCount = undefined;
this._zoneId = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._gcpAvailability = value.gcpAvailability;
this._localSsdCount = value.localSsdCount;
this._zoneId = value.zoneId;
}
}
get gcpAvailability() {
return this.getStringAttribute('gcp_availability');
}
set gcpAvailability(value) {
this._gcpAvailability = value;
}
resetGcpAvailability() {
this._gcpAvailability = undefined;
}
// Temporarily expose input value. Use with caution.
get gcpAvailabilityInput() {
return this._gcpAvailability;
}
get localSsdCount() {
return this.getNumberAttribute('local_ssd_count');
}
set localSsdCount(value) {
this._localSsdCount = value;
}
resetLocalSsdCount() {
this._localSsdCount = undefined;
}
// Temporarily expose input value. Use with caution.
get localSsdCountInput() {
return this._localSsdCount;
}
get zoneId() {
return this.getStringAttribute('zone_id');
}
set zoneId(value) {
this._zoneId = value;
}
resetZoneId() {
this._zoneId = undefined;
}
// Temporarily expose input value. Use with caution.
get zoneIdInput() {
return this._zoneId;
}
}
exports.DataDatabricksInstancePoolPoolInfoGcpAttributesOutputReference = DataDatabricksInstancePoolPoolInfoGcpAttributesOutputReference;
_e = JSII_RTTI_SYMBOL_1;
DataDatabricksInstancePoolPoolInfoGcpAttributesOutputReference[_e] = { fqn: "@cdktf/provider-databricks.dataDatabricksInstancePool.DataDatabricksInstancePoolPoolInfoGcpAttributesOutputReference", version: "13.36.0" };
function dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
allocation_strategy: cdktf.stringToTerraform(struct.allocationStrategy),
instance_pools_to_use_count: cdktf.numberToTerraform(struct.instancePoolsToUseCount),
};
}
function dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
allocation_strategy: {
value: cdktf.stringToHclTerraform(struct.allocationStrategy),
isBlock: false,
type: "simple",
storageClassType: "string",
},
instance_pools_to_use_count: {
value: cdktf.numberToHclTerraform(struct.instancePoolsToUseCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._allocationStrategy !== undefined) {
hasAnyValues = true;
internalValueResult.allocationStrategy = this._allocationStrategy;
}
if (this._instancePoolsToUseCount !== undefined) {
hasAnyValues = true;
internalValueResult.instancePoolsToUseCount = this._instancePoolsToUseCount;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._allocationStrategy = undefined;
this._instancePoolsToUseCount = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._allocationStrategy = value.allocationStrategy;
this._instancePoolsToUseCount = value.instancePoolsToUseCount;
}
}
get allocationStrategy() {
return this.getStringAttribute('allocation_strategy');
}
set allocationStrategy(value) {
this._allocationStrategy = value;
}
// Temporarily expose input value. Use with caution.
get allocationStrategyInput() {
return this._allocationStrategy;
}
get instancePoolsToUseCount() {
return this.getNumberAttribute('instance_pools_to_use_count');
}
set instancePoolsToUseCount(value) {
this._instancePoolsToUseCount = value;
}
resetInstancePoolsToUseCount() {
this._instancePoolsToUseCount = undefined;
}
// Temporarily expose input value. Use with caution.
get instancePoolsToUseCountInput() {
return this._instancePoolsToUseCount;
}
}
exports.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionOutputReference = DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionOutputReference;
_f = JSII_RTTI_SYMBOL_1;
DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionOutputReference[_f] = { fqn: "@cdktf/provider-databricks.dataDatabricksInstancePool.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionOutputReference", version: "13.36.0" };
function dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
allocation_strategy: cdktf.stringToTerraform(struct.allocationStrategy),
instance_pools_to_use_count: cdktf.numberToTerraform(struct.instancePoolsToUseCount),
};
}
function dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
allocation_strategy: {
value: cdktf.stringToHclTerraform(struct.allocationStrategy),
isBlock: false,
type: "simple",
storageClassType: "string",
},
instance_pools_to_use_count: {
value: cdktf.numberToHclTerraform(struct.instancePoolsToUseCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._allocationStrategy !== undefined) {
hasAnyValues = true;
internalValueResult.allocationStrategy = this._allocationStrategy;
}
if (this._instancePoolsToUseCount !== undefined) {
hasAnyValues = true;
internalValueResult.instancePoolsToUseCount = this._instancePoolsToUseCount;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._allocationStrategy = undefined;
this._instancePoolsToUseCount = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._allocationStrategy = value.allocationStrategy;
this._instancePoolsToUseCount = value.instancePoolsToUseCount;
}
}
get allocationStrategy() {
return this.getStringAttribute('allocation_strategy');
}
set allocationStrategy(value) {
this._allocationStrategy = value;
}
// Temporarily expose input value. Use with caution.
get allocationStrategyInput() {
return this._allocationStrategy;
}
get instancePoolsToUseCount() {
return this.getNumberAttribute('instance_pools_to_use_count');
}
set instancePoolsToUseCount(value) {
this._instancePoolsToUseCount = value;
}
resetInstancePoolsToUseCount() {
this._instancePoolsToUseCount = undefined;
}
// Temporarily expose input value. Use with caution.
get instancePoolsToUseCountInput() {
return this._instancePoolsToUseCount;
}
}
exports.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionOutputReference = DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionOutputReference;
_g = JSII_RTTI_SYMBOL_1;
DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionOutputReference[_g] = { fqn: "@cdktf/provider-databricks.dataDatabricksInstancePool.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionOutputReference", version: "13.36.0" };
function dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
availability_zone: cdktf.stringToTerraform(struct.availabilityZone),
instance_type: cdktf.stringToTerraform(struct.instanceType),
};
}
function dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
availability_zone: {
value: cdktf.stringToHclTerraform(struct.availabilityZone),
isBlock: false,
type: "simple",
storageClassType: "string",
},
instance_type: {
value: cdktf.stringToHclTerraform(struct.instanceType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._availabilityZone !== undefined) {
hasAnyValues = true;
internalValueResult.availabilityZone = this._availabilityZone;
}
if (this._instanceType !== undefined) {
hasAnyValues = true;
internalValueResult.instanceType = this._instanceType;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._availabilityZone = undefined;
this._instanceType = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._availabilityZone = value.availabilityZone;
this._instanceType = value.instanceType;
}
}
get availabilityZone() {
return this.getStringAttribute('availability_zone');
}
set availabilityZone(value) {
this._availabilityZone = value;
}
// Temporarily expose input value. Use with caution.
get availabilityZoneInput() {
return this._availabilityZone;
}
get instanceType() {
return this.getStringAttribute('instance_type');
}
set instanceType(value) {
this._instanceType = value;
}
// Temporarily expose input value. Use with caution.
get instanceTypeInput() {
return this._instanceType;
}
}
exports.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideOutputReference = DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideOutputReference;
_h = JSII_RTTI_SYMBOL_1;
DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideOutputReference[_h] = { fqn: "@cdktf/provider-databricks.dataDatabricksInstancePool.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideOutputReference", version: "13.36.0" };
class DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideList = DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideList;
_j = JSII_RTTI_SYMBOL_1;
DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideList[_j] = { fqn: "@cdktf/provider-databricks.dataDatabricksInstancePool.DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideList", version: "13.36.0" };
function dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
fleet_on_demand_option: dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionToTerraform(struct.fleetOnDemandOption),
fleet_spot_option: dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionToTerraform(struct.fleetSpotOption),
launch_template_override: cdktf.listMapper(dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideToTerraform, true)(struct.launchTemplateOverride),
};
}
function dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
fleet_on_demand_option: {
value: dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionToHclTerraform(struct.fleetOnDemandOption),
isBlock: true,
type: "list",
storageClassType: "DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionList",
},
fleet_spot_option: {
value: dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionToHclTerraform(struct.fleetSpotOption),
isBlock: true,
type: "list",
storageClassType: "DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionList",
},
launch_template_override: {
value: cdktf.listMapperHcl(dataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideToHclTerraform, true)(struct.launchTemplateOverride),
isBlock: true,
type: "set",
storageClassType: "DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// fleet_on_demand_option - computed: false, optional: true, required: false
this._fleetOnDemandOption = new DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetOnDemandOptionOutputReference(this, "fleet_on_demand_option");
// fleet_spot_option - computed: false, optional: true, required: false
this._fleetSpotOption = new DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesFleetSpotOptionOutputReference(this, "fleet_spot_option");
// launch_template_override - computed: false, optional: false, required: true
this._launchTemplateOverride = new DataDatabricksInstancePoolPoolInfoInstancePoolFleetAttributesLaunchTemplateOverrideList(this, "launch_template_override", true);
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._fleetOnDemandOption?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.fleetOnDemandOption = this._fleetOnDemandOption?.internalValue;
}
if (this._fleetSpotOption?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.fleetSpotOption = this._fleetSpotOption?.internalValue;
}
if (this._launchTemplateOverride?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.launchTemplateOverride = this._launchTemplateOverride?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._fleetOnDemandOption.internalValue = undefined;
this._fleetSpotOption.internalValue = undefined;
this._launchTemplateOverride.internalValue = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._fleetOnDemandOption.internalValue = value.fleetOnDemandOption;
this._fleetSpotOption.internalValue = value.fleetSpotOption;
this._launchTemplateOverride.internalValue = value.launchTemplateOverride;
}
}
get fleetOnDemandOption() {
return this._fleetOnDemandOption;
}
putFleetOnDemandOption(value) {
this._fleetOnDemandOption.internalValue = value;
}
resetFleetOnDemandOption() {
this._fleetOnDemandOption.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get fleetOnDemandOptionInput() {
return this._fleetOnDemandOption.internalValue;
}
get fleetSpotOption() {
return this._fleetSpotOption;
}
putFleetSpotOption(value) {
this._fleetSpotOption.internalValue = value;
}
resetFleetSpotOption() {
this._fleetSpotOption.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get fleetSpotOptionInput() {
return this._fleetSpotOption.internalValue;
}
get launchTemplateOverride() {
return this._launchTemplateOverride;
}
putLaunchTemplateOverride(value) {
this._launchTemplateOverride.internalValue = value;
}