1. Packages
  2. Dbtcloud Provider
  3. API Docs
  4. Job
dbt Cloud v0.1.25 published on Friday, Nov 8, 2024 by Pulumi

dbtcloud.Job

Explore with Pulumi AI

dbtcloud logo
dbt Cloud v0.1.25 published on Friday, Nov 8, 2024 by Pulumi

    In October 2023, CI improvements have been rolled out to dbt Cloud with minor impacts to some jobs: more info.

    Those improvements include modifications to deferral which was historically set at the job level and will now be set at the environment level. Deferral can still be set to “self” by setting self_deferring to true but with the new approach, deferral to other runs need to be done with deferring_environment_id instead of deferring_job_id.

    New with 0.3.1, triggers now accepts a on_merge value to trigger jobs when code is merged in git. If on_merge is true all other triggers need to be false.

    For now, it is not a mandatory field, but it will be in a future version. Please add on_merge in your config or modules.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as dbtcloud from "@pulumi/dbtcloud";
    
    // a job that has github_webhook and git_provider_webhook 
    // set to false will be categorized as a "Deploy Job"
    const dailyJob = new dbtcloud.Job("daily_job", {
        environmentId: prodEnvironment.environmentId,
        executeSteps: ["dbt build"],
        generateDocs: true,
        isActive: true,
        name: "Daily job",
        numThreads: 64,
        projectId: dbtProject.id,
        runGenerateSources: true,
        targetName: "default",
        triggers: {
            github_webhook: false,
            git_provider_webhook: false,
            schedule: true,
            on_merge: false,
        },
        scheduleDays: [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
        ],
        scheduleType: "days_of_week",
        scheduleHours: [0],
    });
    // a job that has github_webhook and git_provider_webhook set 
    // to true will be categorized as a "Continuous Integration Job"
    const ciJob = new dbtcloud.Job("ci_job", {
        environmentId: ciEnvironment.environmentId,
        executeSteps: ["dbt build -s state:modified+ --fail-fast"],
        generateDocs: false,
        deferringEnvironmentId: prodEnvironment.environmentId,
        name: "CI Job",
        numThreads: 32,
        projectId: dbtProject.id,
        runGenerateSources: false,
        triggers: {
            github_webhook: true,
            git_provider_webhook: true,
            schedule: false,
            on_merge: false,
        },
        scheduleDays: [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
        ],
        scheduleType: "days_of_week",
    });
    // a job that is set to be triggered after another job finishes
    // this is sometimes referred as 'job chaining'
    const downstreamJob = new dbtcloud.Job("downstream_job", {
        environmentId: project2ProdEnvironment.environmentId,
        executeSteps: ["dbt build -s +my_model"],
        generateDocs: true,
        name: "Downstream job in project 2",
        numThreads: 32,
        projectId: dbtProject2.id,
        runGenerateSources: true,
        triggers: {
            github_webhook: false,
            git_provider_webhook: false,
            schedule: false,
            on_merge: false,
        },
        scheduleDays: [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
        ],
        scheduleType: "days_of_week",
        jobCompletionTriggerCondition: {
            jobId: dailyJob.id,
            projectId: dbtProject.id,
            statuses: ["success"],
        },
    });
    
    import pulumi
    import pulumi_dbtcloud as dbtcloud
    
    # a job that has github_webhook and git_provider_webhook 
    # set to false will be categorized as a "Deploy Job"
    daily_job = dbtcloud.Job("daily_job",
        environment_id=prod_environment["environmentId"],
        execute_steps=["dbt build"],
        generate_docs=True,
        is_active=True,
        name="Daily job",
        num_threads=64,
        project_id=dbt_project["id"],
        run_generate_sources=True,
        target_name="default",
        triggers={
            "github_webhook": False,
            "git_provider_webhook": False,
            "schedule": True,
            "on_merge": False,
        },
        schedule_days=[
            0,
            1,
            2,
            3,
            4,
            5,
            6,
        ],
        schedule_type="days_of_week",
        schedule_hours=[0])
    # a job that has github_webhook and git_provider_webhook set 
    # to true will be categorized as a "Continuous Integration Job"
    ci_job = dbtcloud.Job("ci_job",
        environment_id=ci_environment["environmentId"],
        execute_steps=["dbt build -s state:modified+ --fail-fast"],
        generate_docs=False,
        deferring_environment_id=prod_environment["environmentId"],
        name="CI Job",
        num_threads=32,
        project_id=dbt_project["id"],
        run_generate_sources=False,
        triggers={
            "github_webhook": True,
            "git_provider_webhook": True,
            "schedule": False,
            "on_merge": False,
        },
        schedule_days=[
            0,
            1,
            2,
            3,
            4,
            5,
            6,
        ],
        schedule_type="days_of_week")
    # a job that is set to be triggered after another job finishes
    # this is sometimes referred as 'job chaining'
    downstream_job = dbtcloud.Job("downstream_job",
        environment_id=project2_prod_environment["environmentId"],
        execute_steps=["dbt build -s +my_model"],
        generate_docs=True,
        name="Downstream job in project 2",
        num_threads=32,
        project_id=dbt_project2["id"],
        run_generate_sources=True,
        triggers={
            "github_webhook": False,
            "git_provider_webhook": False,
            "schedule": False,
            "on_merge": False,
        },
        schedule_days=[
            0,
            1,
            2,
            3,
            4,
            5,
            6,
        ],
        schedule_type="days_of_week",
        job_completion_trigger_condition={
            "job_id": daily_job.id,
            "project_id": dbt_project["id"],
            "statuses": ["success"],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-dbtcloud/sdk/go/dbtcloud"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// a job that has github_webhook and git_provider_webhook
    		// set to false will be categorized as a "Deploy Job"
    		dailyJob, err := dbtcloud.NewJob(ctx, "daily_job", &dbtcloud.JobArgs{
    			EnvironmentId: pulumi.Any(prodEnvironment.EnvironmentId),
    			ExecuteSteps: pulumi.StringArray{
    				pulumi.String("dbt build"),
    			},
    			GenerateDocs:       pulumi.Bool(true),
    			IsActive:           pulumi.Bool(true),
    			Name:               pulumi.String("Daily job"),
    			NumThreads:         pulumi.Int(64),
    			ProjectId:          pulumi.Any(dbtProject.Id),
    			RunGenerateSources: pulumi.Bool(true),
    			TargetName:         pulumi.String("default"),
    			Triggers: pulumi.BoolMap{
    				"github_webhook":       pulumi.Bool(false),
    				"git_provider_webhook": pulumi.Bool(false),
    				"schedule":             pulumi.Bool(true),
    				"on_merge":             pulumi.Bool(false),
    			},
    			ScheduleDays: pulumi.IntArray{
    				pulumi.Int(0),
    				pulumi.Int(1),
    				pulumi.Int(2),
    				pulumi.Int(3),
    				pulumi.Int(4),
    				pulumi.Int(5),
    				pulumi.Int(6),
    			},
    			ScheduleType: pulumi.String("days_of_week"),
    			ScheduleHours: pulumi.IntArray{
    				pulumi.Int(0),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// a job that has github_webhook and git_provider_webhook set
    		// to true will be categorized as a "Continuous Integration Job"
    		_, err = dbtcloud.NewJob(ctx, "ci_job", &dbtcloud.JobArgs{
    			EnvironmentId: pulumi.Any(ciEnvironment.EnvironmentId),
    			ExecuteSteps: pulumi.StringArray{
    				pulumi.String("dbt build -s state:modified+ --fail-fast"),
    			},
    			GenerateDocs:           pulumi.Bool(false),
    			DeferringEnvironmentId: pulumi.Any(prodEnvironment.EnvironmentId),
    			Name:                   pulumi.String("CI Job"),
    			NumThreads:             pulumi.Int(32),
    			ProjectId:              pulumi.Any(dbtProject.Id),
    			RunGenerateSources:     pulumi.Bool(false),
    			Triggers: pulumi.BoolMap{
    				"github_webhook":       pulumi.Bool(true),
    				"git_provider_webhook": pulumi.Bool(true),
    				"schedule":             pulumi.Bool(false),
    				"on_merge":             pulumi.Bool(false),
    			},
    			ScheduleDays: pulumi.IntArray{
    				pulumi.Int(0),
    				pulumi.Int(1),
    				pulumi.Int(2),
    				pulumi.Int(3),
    				pulumi.Int(4),
    				pulumi.Int(5),
    				pulumi.Int(6),
    			},
    			ScheduleType: pulumi.String("days_of_week"),
    		})
    		if err != nil {
    			return err
    		}
    		// a job that is set to be triggered after another job finishes
    		// this is sometimes referred as 'job chaining'
    		_, err = dbtcloud.NewJob(ctx, "downstream_job", &dbtcloud.JobArgs{
    			EnvironmentId: pulumi.Any(project2ProdEnvironment.EnvironmentId),
    			ExecuteSteps: pulumi.StringArray{
    				pulumi.String("dbt build -s +my_model"),
    			},
    			GenerateDocs:       pulumi.Bool(true),
    			Name:               pulumi.String("Downstream job in project 2"),
    			NumThreads:         pulumi.Int(32),
    			ProjectId:          pulumi.Any(dbtProject2.Id),
    			RunGenerateSources: pulumi.Bool(true),
    			Triggers: pulumi.BoolMap{
    				"github_webhook":       pulumi.Bool(false),
    				"git_provider_webhook": pulumi.Bool(false),
    				"schedule":             pulumi.Bool(false),
    				"on_merge":             pulumi.Bool(false),
    			},
    			ScheduleDays: pulumi.IntArray{
    				pulumi.Int(0),
    				pulumi.Int(1),
    				pulumi.Int(2),
    				pulumi.Int(3),
    				pulumi.Int(4),
    				pulumi.Int(5),
    				pulumi.Int(6),
    			},
    			ScheduleType: pulumi.String("days_of_week"),
    			JobCompletionTriggerCondition: &dbtcloud.JobJobCompletionTriggerConditionArgs{
    				JobId:     dailyJob.ID(),
    				ProjectId: pulumi.Any(dbtProject.Id),
    				Statuses: pulumi.StringArray{
    					pulumi.String("success"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using DbtCloud = Pulumi.DbtCloud;
    
    return await Deployment.RunAsync(() => 
    {
        // a job that has github_webhook and git_provider_webhook 
        // set to false will be categorized as a "Deploy Job"
        var dailyJob = new DbtCloud.Job("daily_job", new()
        {
            EnvironmentId = prodEnvironment.EnvironmentId,
            ExecuteSteps = new[]
            {
                "dbt build",
            },
            GenerateDocs = true,
            IsActive = true,
            Name = "Daily job",
            NumThreads = 64,
            ProjectId = dbtProject.Id,
            RunGenerateSources = true,
            TargetName = "default",
            Triggers = 
            {
                { "github_webhook", false },
                { "git_provider_webhook", false },
                { "schedule", true },
                { "on_merge", false },
            },
            ScheduleDays = new[]
            {
                0,
                1,
                2,
                3,
                4,
                5,
                6,
            },
            ScheduleType = "days_of_week",
            ScheduleHours = new[]
            {
                0,
            },
        });
    
        // a job that has github_webhook and git_provider_webhook set 
        // to true will be categorized as a "Continuous Integration Job"
        var ciJob = new DbtCloud.Job("ci_job", new()
        {
            EnvironmentId = ciEnvironment.EnvironmentId,
            ExecuteSteps = new[]
            {
                "dbt build -s state:modified+ --fail-fast",
            },
            GenerateDocs = false,
            DeferringEnvironmentId = prodEnvironment.EnvironmentId,
            Name = "CI Job",
            NumThreads = 32,
            ProjectId = dbtProject.Id,
            RunGenerateSources = false,
            Triggers = 
            {
                { "github_webhook", true },
                { "git_provider_webhook", true },
                { "schedule", false },
                { "on_merge", false },
            },
            ScheduleDays = new[]
            {
                0,
                1,
                2,
                3,
                4,
                5,
                6,
            },
            ScheduleType = "days_of_week",
        });
    
        // a job that is set to be triggered after another job finishes
        // this is sometimes referred as 'job chaining'
        var downstreamJob = new DbtCloud.Job("downstream_job", new()
        {
            EnvironmentId = project2ProdEnvironment.EnvironmentId,
            ExecuteSteps = new[]
            {
                "dbt build -s +my_model",
            },
            GenerateDocs = true,
            Name = "Downstream job in project 2",
            NumThreads = 32,
            ProjectId = dbtProject2.Id,
            RunGenerateSources = true,
            Triggers = 
            {
                { "github_webhook", false },
                { "git_provider_webhook", false },
                { "schedule", false },
                { "on_merge", false },
            },
            ScheduleDays = new[]
            {
                0,
                1,
                2,
                3,
                4,
                5,
                6,
            },
            ScheduleType = "days_of_week",
            CompletionTriggerCondition = new DbtCloud.Inputs.JobJobCompletionTriggerConditionArgs
            {
                JobId = dailyJob.Id,
                ProjectId = dbtProject.Id,
                Statuses = new[]
                {
                    "success",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.dbtcloud.Job;
    import com.pulumi.dbtcloud.JobArgs;
    import com.pulumi.dbtcloud.inputs.JobJobCompletionTriggerConditionArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            // a job that has github_webhook and git_provider_webhook 
            // set to false will be categorized as a "Deploy Job"
            var dailyJob = new Job("dailyJob", JobArgs.builder()
                .environmentId(prodEnvironment.environmentId())
                .executeSteps("dbt build")
                .generateDocs(true)
                .isActive(true)
                .name("Daily job")
                .numThreads(64)
                .projectId(dbtProject.id())
                .runGenerateSources(true)
                .targetName("default")
                .triggers(Map.ofEntries(
                    Map.entry("github_webhook", false),
                    Map.entry("git_provider_webhook", false),
                    Map.entry("schedule", true),
                    Map.entry("on_merge", false)
                ))
                .scheduleDays(            
                    0,
                    1,
                    2,
                    3,
                    4,
                    5,
                    6)
                .scheduleType("days_of_week")
                .scheduleHours(0)
                .build());
    
            // a job that has github_webhook and git_provider_webhook set 
            // to true will be categorized as a "Continuous Integration Job"
            var ciJob = new Job("ciJob", JobArgs.builder()
                .environmentId(ciEnvironment.environmentId())
                .executeSteps("dbt build -s state:modified+ --fail-fast")
                .generateDocs(false)
                .deferringEnvironmentId(prodEnvironment.environmentId())
                .name("CI Job")
                .numThreads(32)
                .projectId(dbtProject.id())
                .runGenerateSources(false)
                .triggers(Map.ofEntries(
                    Map.entry("github_webhook", true),
                    Map.entry("git_provider_webhook", true),
                    Map.entry("schedule", false),
                    Map.entry("on_merge", false)
                ))
                .scheduleDays(            
                    0,
                    1,
                    2,
                    3,
                    4,
                    5,
                    6)
                .scheduleType("days_of_week")
                .build());
    
            // a job that is set to be triggered after another job finishes
            // this is sometimes referred as 'job chaining'
            var downstreamJob = new Job("downstreamJob", JobArgs.builder()
                .environmentId(project2ProdEnvironment.environmentId())
                .executeSteps("dbt build -s +my_model")
                .generateDocs(true)
                .name("Downstream job in project 2")
                .numThreads(32)
                .projectId(dbtProject2.id())
                .runGenerateSources(true)
                .triggers(Map.ofEntries(
                    Map.entry("github_webhook", false),
                    Map.entry("git_provider_webhook", false),
                    Map.entry("schedule", false),
                    Map.entry("on_merge", false)
                ))
                .scheduleDays(            
                    0,
                    1,
                    2,
                    3,
                    4,
                    5,
                    6)
                .scheduleType("days_of_week")
                .jobCompletionTriggerCondition(JobJobCompletionTriggerConditionArgs.builder()
                    .jobId(dailyJob.id())
                    .projectId(dbtProject.id())
                    .statuses("success")
                    .build())
                .build());
    
        }
    }
    
    resources:
      # a job that has github_webhook and git_provider_webhook 
      # set to false will be categorized as a "Deploy Job"
      dailyJob:
        type: dbtcloud:Job
        name: daily_job
        properties:
          environmentId: ${prodEnvironment.environmentId}
          executeSteps:
            - dbt build
          generateDocs: true
          isActive: true
          name: Daily job
          numThreads: 64
          projectId: ${dbtProject.id}
          runGenerateSources: true
          targetName: default
          triggers:
            github_webhook: false
            git_provider_webhook: false
            schedule: true
            on_merge: false
          scheduleDays:
            - 0
            - 1
            - 2
            - 3
            - 4
            - 5
            - 6
          scheduleType: days_of_week
          scheduleHours:
            - 0
      # a job that has github_webhook and git_provider_webhook set 
      # to true will be categorized as a "Continuous Integration Job"
      ciJob:
        type: dbtcloud:Job
        name: ci_job
        properties:
          environmentId: ${ciEnvironment.environmentId}
          executeSteps:
            - dbt build -s state:modified+ --fail-fast
          generateDocs: false
          deferringEnvironmentId: ${prodEnvironment.environmentId}
          name: CI Job
          numThreads: 32
          projectId: ${dbtProject.id}
          runGenerateSources: false
          triggers:
            github_webhook: true
            git_provider_webhook: true
            schedule: false
            on_merge: false
          scheduleDays:
            - 0
            - 1
            - 2
            - 3
            - 4
            - 5
            - 6
          scheduleType: days_of_week
      # a job that is set to be triggered after another job finishes
      # this is sometimes referred as 'job chaining'
      downstreamJob:
        type: dbtcloud:Job
        name: downstream_job
        properties:
          environmentId: ${project2ProdEnvironment.environmentId}
          executeSteps:
            - dbt build -s +my_model
          generateDocs: true
          name: Downstream job in project 2
          numThreads: 32
          projectId: ${dbtProject2.id}
          runGenerateSources: true
          triggers:
            github_webhook: false
            git_provider_webhook: false
            schedule: false
            on_merge: false
          scheduleDays:
            - 0
            - 1
            - 2
            - 3
            - 4
            - 5
            - 6
          scheduleType: days_of_week
          jobCompletionTriggerCondition:
            jobId: ${dailyJob.id}
            projectId: ${dbtProject.id}
            statuses:
              - success
    

    Create Job Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Job(name: string, args: JobArgs, opts?: CustomResourceOptions);
    @overload
    def Job(resource_name: str,
            args: JobArgs,
            opts: Optional[ResourceOptions] = None)
    
    @overload
    def Job(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            environment_id: Optional[int] = None,
            triggers: Optional[Mapping[str, bool]] = None,
            project_id: Optional[int] = None,
            execute_steps: Optional[Sequence[str]] = None,
            run_compare_changes: Optional[bool] = None,
            run_generate_sources: Optional[bool] = None,
            generate_docs: Optional[bool] = None,
            is_active: Optional[bool] = None,
            job_completion_trigger_condition: Optional[JobJobCompletionTriggerConditionArgs] = None,
            name: Optional[str] = None,
            num_threads: Optional[int] = None,
            deferring_job_id: Optional[int] = None,
            dbt_version: Optional[str] = None,
            description: Optional[str] = None,
            schedule_cron: Optional[str] = None,
            schedule_days: Optional[Sequence[int]] = None,
            schedule_hours: Optional[Sequence[int]] = None,
            schedule_interval: Optional[int] = None,
            schedule_type: Optional[str] = None,
            self_deferring: Optional[bool] = None,
            target_name: Optional[str] = None,
            timeout_seconds: Optional[int] = None,
            deferring_environment_id: Optional[int] = None,
            triggers_on_draft_pr: Optional[bool] = None)
    func NewJob(ctx *Context, name string, args JobArgs, opts ...ResourceOption) (*Job, error)
    public Job(string name, JobArgs args, CustomResourceOptions? opts = null)
    public Job(String name, JobArgs args)
    public Job(String name, JobArgs args, CustomResourceOptions options)
    
    type: dbtcloud:Job
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args JobArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args JobArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args JobArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args JobArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args JobArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var jobResource = new DbtCloud.Job("jobResource", new()
    {
        EnvironmentId = 0,
        Triggers = 
        {
            { "string", false },
        },
        ProjectId = 0,
        ExecuteSteps = new[]
        {
            "string",
        },
        RunCompareChanges = false,
        RunGenerateSources = false,
        GenerateDocs = false,
        IsActive = false,
        CompletionTriggerCondition = new DbtCloud.Inputs.JobJobCompletionTriggerConditionArgs
        {
            JobId = 0,
            ProjectId = 0,
            Statuses = new[]
            {
                "string",
            },
        },
        Name = "string",
        NumThreads = 0,
        DeferringJobId = 0,
        DbtVersion = "string",
        Description = "string",
        ScheduleCron = "string",
        ScheduleDays = new[]
        {
            0,
        },
        ScheduleHours = new[]
        {
            0,
        },
        ScheduleInterval = 0,
        ScheduleType = "string",
        SelfDeferring = false,
        TargetName = "string",
        TimeoutSeconds = 0,
        DeferringEnvironmentId = 0,
        TriggersOnDraftPr = false,
    });
    
    example, err := dbtcloud.NewJob(ctx, "jobResource", &dbtcloud.JobArgs{
    	EnvironmentId: pulumi.Int(0),
    	Triggers: pulumi.BoolMap{
    		"string": pulumi.Bool(false),
    	},
    	ProjectId: pulumi.Int(0),
    	ExecuteSteps: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	RunCompareChanges:  pulumi.Bool(false),
    	RunGenerateSources: pulumi.Bool(false),
    	GenerateDocs:       pulumi.Bool(false),
    	IsActive:           pulumi.Bool(false),
    	JobCompletionTriggerCondition: &dbtcloud.JobJobCompletionTriggerConditionArgs{
    		JobId:     pulumi.Int(0),
    		ProjectId: pulumi.Int(0),
    		Statuses: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	Name:           pulumi.String("string"),
    	NumThreads:     pulumi.Int(0),
    	DeferringJobId: pulumi.Int(0),
    	DbtVersion:     pulumi.String("string"),
    	Description:    pulumi.String("string"),
    	ScheduleCron:   pulumi.String("string"),
    	ScheduleDays: pulumi.IntArray{
    		pulumi.Int(0),
    	},
    	ScheduleHours: pulumi.IntArray{
    		pulumi.Int(0),
    	},
    	ScheduleInterval:       pulumi.Int(0),
    	ScheduleType:           pulumi.String("string"),
    	SelfDeferring:          pulumi.Bool(false),
    	TargetName:             pulumi.String("string"),
    	TimeoutSeconds:         pulumi.Int(0),
    	DeferringEnvironmentId: pulumi.Int(0),
    	TriggersOnDraftPr:      pulumi.Bool(false),
    })
    
    var jobResource = new Job("jobResource", JobArgs.builder()
        .environmentId(0)
        .triggers(Map.of("string", false))
        .projectId(0)
        .executeSteps("string")
        .runCompareChanges(false)
        .runGenerateSources(false)
        .generateDocs(false)
        .isActive(false)
        .jobCompletionTriggerCondition(JobJobCompletionTriggerConditionArgs.builder()
            .jobId(0)
            .projectId(0)
            .statuses("string")
            .build())
        .name("string")
        .numThreads(0)
        .deferringJobId(0)
        .dbtVersion("string")
        .description("string")
        .scheduleCron("string")
        .scheduleDays(0)
        .scheduleHours(0)
        .scheduleInterval(0)
        .scheduleType("string")
        .selfDeferring(false)
        .targetName("string")
        .timeoutSeconds(0)
        .deferringEnvironmentId(0)
        .triggersOnDraftPr(false)
        .build());
    
    job_resource = dbtcloud.Job("jobResource",
        environment_id=0,
        triggers={
            "string": False,
        },
        project_id=0,
        execute_steps=["string"],
        run_compare_changes=False,
        run_generate_sources=False,
        generate_docs=False,
        is_active=False,
        job_completion_trigger_condition={
            "job_id": 0,
            "project_id": 0,
            "statuses": ["string"],
        },
        name="string",
        num_threads=0,
        deferring_job_id=0,
        dbt_version="string",
        description="string",
        schedule_cron="string",
        schedule_days=[0],
        schedule_hours=[0],
        schedule_interval=0,
        schedule_type="string",
        self_deferring=False,
        target_name="string",
        timeout_seconds=0,
        deferring_environment_id=0,
        triggers_on_draft_pr=False)
    
    const jobResource = new dbtcloud.Job("jobResource", {
        environmentId: 0,
        triggers: {
            string: false,
        },
        projectId: 0,
        executeSteps: ["string"],
        runCompareChanges: false,
        runGenerateSources: false,
        generateDocs: false,
        isActive: false,
        jobCompletionTriggerCondition: {
            jobId: 0,
            projectId: 0,
            statuses: ["string"],
        },
        name: "string",
        numThreads: 0,
        deferringJobId: 0,
        dbtVersion: "string",
        description: "string",
        scheduleCron: "string",
        scheduleDays: [0],
        scheduleHours: [0],
        scheduleInterval: 0,
        scheduleType: "string",
        selfDeferring: false,
        targetName: "string",
        timeoutSeconds: 0,
        deferringEnvironmentId: 0,
        triggersOnDraftPr: false,
    });
    
    type: dbtcloud:Job
    properties:
        dbtVersion: string
        deferringEnvironmentId: 0
        deferringJobId: 0
        description: string
        environmentId: 0
        executeSteps:
            - string
        generateDocs: false
        isActive: false
        jobCompletionTriggerCondition:
            jobId: 0
            projectId: 0
            statuses:
                - string
        name: string
        numThreads: 0
        projectId: 0
        runCompareChanges: false
        runGenerateSources: false
        scheduleCron: string
        scheduleDays:
            - 0
        scheduleHours:
            - 0
        scheduleInterval: 0
        scheduleType: string
        selfDeferring: false
        targetName: string
        timeoutSeconds: 0
        triggers:
            string: false
        triggersOnDraftPr: false
    

    Job Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The Job resource accepts the following input properties:

    EnvironmentId int
    Environment ID to create the job in
    ExecuteSteps List<string>
    List of commands to execute for the job
    ProjectId int
    Project ID to create the job in
    Triggers Dictionary<string, bool>
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    CompletionTriggerCondition Pulumi.DbtCloud.Inputs.JobJobCompletionTriggerCondition
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    DbtVersion string
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    DeferringEnvironmentId int
    Environment identifier that this job defers to (new deferring approach)
    DeferringJobId int
    Job identifier that this job defers to (legacy deferring approach)
    Description string
    Description for the job
    GenerateDocs bool
    Flag for whether the job should generate documentation
    IsActive bool
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    Name string
    Job name
    NumThreads int
    Number of threads to use in the job
    RunCompareChanges bool
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    RunGenerateSources bool
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    ScheduleCron string
    Custom cron expression for schedule
    ScheduleDays List<int>
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    ScheduleHours List<int>
    List of hours to execute the job at if running on a schedule
    ScheduleInterval int
    Number of hours between job executions if running on a schedule
    ScheduleType string
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    SelfDeferring bool
    Whether this job defers on a previous run of itself
    TargetName string
    Target name for the dbt profile
    TimeoutSeconds int
    Number of seconds to allow the job to run before timing out
    TriggersOnDraftPr bool
    Whether the CI job should be automatically triggered on draft PRs
    EnvironmentId int
    Environment ID to create the job in
    ExecuteSteps []string
    List of commands to execute for the job
    ProjectId int
    Project ID to create the job in
    Triggers map[string]bool
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    DbtVersion string
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    DeferringEnvironmentId int
    Environment identifier that this job defers to (new deferring approach)
    DeferringJobId int
    Job identifier that this job defers to (legacy deferring approach)
    Description string
    Description for the job
    GenerateDocs bool
    Flag for whether the job should generate documentation
    IsActive bool
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    JobCompletionTriggerCondition JobJobCompletionTriggerConditionArgs
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    Name string
    Job name
    NumThreads int
    Number of threads to use in the job
    RunCompareChanges bool
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    RunGenerateSources bool
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    ScheduleCron string
    Custom cron expression for schedule
    ScheduleDays []int
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    ScheduleHours []int
    List of hours to execute the job at if running on a schedule
    ScheduleInterval int
    Number of hours between job executions if running on a schedule
    ScheduleType string
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    SelfDeferring bool
    Whether this job defers on a previous run of itself
    TargetName string
    Target name for the dbt profile
    TimeoutSeconds int
    Number of seconds to allow the job to run before timing out
    TriggersOnDraftPr bool
    Whether the CI job should be automatically triggered on draft PRs
    environmentId Integer
    Environment ID to create the job in
    executeSteps List<String>
    List of commands to execute for the job
    projectId Integer
    Project ID to create the job in
    triggers Map<String,Boolean>
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    dbtVersion String
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    deferringEnvironmentId Integer
    Environment identifier that this job defers to (new deferring approach)
    deferringJobId Integer
    Job identifier that this job defers to (legacy deferring approach)
    description String
    Description for the job
    generateDocs Boolean
    Flag for whether the job should generate documentation
    isActive Boolean
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    jobCompletionTriggerCondition JobJobCompletionTriggerCondition
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    name String
    Job name
    numThreads Integer
    Number of threads to use in the job
    runCompareChanges Boolean
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    runGenerateSources Boolean
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    scheduleCron String
    Custom cron expression for schedule
    scheduleDays List<Integer>
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    scheduleHours List<Integer>
    List of hours to execute the job at if running on a schedule
    scheduleInterval Integer
    Number of hours between job executions if running on a schedule
    scheduleType String
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    selfDeferring Boolean
    Whether this job defers on a previous run of itself
    targetName String
    Target name for the dbt profile
    timeoutSeconds Integer
    Number of seconds to allow the job to run before timing out
    triggersOnDraftPr Boolean
    Whether the CI job should be automatically triggered on draft PRs
    environmentId number
    Environment ID to create the job in
    executeSteps string[]
    List of commands to execute for the job
    projectId number
    Project ID to create the job in
    triggers {[key: string]: boolean}
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    dbtVersion string
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    deferringEnvironmentId number
    Environment identifier that this job defers to (new deferring approach)
    deferringJobId number
    Job identifier that this job defers to (legacy deferring approach)
    description string
    Description for the job
    generateDocs boolean
    Flag for whether the job should generate documentation
    isActive boolean
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    jobCompletionTriggerCondition JobJobCompletionTriggerCondition
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    name string
    Job name
    numThreads number
    Number of threads to use in the job
    runCompareChanges boolean
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    runGenerateSources boolean
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    scheduleCron string
    Custom cron expression for schedule
    scheduleDays number[]
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    scheduleHours number[]
    List of hours to execute the job at if running on a schedule
    scheduleInterval number
    Number of hours between job executions if running on a schedule
    scheduleType string
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    selfDeferring boolean
    Whether this job defers on a previous run of itself
    targetName string
    Target name for the dbt profile
    timeoutSeconds number
    Number of seconds to allow the job to run before timing out
    triggersOnDraftPr boolean
    Whether the CI job should be automatically triggered on draft PRs
    environment_id int
    Environment ID to create the job in
    execute_steps Sequence[str]
    List of commands to execute for the job
    project_id int
    Project ID to create the job in
    triggers Mapping[str, bool]
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    dbt_version str
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    deferring_environment_id int
    Environment identifier that this job defers to (new deferring approach)
    deferring_job_id int
    Job identifier that this job defers to (legacy deferring approach)
    description str
    Description for the job
    generate_docs bool
    Flag for whether the job should generate documentation
    is_active bool
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    job_completion_trigger_condition JobJobCompletionTriggerConditionArgs
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    name str
    Job name
    num_threads int
    Number of threads to use in the job
    run_compare_changes bool
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    run_generate_sources bool
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    schedule_cron str
    Custom cron expression for schedule
    schedule_days Sequence[int]
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    schedule_hours Sequence[int]
    List of hours to execute the job at if running on a schedule
    schedule_interval int
    Number of hours between job executions if running on a schedule
    schedule_type str
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    self_deferring bool
    Whether this job defers on a previous run of itself
    target_name str
    Target name for the dbt profile
    timeout_seconds int
    Number of seconds to allow the job to run before timing out
    triggers_on_draft_pr bool
    Whether the CI job should be automatically triggered on draft PRs
    environmentId Number
    Environment ID to create the job in
    executeSteps List<String>
    List of commands to execute for the job
    projectId Number
    Project ID to create the job in
    triggers Map<Boolean>
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    dbtVersion String
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    deferringEnvironmentId Number
    Environment identifier that this job defers to (new deferring approach)
    deferringJobId Number
    Job identifier that this job defers to (legacy deferring approach)
    description String
    Description for the job
    generateDocs Boolean
    Flag for whether the job should generate documentation
    isActive Boolean
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    jobCompletionTriggerCondition Property Map
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    name String
    Job name
    numThreads Number
    Number of threads to use in the job
    runCompareChanges Boolean
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    runGenerateSources Boolean
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    scheduleCron String
    Custom cron expression for schedule
    scheduleDays List<Number>
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    scheduleHours List<Number>
    List of hours to execute the job at if running on a schedule
    scheduleInterval Number
    Number of hours between job executions if running on a schedule
    scheduleType String
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    selfDeferring Boolean
    Whether this job defers on a previous run of itself
    targetName String
    Target name for the dbt profile
    timeoutSeconds Number
    Number of seconds to allow the job to run before timing out
    triggersOnDraftPr Boolean
    Whether the CI job should be automatically triggered on draft PRs

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Job resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing Job Resource

    Get an existing Job resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: JobState, opts?: CustomResourceOptions): Job
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            dbt_version: Optional[str] = None,
            deferring_environment_id: Optional[int] = None,
            deferring_job_id: Optional[int] = None,
            description: Optional[str] = None,
            environment_id: Optional[int] = None,
            execute_steps: Optional[Sequence[str]] = None,
            generate_docs: Optional[bool] = None,
            is_active: Optional[bool] = None,
            job_completion_trigger_condition: Optional[JobJobCompletionTriggerConditionArgs] = None,
            name: Optional[str] = None,
            num_threads: Optional[int] = None,
            project_id: Optional[int] = None,
            run_compare_changes: Optional[bool] = None,
            run_generate_sources: Optional[bool] = None,
            schedule_cron: Optional[str] = None,
            schedule_days: Optional[Sequence[int]] = None,
            schedule_hours: Optional[Sequence[int]] = None,
            schedule_interval: Optional[int] = None,
            schedule_type: Optional[str] = None,
            self_deferring: Optional[bool] = None,
            target_name: Optional[str] = None,
            timeout_seconds: Optional[int] = None,
            triggers: Optional[Mapping[str, bool]] = None,
            triggers_on_draft_pr: Optional[bool] = None) -> Job
    func GetJob(ctx *Context, name string, id IDInput, state *JobState, opts ...ResourceOption) (*Job, error)
    public static Job Get(string name, Input<string> id, JobState? state, CustomResourceOptions? opts = null)
    public static Job get(String name, Output<String> id, JobState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    CompletionTriggerCondition Pulumi.DbtCloud.Inputs.JobJobCompletionTriggerCondition
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    DbtVersion string
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    DeferringEnvironmentId int
    Environment identifier that this job defers to (new deferring approach)
    DeferringJobId int
    Job identifier that this job defers to (legacy deferring approach)
    Description string
    Description for the job
    EnvironmentId int
    Environment ID to create the job in
    ExecuteSteps List<string>
    List of commands to execute for the job
    GenerateDocs bool
    Flag for whether the job should generate documentation
    IsActive bool
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    Name string
    Job name
    NumThreads int
    Number of threads to use in the job
    ProjectId int
    Project ID to create the job in
    RunCompareChanges bool
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    RunGenerateSources bool
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    ScheduleCron string
    Custom cron expression for schedule
    ScheduleDays List<int>
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    ScheduleHours List<int>
    List of hours to execute the job at if running on a schedule
    ScheduleInterval int
    Number of hours between job executions if running on a schedule
    ScheduleType string
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    SelfDeferring bool
    Whether this job defers on a previous run of itself
    TargetName string
    Target name for the dbt profile
    TimeoutSeconds int
    Number of seconds to allow the job to run before timing out
    Triggers Dictionary<string, bool>
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    TriggersOnDraftPr bool
    Whether the CI job should be automatically triggered on draft PRs
    DbtVersion string
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    DeferringEnvironmentId int
    Environment identifier that this job defers to (new deferring approach)
    DeferringJobId int
    Job identifier that this job defers to (legacy deferring approach)
    Description string
    Description for the job
    EnvironmentId int
    Environment ID to create the job in
    ExecuteSteps []string
    List of commands to execute for the job
    GenerateDocs bool
    Flag for whether the job should generate documentation
    IsActive bool
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    JobCompletionTriggerCondition JobJobCompletionTriggerConditionArgs
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    Name string
    Job name
    NumThreads int
    Number of threads to use in the job
    ProjectId int
    Project ID to create the job in
    RunCompareChanges bool
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    RunGenerateSources bool
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    ScheduleCron string
    Custom cron expression for schedule
    ScheduleDays []int
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    ScheduleHours []int
    List of hours to execute the job at if running on a schedule
    ScheduleInterval int
    Number of hours between job executions if running on a schedule
    ScheduleType string
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    SelfDeferring bool
    Whether this job defers on a previous run of itself
    TargetName string
    Target name for the dbt profile
    TimeoutSeconds int
    Number of seconds to allow the job to run before timing out
    Triggers map[string]bool
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    TriggersOnDraftPr bool
    Whether the CI job should be automatically triggered on draft PRs
    dbtVersion String
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    deferringEnvironmentId Integer
    Environment identifier that this job defers to (new deferring approach)
    deferringJobId Integer
    Job identifier that this job defers to (legacy deferring approach)
    description String
    Description for the job
    environmentId Integer
    Environment ID to create the job in
    executeSteps List<String>
    List of commands to execute for the job
    generateDocs Boolean
    Flag for whether the job should generate documentation
    isActive Boolean
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    jobCompletionTriggerCondition JobJobCompletionTriggerCondition
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    name String
    Job name
    numThreads Integer
    Number of threads to use in the job
    projectId Integer
    Project ID to create the job in
    runCompareChanges Boolean
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    runGenerateSources Boolean
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    scheduleCron String
    Custom cron expression for schedule
    scheduleDays List<Integer>
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    scheduleHours List<Integer>
    List of hours to execute the job at if running on a schedule
    scheduleInterval Integer
    Number of hours between job executions if running on a schedule
    scheduleType String
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    selfDeferring Boolean
    Whether this job defers on a previous run of itself
    targetName String
    Target name for the dbt profile
    timeoutSeconds Integer
    Number of seconds to allow the job to run before timing out
    triggers Map<String,Boolean>
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    triggersOnDraftPr Boolean
    Whether the CI job should be automatically triggered on draft PRs
    dbtVersion string
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    deferringEnvironmentId number
    Environment identifier that this job defers to (new deferring approach)
    deferringJobId number
    Job identifier that this job defers to (legacy deferring approach)
    description string
    Description for the job
    environmentId number
    Environment ID to create the job in
    executeSteps string[]
    List of commands to execute for the job
    generateDocs boolean
    Flag for whether the job should generate documentation
    isActive boolean
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    jobCompletionTriggerCondition JobJobCompletionTriggerCondition
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    name string
    Job name
    numThreads number
    Number of threads to use in the job
    projectId number
    Project ID to create the job in
    runCompareChanges boolean
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    runGenerateSources boolean
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    scheduleCron string
    Custom cron expression for schedule
    scheduleDays number[]
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    scheduleHours number[]
    List of hours to execute the job at if running on a schedule
    scheduleInterval number
    Number of hours between job executions if running on a schedule
    scheduleType string
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    selfDeferring boolean
    Whether this job defers on a previous run of itself
    targetName string
    Target name for the dbt profile
    timeoutSeconds number
    Number of seconds to allow the job to run before timing out
    triggers {[key: string]: boolean}
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    triggersOnDraftPr boolean
    Whether the CI job should be automatically triggered on draft PRs
    dbt_version str
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    deferring_environment_id int
    Environment identifier that this job defers to (new deferring approach)
    deferring_job_id int
    Job identifier that this job defers to (legacy deferring approach)
    description str
    Description for the job
    environment_id int
    Environment ID to create the job in
    execute_steps Sequence[str]
    List of commands to execute for the job
    generate_docs bool
    Flag for whether the job should generate documentation
    is_active bool
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    job_completion_trigger_condition JobJobCompletionTriggerConditionArgs
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    name str
    Job name
    num_threads int
    Number of threads to use in the job
    project_id int
    Project ID to create the job in
    run_compare_changes bool
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    run_generate_sources bool
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    schedule_cron str
    Custom cron expression for schedule
    schedule_days Sequence[int]
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    schedule_hours Sequence[int]
    List of hours to execute the job at if running on a schedule
    schedule_interval int
    Number of hours between job executions if running on a schedule
    schedule_type str
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    self_deferring bool
    Whether this job defers on a previous run of itself
    target_name str
    Target name for the dbt profile
    timeout_seconds int
    Number of seconds to allow the job to run before timing out
    triggers Mapping[str, bool]
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    triggers_on_draft_pr bool
    Whether the CI job should be automatically triggered on draft PRs
    dbtVersion String
    Version number of dbt to use in this job, usually in the format 1.2.0-latest rather than core versions
    deferringEnvironmentId Number
    Environment identifier that this job defers to (new deferring approach)
    deferringJobId Number
    Job identifier that this job defers to (legacy deferring approach)
    description String
    Description for the job
    environmentId Number
    Environment ID to create the job in
    executeSteps List<String>
    List of commands to execute for the job
    generateDocs Boolean
    Flag for whether the job should generate documentation
    isActive Boolean
    Should always be set to true as setting it to false is the same as creating a job in a deleted state. To create/keep a job in a 'deactivated' state, check the triggers config.
    jobCompletionTriggerCondition Property Map
    Which other job should trigger this job when it finishes, and on which conditions (sometimes referred as 'job chaining').
    name String
    Job name
    numThreads Number
    Number of threads to use in the job
    projectId Number
    Project ID to create the job in
    runCompareChanges Boolean
    Whether the CI job should compare data changes introduced by the code changes. Requires deferring_environment_id to be set. (Advanced CI needs to be activated in the dbt Cloud Account Settings first as well)
    runGenerateSources Boolean
    Flag for whether the job should add a dbt source freshness step to the job. The difference between manually adding a step with dbt source freshness in the job steps or using this flag is that with this flag, a failed freshness will still allow the following steps to run.
    scheduleCron String
    Custom cron expression for schedule
    scheduleDays List<Number>
    List of days of week as numbers (0 = Sunday, 7 = Saturday) to execute the job at if running on a schedule
    scheduleHours List<Number>
    List of hours to execute the job at if running on a schedule
    scheduleInterval Number
    Number of hours between job executions if running on a schedule
    scheduleType String
    Type of schedule to use, one of everyday/ daysofweek/ customcron
    selfDeferring Boolean
    Whether this job defers on a previous run of itself
    targetName String
    Target name for the dbt profile
    timeoutSeconds Number
    Number of seconds to allow the job to run before timing out
    triggers Map<Boolean>
    Flags for which types of triggers to use, the values are github_webhook, git_provider_webhook, schedule and on_merge. All flags should be listed and set with true or false. When on_merge is true, all the other values must be false.\n\ncustom_branch_only used to be allowed but has been deprecated from the API. The jobs will use the custom branch of the environment. Please remove the custom_branch_only from your config. \n\nTo create a job in a 'deactivated' state, set all to false.
    triggersOnDraftPr Boolean
    Whether the CI job should be automatically triggered on draft PRs

    Supporting Types

    JobJobCompletionTriggerCondition, JobJobCompletionTriggerConditionArgs

    JobId int
    The ID of the job that would trigger this job after completion.
    ProjectId int
    The ID of the project where the trigger job is running in.
    Statuses List<string>
    List of statuses to trigger the job on. Possible values are success, error and canceled.
    JobId int
    The ID of the job that would trigger this job after completion.
    ProjectId int
    The ID of the project where the trigger job is running in.
    Statuses []string
    List of statuses to trigger the job on. Possible values are success, error and canceled.
    jobId Integer
    The ID of the job that would trigger this job after completion.
    projectId Integer
    The ID of the project where the trigger job is running in.
    statuses List<String>
    List of statuses to trigger the job on. Possible values are success, error and canceled.
    jobId number
    The ID of the job that would trigger this job after completion.
    projectId number
    The ID of the project where the trigger job is running in.
    statuses string[]
    List of statuses to trigger the job on. Possible values are success, error and canceled.
    job_id int
    The ID of the job that would trigger this job after completion.
    project_id int
    The ID of the project where the trigger job is running in.
    statuses Sequence[str]
    List of statuses to trigger the job on. Possible values are success, error and canceled.
    jobId Number
    The ID of the job that would trigger this job after completion.
    projectId Number
    The ID of the project where the trigger job is running in.
    statuses List<String>
    List of statuses to trigger the job on. Possible values are success, error and canceled.

    Import

    using import blocks (requires Terraform >= 1.5)

    import {

    to = dbtcloud_job.my_job

    id = “job_id”

    }

    import {

    to = dbtcloud_job.my_job

    id = “12345”

    }

    using the older import command

    $ pulumi import dbtcloud:index/job:Job my_job "job_id"
    
    $ pulumi import dbtcloud:index/job:Job my_job 12345
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    dbtcloud pulumi/pulumi-dbtcloud
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the dbtcloud Terraform Provider.
    dbtcloud logo
    dbt Cloud v0.1.25 published on Friday, Nov 8, 2024 by Pulumi