Trigger
Manages a Glue Trigger resource.
Example Usage
Conditional Trigger
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.glue.Trigger;
import com.pulumi.aws.glue.TriggerArgs;
import com.pulumi.aws.glue.inputs.TriggerActionArgs;
import com.pulumi.aws.glue.inputs.TriggerPredicateArgs;
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) {
var example = new Trigger("example", TriggerArgs.builder()
.type("CONDITIONAL")
.actions(TriggerActionArgs.builder()
.jobName(aws_glue_job.example1().name())
.build())
.predicate(TriggerPredicateArgs.builder()
.conditions(TriggerPredicateConditionArgs.builder()
.jobName(aws_glue_job.example2().name())
.state("SUCCEEDED")
.build())
.build())
.build());
}
}
On-Demand Trigger
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.glue.Trigger;
import com.pulumi.aws.glue.TriggerArgs;
import com.pulumi.aws.glue.inputs.TriggerActionArgs;
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) {
var example = new Trigger("example", TriggerArgs.builder()
.type("ON_DEMAND")
.actions(TriggerActionArgs.builder()
.jobName(aws_glue_job.example().name())
.build())
.build());
}
}
Scheduled Trigger
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.glue.Trigger;
import com.pulumi.aws.glue.TriggerArgs;
import com.pulumi.aws.glue.inputs.TriggerActionArgs;
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) {
var example = new Trigger("example", TriggerArgs.builder()
.schedule("cron(15 12 * * ? *)")
.type("SCHEDULED")
.actions(TriggerActionArgs.builder()
.jobName(aws_glue_job.example().name())
.build())
.build());
}
}
Conditional Trigger with Crawler Action
Note: Triggers can have both a crawler action and a crawler condition, just no example provided.
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.glue.Trigger;
import com.pulumi.aws.glue.TriggerArgs;
import com.pulumi.aws.glue.inputs.TriggerActionArgs;
import com.pulumi.aws.glue.inputs.TriggerPredicateArgs;
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) {
var example = new Trigger("example", TriggerArgs.builder()
.type("CONDITIONAL")
.actions(TriggerActionArgs.builder()
.crawlerName(aws_glue_crawler.example1().name())
.build())
.predicate(TriggerPredicateArgs.builder()
.conditions(TriggerPredicateConditionArgs.builder()
.jobName(aws_glue_job.example2().name())
.state("SUCCEEDED")
.build())
.build())
.build());
}
}
Conditional Trigger with Crawler Condition
Note: Triggers can have both a crawler action and a crawler condition, just no example provided.
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.glue.Trigger;
import com.pulumi.aws.glue.TriggerArgs;
import com.pulumi.aws.glue.inputs.TriggerActionArgs;
import com.pulumi.aws.glue.inputs.TriggerPredicateArgs;
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) {
var example = new Trigger("example", TriggerArgs.builder()
.type("CONDITIONAL")
.actions(TriggerActionArgs.builder()
.jobName(aws_glue_job.example1().name())
.build())
.predicate(TriggerPredicateArgs.builder()
.conditions(TriggerPredicateConditionArgs.builder()
.crawlerName(aws_glue_crawler.example2().name())
.crawlState("SUCCEEDED")
.build())
.build())
.build());
}
}
Import
Glue Triggers can be imported using name
, e.g.,
$ pulumi import aws:glue/trigger:Trigger MyTrigger MyTrigger
Properties
List of actions initiated by this trigger when it fires. See Actions Below.
A description of the new trigger.
Batch condition that must be met (specified number of events received or batch time window expired) before EventBridge event trigger fires. See Event Batching Condition.
A predicate to specify when the new trigger should fire. Required when trigger type is CONDITIONAL
. See Predicate Below.
A cron expression used to specify the schedule. Time-Based Schedules for Jobs and Crawlers
Set to true to start SCHEDULED
and CONDITIONAL
triggers when created. True is not supported for ON_DEMAND
triggers.
A workflow to which the trigger should be associated to. Every workflow graph (DAG) needs a starting trigger (ON_DEMAND
or SCHEDULED
type) and can contain multiple additional CONDITIONAL
triggers.