Schedule
Provides an EventBridge Scheduler Schedule resource. You can find out more about EventBridge Scheduler in the User Guide.
Note: EventBridge was formerly known as CloudWatch Events. The functionality is identical.
Example Usage
Basic Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.scheduler.Schedule;
import com.pulumi.aws.scheduler.ScheduleArgs;
import com.pulumi.aws.scheduler.inputs.ScheduleFlexibleTimeWindowArgs;
import com.pulumi.aws.scheduler.inputs.ScheduleTargetArgs;
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 Schedule("example", ScheduleArgs.builder()
.groupName("default")
.flexibleTimeWindow(ScheduleFlexibleTimeWindowArgs.builder()
.mode("OFF")
.build())
.scheduleExpression("rate(1 hour)")
.target(ScheduleTargetArgs.builder()
.arn(aws_sqs_queue.example().arn())
.roleArn(aws_iam_role.example().arn())
.build())
.build());
}
}
Content copied to clipboard
Universal Target
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.sqs.Queue;
import com.pulumi.aws.scheduler.Schedule;
import com.pulumi.aws.scheduler.ScheduleArgs;
import com.pulumi.aws.scheduler.inputs.ScheduleFlexibleTimeWindowArgs;
import com.pulumi.aws.scheduler.inputs.ScheduleTargetArgs;
import static com.pulumi.codegen.internal.Serialization.*;
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 exampleQueue = new Queue("exampleQueue");
var exampleSchedule = new Schedule("exampleSchedule", ScheduleArgs.builder()
.flexibleTimeWindow(ScheduleFlexibleTimeWindowArgs.builder()
.mode("OFF")
.build())
.scheduleExpression("rate(1 hour)")
.target(ScheduleTargetArgs.builder()
.arn("arn:aws:scheduler:::aws-sdk:sqs:sendMessage")
.roleArn(aws_iam_role.example().arn())
.input(exampleQueue.url().applyValue(url -> serializeJson(
jsonObject(
jsonProperty("MessageBody", "Greetings, programs!"),
jsonProperty("QueueUrl", url)
))))
.build())
.build());
}
}
Content copied to clipboard
Import
Schedules can be imported using the combination group_name/name
. For example
$ pulumi import aws:scheduler/schedule:Schedule example my-schedule-group/my-schedule
Content copied to clipboard
Properties
Link copied to clipboard
ARN of the target of this schedule, such as a SQS queue or ECS cluster. For universal targets, this is a Service ARN specific to the target service.
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Defines when the schedule runs. Read more in Schedule types on EventBridge Scheduler.
Link copied to clipboard