@cdktf/provider-databricks
Version:
Prebuilt databricks Provider for Terraform CDK (cdktf)
1,052 lines • 149 kB
JavaScript
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Job = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
// generated from terraform resource schema
const index_structs_1 = require("./index-structs");
__exportStar(require("./index-structs"), exports);
const cdktf = require("cdktf");
/**
* Represents a {@link https://registry.terraform.io/providers/databricks/databricks/1.90.0/docs/resources/job databricks_job}
*/
class Job extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a Job resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the Job to import
* @param importFromId The id of the existing Job that should be imported. Refer to the {@link https://registry.terraform.io/providers/databricks/databricks/1.90.0/docs/resources/job#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the Job to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "databricks_job", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/databricks/databricks/1.90.0/docs/resources/job databricks_job} Resource
*
* @param scope The scope in which to define this construct
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
* @param options JobConfig = {}
*/
constructor(scope, id, config = {}) {
super(scope, id, {
terraformResourceType: 'databricks_job',
terraformGeneratorMetadata: {
providerName: 'databricks',
providerVersion: '1.90.0',
providerVersionConstraint: '~> 1.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// continuous - computed: false, optional: true, required: false
this._continuous = new index_structs_1.JobContinuousOutputReference(this, "continuous");
// dbt_task - computed: false, optional: true, required: false
this._dbtTask = new index_structs_1.JobDbtTaskOutputReference(this, "dbt_task");
// deployment - computed: false, optional: true, required: false
this._deployment = new index_structs_1.JobDeploymentOutputReference(this, "deployment");
// email_notifications - computed: false, optional: true, required: false
this._emailNotifications = new index_structs_1.JobEmailNotificationsOutputReference(this, "email_notifications");
// environment - computed: false, optional: true, required: false
this._environment = new index_structs_1.JobEnvironmentList(this, "environment", false);
// git_source - computed: false, optional: true, required: false
this._gitSource = new index_structs_1.JobGitSourceOutputReference(this, "git_source");
// health - computed: false, optional: true, required: false
this._health = new index_structs_1.JobHealthOutputReference(this, "health");
// job_cluster - computed: false, optional: true, required: false
this._jobCluster = new index_structs_1.JobJobClusterList(this, "job_cluster", false);
// library - computed: false, optional: true, required: false
this._library = new index_structs_1.JobLibraryList(this, "library", false);
// new_cluster - computed: false, optional: true, required: false
this._newCluster = new index_structs_1.JobNewClusterOutputReference(this, "new_cluster");
// notebook_task - computed: false, optional: true, required: false
this._notebookTask = new index_structs_1.JobNotebookTaskOutputReference(this, "notebook_task");
// notification_settings - computed: false, optional: true, required: false
this._notificationSettings = new index_structs_1.JobNotificationSettingsOutputReference(this, "notification_settings");
// parameter - computed: false, optional: true, required: false
this._parameter = new index_structs_1.JobParameterList(this, "parameter", false);
// pipeline_task - computed: false, optional: true, required: false
this._pipelineTask = new index_structs_1.JobPipelineTaskOutputReference(this, "pipeline_task");
// python_wheel_task - computed: false, optional: true, required: false
this._pythonWheelTask = new index_structs_1.JobPythonWheelTaskOutputReference(this, "python_wheel_task");
// queue - computed: false, optional: true, required: false
this._queue = new index_structs_1.JobQueueOutputReference(this, "queue");
// run_as - computed: false, optional: true, required: false
this._runAs = new index_structs_1.JobRunAsOutputReference(this, "run_as");
// run_job_task - computed: false, optional: true, required: false
this._runJobTask = new index_structs_1.JobRunJobTaskOutputReference(this, "run_job_task");
// schedule - computed: false, optional: true, required: false
this._schedule = new index_structs_1.JobScheduleOutputReference(this, "schedule");
// spark_jar_task - computed: false, optional: true, required: false
this._sparkJarTask = new index_structs_1.JobSparkJarTaskOutputReference(this, "spark_jar_task");
// spark_python_task - computed: false, optional: true, required: false
this._sparkPythonTask = new index_structs_1.JobSparkPythonTaskOutputReference(this, "spark_python_task");
// spark_submit_task - computed: false, optional: true, required: false
this._sparkSubmitTask = new index_structs_1.JobSparkSubmitTaskOutputReference(this, "spark_submit_task");
// task - computed: false, optional: true, required: false
this._task = new index_structs_1.JobTaskList(this, "task", false);
// timeouts - computed: false, optional: true, required: false
this._timeouts = new index_structs_1.JobTimeoutsOutputReference(this, "timeouts");
// trigger - computed: false, optional: true, required: false
this._trigger = new index_structs_1.JobTriggerOutputReference(this, "trigger");
// webhook_notifications - computed: false, optional: true, required: false
this._webhookNotifications = new index_structs_1.JobWebhookNotificationsOutputReference(this, "webhook_notifications");
this._alwaysRunning = config.alwaysRunning;
this._budgetPolicyId = config.budgetPolicyId;
this._controlRunState = config.controlRunState;
this._description = config.description;
this._editMode = config.editMode;
this._existingClusterId = config.existingClusterId;
this._format = config.format;
this._id = config.id;
this._maxConcurrentRuns = config.maxConcurrentRuns;
this._maxRetries = config.maxRetries;
this._minRetryIntervalMillis = config.minRetryIntervalMillis;
this._name = config.name;
this._performanceTarget = config.performanceTarget;
this._retryOnTimeout = config.retryOnTimeout;
this._tags = config.tags;
this._timeoutSeconds = config.timeoutSeconds;
this._usagePolicyId = config.usagePolicyId;
this._continuous.internalValue = config.continuous;
this._dbtTask.internalValue = config.dbtTask;
this._deployment.internalValue = config.deployment;
this._emailNotifications.internalValue = config.emailNotifications;
this._environment.internalValue = config.environment;
this._gitSource.internalValue = config.gitSource;
this._health.internalValue = config.health;
this._jobCluster.internalValue = config.jobCluster;
this._library.internalValue = config.library;
this._newCluster.internalValue = config.newCluster;
this._notebookTask.internalValue = config.notebookTask;
this._notificationSettings.internalValue = config.notificationSettings;
this._parameter.internalValue = config.parameter;
this._pipelineTask.internalValue = config.pipelineTask;
this._pythonWheelTask.internalValue = config.pythonWheelTask;
this._queue.internalValue = config.queue;
this._runAs.internalValue = config.runAs;
this._runJobTask.internalValue = config.runJobTask;
this._schedule.internalValue = config.schedule;
this._sparkJarTask.internalValue = config.sparkJarTask;
this._sparkPythonTask.internalValue = config.sparkPythonTask;
this._sparkSubmitTask.internalValue = config.sparkSubmitTask;
this._task.internalValue = config.task;
this._timeouts.internalValue = config.timeouts;
this._trigger.internalValue = config.trigger;
this._webhookNotifications.internalValue = config.webhookNotifications;
}
get alwaysRunning() {
return this.getBooleanAttribute('always_running');
}
set alwaysRunning(value) {
this._alwaysRunning = value;
}
resetAlwaysRunning() {
this._alwaysRunning = undefined;
}
// Temporarily expose input value. Use with caution.
get alwaysRunningInput() {
return this._alwaysRunning;
}
get budgetPolicyId() {
return this.getStringAttribute('budget_policy_id');
}
set budgetPolicyId(value) {
this._budgetPolicyId = value;
}
resetBudgetPolicyId() {
this._budgetPolicyId = undefined;
}
// Temporarily expose input value. Use with caution.
get budgetPolicyIdInput() {
return this._budgetPolicyId;
}
get controlRunState() {
return this.getBooleanAttribute('control_run_state');
}
set controlRunState(value) {
this._controlRunState = value;
}
resetControlRunState() {
this._controlRunState = undefined;
}
// Temporarily expose input value. Use with caution.
get controlRunStateInput() {
return this._controlRunState;
}
get description() {
return this.getStringAttribute('description');
}
set description(value) {
this._description = value;
}
resetDescription() {
this._description = undefined;
}
// Temporarily expose input value. Use with caution.
get descriptionInput() {
return this._description;
}
get editMode() {
return this.getStringAttribute('edit_mode');
}
set editMode(value) {
this._editMode = value;
}
resetEditMode() {
this._editMode = undefined;
}
// Temporarily expose input value. Use with caution.
get editModeInput() {
return this._editMode;
}
get existingClusterId() {
return this.getStringAttribute('existing_cluster_id');
}
set existingClusterId(value) {
this._existingClusterId = value;
}
resetExistingClusterId() {
this._existingClusterId = undefined;
}
// Temporarily expose input value. Use with caution.
get existingClusterIdInput() {
return this._existingClusterId;
}
get format() {
return this.getStringAttribute('format');
}
set format(value) {
this._format = value;
}
resetFormat() {
this._format = undefined;
}
// Temporarily expose input value. Use with caution.
get formatInput() {
return this._format;
}
get id() {
return this.getStringAttribute('id');
}
set id(value) {
this._id = value;
}
resetId() {
this._id = undefined;
}
// Temporarily expose input value. Use with caution.
get idInput() {
return this._id;
}
get maxConcurrentRuns() {
return this.getNumberAttribute('max_concurrent_runs');
}
set maxConcurrentRuns(value) {
this._maxConcurrentRuns = value;
}
resetMaxConcurrentRuns() {
this._maxConcurrentRuns = undefined;
}
// Temporarily expose input value. Use with caution.
get maxConcurrentRunsInput() {
return this._maxConcurrentRuns;
}
get maxRetries() {
return this.getNumberAttribute('max_retries');
}
set maxRetries(value) {
this._maxRetries = value;
}
resetMaxRetries() {
this._maxRetries = undefined;
}
// Temporarily expose input value. Use with caution.
get maxRetriesInput() {
return this._maxRetries;
}
get minRetryIntervalMillis() {
return this.getNumberAttribute('min_retry_interval_millis');
}
set minRetryIntervalMillis(value) {
this._minRetryIntervalMillis = value;
}
resetMinRetryIntervalMillis() {
this._minRetryIntervalMillis = undefined;
}
// Temporarily expose input value. Use with caution.
get minRetryIntervalMillisInput() {
return this._minRetryIntervalMillis;
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
resetName() {
this._name = undefined;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
get performanceTarget() {
return this.getStringAttribute('performance_target');
}
set performanceTarget(value) {
this._performanceTarget = value;
}
resetPerformanceTarget() {
this._performanceTarget = undefined;
}
// Temporarily expose input value. Use with caution.
get performanceTargetInput() {
return this._performanceTarget;
}
get retryOnTimeout() {
return this.getBooleanAttribute('retry_on_timeout');
}
set retryOnTimeout(value) {
this._retryOnTimeout = value;
}
resetRetryOnTimeout() {
this._retryOnTimeout = undefined;
}
// Temporarily expose input value. Use with caution.
get retryOnTimeoutInput() {
return this._retryOnTimeout;
}
get tags() {
return this.getStringMapAttribute('tags');
}
set tags(value) {
this._tags = value;
}
resetTags() {
this._tags = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsInput() {
return this._tags;
}
get timeoutSeconds() {
return this.getNumberAttribute('timeout_seconds');
}
set timeoutSeconds(value) {
this._timeoutSeconds = value;
}
resetTimeoutSeconds() {
this._timeoutSeconds = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutSecondsInput() {
return this._timeoutSeconds;
}
// url - computed: true, optional: false, required: false
get url() {
return this.getStringAttribute('url');
}
get usagePolicyId() {
return this.getStringAttribute('usage_policy_id');
}
set usagePolicyId(value) {
this._usagePolicyId = value;
}
resetUsagePolicyId() {
this._usagePolicyId = undefined;
}
// Temporarily expose input value. Use with caution.
get usagePolicyIdInput() {
return this._usagePolicyId;
}
get continuous() {
return this._continuous;
}
putContinuous(value) {
this._continuous.internalValue = value;
}
resetContinuous() {
this._continuous.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get continuousInput() {
return this._continuous.internalValue;
}
get dbtTask() {
return this._dbtTask;
}
putDbtTask(value) {
this._dbtTask.internalValue = value;
}
resetDbtTask() {
this._dbtTask.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get dbtTaskInput() {
return this._dbtTask.internalValue;
}
get deployment() {
return this._deployment;
}
putDeployment(value) {
this._deployment.internalValue = value;
}
resetDeployment() {
this._deployment.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get deploymentInput() {
return this._deployment.internalValue;
}
get emailNotifications() {
return this._emailNotifications;
}
putEmailNotifications(value) {
this._emailNotifications.internalValue = value;
}
resetEmailNotifications() {
this._emailNotifications.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get emailNotificationsInput() {
return this._emailNotifications.internalValue;
}
get environment() {
return this._environment;
}
putEnvironment(value) {
this._environment.internalValue = value;
}
resetEnvironment() {
this._environment.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get environmentInput() {
return this._environment.internalValue;
}
get gitSource() {
return this._gitSource;
}
putGitSource(value) {
this._gitSource.internalValue = value;
}
resetGitSource() {
this._gitSource.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get gitSourceInput() {
return this._gitSource.internalValue;
}
get health() {
return this._health;
}
putHealth(value) {
this._health.internalValue = value;
}
resetHealth() {
this._health.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get healthInput() {
return this._health.internalValue;
}
get jobCluster() {
return this._jobCluster;
}
putJobCluster(value) {
this._jobCluster.internalValue = value;
}
resetJobCluster() {
this._jobCluster.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get jobClusterInput() {
return this._jobCluster.internalValue;
}
get library() {
return this._library;
}
putLibrary(value) {
this._library.internalValue = value;
}
resetLibrary() {
this._library.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get libraryInput() {
return this._library.internalValue;
}
get newCluster() {
return this._newCluster;
}
putNewCluster(value) {
this._newCluster.internalValue = value;
}
resetNewCluster() {
this._newCluster.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get newClusterInput() {
return this._newCluster.internalValue;
}
get notebookTask() {
return this._notebookTask;
}
putNotebookTask(value) {
this._notebookTask.internalValue = value;
}
resetNotebookTask() {
this._notebookTask.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get notebookTaskInput() {
return this._notebookTask.internalValue;
}
get notificationSettings() {
return this._notificationSettings;
}
putNotificationSettings(value) {
this._notificationSettings.internalValue = value;
}
resetNotificationSettings() {
this._notificationSettings.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get notificationSettingsInput() {
return this._notificationSettings.internalValue;
}
get parameter() {
return this._parameter;
}
putParameter(value) {
this._parameter.internalValue = value;
}
resetParameter() {
this._parameter.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get parameterInput() {
return this._parameter.internalValue;
}
get pipelineTask() {
return this._pipelineTask;
}
putPipelineTask(value) {
this._pipelineTask.internalValue = value;
}
resetPipelineTask() {
this._pipelineTask.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get pipelineTaskInput() {
return this._pipelineTask.internalValue;
}
get pythonWheelTask() {
return this._pythonWheelTask;
}
putPythonWheelTask(value) {
this._pythonWheelTask.internalValue = value;
}
resetPythonWheelTask() {
this._pythonWheelTask.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get pythonWheelTaskInput() {
return this._pythonWheelTask.internalValue;
}
get queue() {
return this._queue;
}
putQueue(value) {
this._queue.internalValue = value;
}
resetQueue() {
this._queue.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get queueInput() {
return this._queue.internalValue;
}
get runAs() {
return this._runAs;
}
putRunAs(value) {
this._runAs.internalValue = value;
}
resetRunAs() {
this._runAs.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get runAsInput() {
return this._runAs.internalValue;
}
get runJobTask() {
return this._runJobTask;
}
putRunJobTask(value) {
this._runJobTask.internalValue = value;
}
resetRunJobTask() {
this._runJobTask.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get runJobTaskInput() {
return this._runJobTask.internalValue;
}
get schedule() {
return this._schedule;
}
putSchedule(value) {
this._schedule.internalValue = value;
}
resetSchedule() {
this._schedule.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get scheduleInput() {
return this._schedule.internalValue;
}
get sparkJarTask() {
return this._sparkJarTask;
}
putSparkJarTask(value) {
this._sparkJarTask.internalValue = value;
}
resetSparkJarTask() {
this._sparkJarTask.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get sparkJarTaskInput() {
return this._sparkJarTask.internalValue;
}
get sparkPythonTask() {
return this._sparkPythonTask;
}
putSparkPythonTask(value) {
this._sparkPythonTask.internalValue = value;
}
resetSparkPythonTask() {
this._sparkPythonTask.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get sparkPythonTaskInput() {
return this._sparkPythonTask.internalValue;
}
get sparkSubmitTask() {
return this._sparkSubmitTask;
}
putSparkSubmitTask(value) {
this._sparkSubmitTask.internalValue = value;
}
resetSparkSubmitTask() {
this._sparkSubmitTask.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get sparkSubmitTaskInput() {
return this._sparkSubmitTask.internalValue;
}
get task() {
return this._task;
}
putTask(value) {
this._task.internalValue = value;
}
resetTask() {
this._task.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get taskInput() {
return this._task.internalValue;
}
get timeouts() {
return this._timeouts;
}
putTimeouts(value) {
this._timeouts.internalValue = value;
}
resetTimeouts() {
this._timeouts.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutsInput() {
return this._timeouts.internalValue;
}
get trigger() {
return this._trigger;
}
putTrigger(value) {
this._trigger.internalValue = value;
}
resetTrigger() {
this._trigger.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get triggerInput() {
return this._trigger.internalValue;
}
get webhookNotifications() {
return this._webhookNotifications;
}
putWebhookNotifications(value) {
this._webhookNotifications.internalValue = value;
}
resetWebhookNotifications() {
this._webhookNotifications.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get webhookNotificationsInput() {
return this._webhookNotifications.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
always_running: cdktf.booleanToTerraform(this._alwaysRunning),
budget_policy_id: cdktf.stringToTerraform(this._budgetPolicyId),
control_run_state: cdktf.booleanToTerraform(this._controlRunState),
description: cdktf.stringToTerraform(this._description),
edit_mode: cdktf.stringToTerraform(this._editMode),
existing_cluster_id: cdktf.stringToTerraform(this._existingClusterId),
format: cdktf.stringToTerraform(this._format),
id: cdktf.stringToTerraform(this._id),
max_concurrent_runs: cdktf.numberToTerraform(this._maxConcurrentRuns),
max_retries: cdktf.numberToTerraform(this._maxRetries),
min_retry_interval_millis: cdktf.numberToTerraform(this._minRetryIntervalMillis),
name: cdktf.stringToTerraform(this._name),
performance_target: cdktf.stringToTerraform(this._performanceTarget),
retry_on_timeout: cdktf.booleanToTerraform(this._retryOnTimeout),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags),
timeout_seconds: cdktf.numberToTerraform(this._timeoutSeconds),
usage_policy_id: cdktf.stringToTerraform(this._usagePolicyId),
continuous: (0, index_structs_1.jobContinuousToTerraform)(this._continuous.internalValue),
dbt_task: (0, index_structs_1.jobDbtTaskToTerraform)(this._dbtTask.internalValue),
deployment: (0, index_structs_1.jobDeploymentToTerraform)(this._deployment.internalValue),
email_notifications: (0, index_structs_1.jobEmailNotificationsToTerraform)(this._emailNotifications.internalValue),
environment: cdktf.listMapper(index_structs_1.jobEnvironmentToTerraform, true)(this._environment.internalValue),
git_source: (0, index_structs_1.jobGitSourceToTerraform)(this._gitSource.internalValue),
health: (0, index_structs_1.jobHealthToTerraform)(this._health.internalValue),
job_cluster: cdktf.listMapper(index_structs_1.jobJobClusterToTerraform, true)(this._jobCluster.internalValue),
library: cdktf.listMapper(index_structs_1.jobLibraryToTerraform, true)(this._library.internalValue),
new_cluster: (0, index_structs_1.jobNewClusterToTerraform)(this._newCluster.internalValue),
notebook_task: (0, index_structs_1.jobNotebookTaskToTerraform)(this._notebookTask.internalValue),
notification_settings: (0, index_structs_1.jobNotificationSettingsToTerraform)(this._notificationSettings.internalValue),
parameter: cdktf.listMapper(index_structs_1.jobParameterToTerraform, true)(this._parameter.internalValue),
pipeline_task: (0, index_structs_1.jobPipelineTaskToTerraform)(this._pipelineTask.internalValue),
python_wheel_task: (0, index_structs_1.jobPythonWheelTaskToTerraform)(this._pythonWheelTask.internalValue),
queue: (0, index_structs_1.jobQueueToTerraform)(this._queue.internalValue),
run_as: (0, index_structs_1.jobRunAsToTerraform)(this._runAs.internalValue),
run_job_task: (0, index_structs_1.jobRunJobTaskToTerraform)(this._runJobTask.internalValue),
schedule: (0, index_structs_1.jobScheduleToTerraform)(this._schedule.internalValue),
spark_jar_task: (0, index_structs_1.jobSparkJarTaskToTerraform)(this._sparkJarTask.internalValue),
spark_python_task: (0, index_structs_1.jobSparkPythonTaskToTerraform)(this._sparkPythonTask.internalValue),
spark_submit_task: (0, index_structs_1.jobSparkSubmitTaskToTerraform)(this._sparkSubmitTask.internalValue),
task: cdktf.listMapper(index_structs_1.jobTaskToTerraform, true)(this._task.internalValue),
timeouts: (0, index_structs_1.jobTimeoutsToTerraform)(this._timeouts.internalValue),
trigger: (0, index_structs_1.jobTriggerToTerraform)(this._trigger.internalValue),
webhook_notifications: (0, index_structs_1.jobWebhookNotificationsToTerraform)(this._webhookNotifications.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
always_running: {
value: cdktf.booleanToHclTerraform(this._alwaysRunning),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
budget_policy_id: {
value: cdktf.stringToHclTerraform(this._budgetPolicyId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
control_run_state: {
value: cdktf.booleanToHclTerraform(this._controlRunState),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
description: {
value: cdktf.stringToHclTerraform(this._description),
isBlock: false,
type: "simple",
storageClassType: "string",
},
edit_mode: {
value: cdktf.stringToHclTerraform(this._editMode),
isBlock: false,
type: "simple",
storageClassType: "string",
},
existing_cluster_id: {
value: cdktf.stringToHclTerraform(this._existingClusterId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
format: {
value: cdktf.stringToHclTerraform(this._format),
isBlock: false,
type: "simple",
storageClassType: "string",
},
id: {
value: cdktf.stringToHclTerraform(this._id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
max_concurrent_runs: {
value: cdktf.numberToHclTerraform(this._maxConcurrentRuns),
isBlock: false,
type: "simple",
storageClassType: "number",
},
max_retries: {
value: cdktf.numberToHclTerraform(this._maxRetries),
isBlock: false,
type: "simple",
storageClassType: "number",
},
min_retry_interval_millis: {
value: cdktf.numberToHclTerraform(this._minRetryIntervalMillis),
isBlock: false,
type: "simple",
storageClassType: "number",
},
name: {
value: cdktf.stringToHclTerraform(this._name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
performance_target: {
value: cdktf.stringToHclTerraform(this._performanceTarget),
isBlock: false,
type: "simple",
storageClassType: "string",
},
retry_on_timeout: {
value: cdktf.booleanToHclTerraform(this._retryOnTimeout),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
timeout_seconds: {
value: cdktf.numberToHclTerraform(this._timeoutSeconds),
isBlock: false,
type: "simple",
storageClassType: "number",
},
usage_policy_id: {
value: cdktf.stringToHclTerraform(this._usagePolicyId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
continuous: {
value: (0, index_structs_1.jobContinuousToHclTerraform)(this._continuous.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobContinuousList",
},
dbt_task: {
value: (0, index_structs_1.jobDbtTaskToHclTerraform)(this._dbtTask.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobDbtTaskList",
},
deployment: {
value: (0, index_structs_1.jobDeploymentToHclTerraform)(this._deployment.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobDeploymentList",
},
email_notifications: {
value: (0, index_structs_1.jobEmailNotificationsToHclTerraform)(this._emailNotifications.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobEmailNotificationsList",
},
environment: {
value: cdktf.listMapperHcl(index_structs_1.jobEnvironmentToHclTerraform, true)(this._environment.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobEnvironmentList",
},
git_source: {
value: (0, index_structs_1.jobGitSourceToHclTerraform)(this._gitSource.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobGitSourceList",
},
health: {
value: (0, index_structs_1.jobHealthToHclTerraform)(this._health.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobHealthList",
},
job_cluster: {
value: cdktf.listMapperHcl(index_structs_1.jobJobClusterToHclTerraform, true)(this._jobCluster.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobJobClusterList",
},
library: {
value: cdktf.listMapperHcl(index_structs_1.jobLibraryToHclTerraform, true)(this._library.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobLibraryList",
},
new_cluster: {
value: (0, index_structs_1.jobNewClusterToHclTerraform)(this._newCluster.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobNewClusterList",
},
notebook_task: {
value: (0, index_structs_1.jobNotebookTaskToHclTerraform)(this._notebookTask.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobNotebookTaskList",
},
notification_settings: {
value: (0, index_structs_1.jobNotificationSettingsToHclTerraform)(this._notificationSettings.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobNotificationSettingsList",
},
parameter: {
value: cdktf.listMapperHcl(index_structs_1.jobParameterToHclTerraform, true)(this._parameter.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobParameterList",
},
pipeline_task: {
value: (0, index_structs_1.jobPipelineTaskToHclTerraform)(this._pipelineTask.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobPipelineTaskList",
},
python_wheel_task: {
value: (0, index_structs_1.jobPythonWheelTaskToHclTerraform)(this._pythonWheelTask.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobPythonWheelTaskList",
},
queue: {
value: (0, index_structs_1.jobQueueToHclTerraform)(this._queue.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobQueueList",
},
run_as: {
value: (0, index_structs_1.jobRunAsToHclTerraform)(this._runAs.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobRunAsList",
},
run_job_task: {
value: (0, index_structs_1.jobRunJobTaskToHclTerraform)(this._runJobTask.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobRunJobTaskList",
},
schedule: {
value: (0, index_structs_1.jobScheduleToHclTerraform)(this._schedule.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobScheduleList",
},
spark_jar_task: {
value: (0, index_structs_1.jobSparkJarTaskToHclTerraform)(this._sparkJarTask.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobSparkJarTaskList",
},
spark_python_task: {
value: (0, index_structs_1.jobSparkPythonTaskToHclTerraform)(this._sparkPythonTask.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobSparkPythonTaskList",
},
spark_submit_task: {
value: (0, index_structs_1.jobSparkSubmitTaskToHclTerraform)(this._sparkSubmitTask.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobSparkSubmitTaskList",
},
task: {
value: cdktf.listMapperHcl(index_structs_1.jobTaskToHclTerraform, true)(this._task.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobTaskList",
},
timeouts: {
value: (0, index_structs_1.jobTimeoutsToHclTerraform)(this._timeouts.internalValue),
isBlock: true,
type: "struct",
storageClassType: "JobTimeouts",
},
trigger: {
value: (0, index_structs_1.jobTriggerToHclTerraform)(this._trigger.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobTriggerList",
},
webhook_notifications: {
value: (0, index_structs_1.jobWebhookNotificationsToHclTerraform)(this._webhookNotifications.internalValue),
isBlock: true,
type: "list",
storageClassType: "JobWebhookNotificationsList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
}
exports.Job = Job;
_a = JSII_RTTI_SYMBOL_1;
Job[_a] = { fqn: "@cdktf/provider-databricks.job.Job", version: "15.7.0" };
// =================
// STATIC PROPERTIES
// =================
Job.tfResourceType = "databricks_job";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvam9iL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7O0dBR0c7QUFFSCwyQ0FBMkM7QUFFM0MsbURBdUc4RDtBQUM5RCxrREFBK0I7QUFFL0IsK0JBQStCO0FBdU8vQjs7RUFFRTtBQUNGLE1BQWEsR0FBSSxTQUFRLEtBQUssQ0FBQyxpQkFBaUI7SUFPOUMsaUJBQWlCO0lBQ2pCLGlCQUFpQjtJQUNqQixpQkFBaUI7SUFDakI7Ozs7OztNQU1FO0lBQ0ssTUFBTSxDQUFDLHVCQUF1QixDQUFDLEtBQWdCLEVBQUUsVUFBa0IsRUFBRSxZQUFvQixFQUFFLFFBQWtDO1FBQzlILE9BQU8sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBRUwsY0FBYztJQUNkLGNBQWM7SUFDZCxjQUFjO0lBRWQ7Ozs7OztNQU1FO0lBQ0YsWUFBbUIsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsU0FBb0IsRUFBRTtRQUNyRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLHFCQUFxQixFQUFFLGdCQUFnQjtZQUN2QywwQkFBMEIsRUFBRTtnQkFDMUIsWUFBWSxFQUFFLFlBQVk7Z0JBQzFCLGVBQWUsRUFBRSxRQUFRO2dCQUN6Qix5QkFBeUIsRUFBRSxRQUFRO2FBQ3BDO1lBQ0QsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRO1lBQ3pCLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztZQUMzQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7WUFDbkIsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTO1lBQzNCLFlBQVksRUFBRSxNQUFNLENBQUMsWUFBWTtZQUNqQyxV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