import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Resource type definition for AWS::SSM::MaintenanceWindow * * ## Example Usage * ### Example * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws_native from "@pulumi/aws-native"; * * const maintenanceWindow = new aws_native.ssm.MaintenanceWindow("maintenanceWindow", { * allowUnassociatedTargets: false, * cutoff: 1, * description: "Maintenance Window to update SSM Agent", * duration: 2, * name: "UpdateSSMAgentMaintenanceWindow", * schedule: "cron(0 4 ? * SUN *)", * scheduleTimezone: "US/Eastern", * }); * * ``` * ### Example * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws_native from "@pulumi/aws-native"; * * const maintenanceWindow = new aws_native.ssm.MaintenanceWindow("maintenanceWindow", { * allowUnassociatedTargets: false, * cutoff: 1, * description: "Maintenance Window to update SSM Agent", * duration: 2, * name: "UpdateSSMAgentMaintenanceWindow", * schedule: "cron(0 4 ? * SUN *)", * scheduleTimezone: "US/Eastern", * }); * * ``` */ export declare class MaintenanceWindow extends pulumi.CustomResource { /** * Get an existing MaintenanceWindow resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): MaintenanceWindow; /** * Returns true if the given object is an instance of MaintenanceWindow. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is MaintenanceWindow; /** * Enables a maintenance window task to run on managed instances, even if you have not registered those instances as targets. If enabled, then you must specify the unregistered instances (by instance ID) when you register a task with the maintenance window. */ readonly allowUnassociatedTargets: pulumi.Output; /** * The number of hours before the end of the maintenance window that AWS Systems Manager stops scheduling new tasks for execution. */ readonly cutoff: pulumi.Output; /** * A description of the maintenance window. */ readonly description: pulumi.Output; /** * The duration of the maintenance window in hours. */ readonly duration: pulumi.Output; /** * The date and time, in ISO-8601 Extended format, for when the maintenance window is scheduled to become inactive. */ readonly endDate: pulumi.Output; /** * The name of the maintenance window. */ readonly name: pulumi.Output; /** * The schedule of the maintenance window in the form of a cron or rate expression. */ readonly schedule: pulumi.Output; /** * The number of days to wait to run a maintenance window after the scheduled cron expression date and time. */ readonly scheduleOffset: pulumi.Output; /** * The time zone that the scheduled maintenance window executions are based on, in Internet Assigned Numbers Authority (IANA) format. */ readonly scheduleTimezone: pulumi.Output; /** * The date and time, in ISO-8601 Extended format, for when the maintenance window is scheduled to become active. StartDate allows you to delay activation of the maintenance window until the specified future date. */ readonly startDate: pulumi.Output; /** * Optional metadata that you assign to a resource in the form of an arbitrary set of tags (key-value pairs). Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag a maintenance window to identify the type of tasks it will run, the types of targets, and the environment it will run in. */ readonly tags: pulumi.Output; /** * The ID of the maintenance window. */ readonly windowId: pulumi.Output; /** * Create a MaintenanceWindow resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: MaintenanceWindowArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a MaintenanceWindow resource. */ export interface MaintenanceWindowArgs { /** * Enables a maintenance window task to run on managed instances, even if you have not registered those instances as targets. If enabled, then you must specify the unregistered instances (by instance ID) when you register a task with the maintenance window. */ allowUnassociatedTargets: pulumi.Input; /** * The number of hours before the end of the maintenance window that AWS Systems Manager stops scheduling new tasks for execution. */ cutoff: pulumi.Input; /** * A description of the maintenance window. */ description?: pulumi.Input; /** * The duration of the maintenance window in hours. */ duration: pulumi.Input; /** * The date and time, in ISO-8601 Extended format, for when the maintenance window is scheduled to become inactive. */ endDate?: pulumi.Input; /** * The name of the maintenance window. */ name?: pulumi.Input; /** * The schedule of the maintenance window in the form of a cron or rate expression. */ schedule: pulumi.Input; /** * The number of days to wait to run a maintenance window after the scheduled cron expression date and time. */ scheduleOffset?: pulumi.Input; /** * The time zone that the scheduled maintenance window executions are based on, in Internet Assigned Numbers Authority (IANA) format. */ scheduleTimezone?: pulumi.Input; /** * The date and time, in ISO-8601 Extended format, for when the maintenance window is scheduled to become active. StartDate allows you to delay activation of the maintenance window until the specified future date. */ startDate?: pulumi.Input; /** * Optional metadata that you assign to a resource in the form of an arbitrary set of tags (key-value pairs). Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag a maintenance window to identify the type of tasks it will run, the types of targets, and the environment it will run in. */ tags?: pulumi.Input[]>; }