@pulumi/aws-native
Version:
The Pulumi AWS Cloud Control Provider enables you to build, deploy, and manage [any AWS resource that's supported by the AWS Cloud Control API](https://github.com/pulumi/pulumi-aws-native/blob/master/provider/cmd/pulumi-gen-aws-native/supported-types.txt)
204 lines (203 loc) • 8.33 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Resource Type definition for AWS::SSM::MaintenanceWindowTask
*
* ## Example Usage
* ### Example
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws_native from "@pulumi/aws-native";
*
* const lambdaTask = new aws_native.ssm.MaintenanceWindowTask("lambdaTask", {
* windowId: "mw-04fd6f19dfEXAMPLE",
* taskArn: "arn:aws:lambda:us-east-2:111222333444:function:MyLambdaTaskArn",
* serviceRoleArn: "arn:aws:iam::111222333444:role/aws-service-role/ssm.amazonaws.com/AWSServiceRoleForAmazonSSM",
* taskType: "LAMBDA",
* taskInvocationParameters: {
* maintenanceWindowLambdaParameters: {
* clientContext: "eyJ0ZXN0Q29udGV4dCI6Ik5vdGhp==trucated==EXAMPLE",
* qualifier: "$LATEST",
* payload: "eyJJbnN0YW5jZUlkIjoie3tSRVNPVVJDRV9JRH19IiwidGFyZ2V0VHlwZSI6Int7VEFSR0VUX1RZUEV9fSJ9",
* },
* },
* priority: 1,
* name: "UpdateLambdaTaskEXAMPLE",
* });
*
* ```
* ### Example
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws_native from "@pulumi/aws-native";
*
* const lambdaTask = new aws_native.ssm.MaintenanceWindowTask("lambdaTask", {
* windowId: "mw-04fd6f19dfEXAMPLE",
* taskArn: "arn:aws:lambda:us-east-2:111222333444:function:MyLambdaTaskArn",
* serviceRoleArn: "arn:aws:iam::111222333444:role/aws-service-role/ssm.amazonaws.com/AWSServiceRoleForAmazonSSM",
* taskType: "LAMBDA",
* taskInvocationParameters: {
* maintenanceWindowLambdaParameters: {
* clientContext: "eyJ0ZXN0Q29udGV4dCI6Ik5vdGhp==trucated==EXAMPLE",
* qualifier: "$LATEST",
* payload: "eyJJbnN0YW5jZUlkIjoie3tSRVNPVVJDRV9JRH19IiwidGFyZ2V0VHlwZSI6Int7VEFSR0VUX1RZUEV9fSJ9",
* },
* },
* priority: 1,
* name: "UpdateLambdaTaskEXAMPLE",
* });
*
* ```
*/
export declare class MaintenanceWindowTask extends pulumi.CustomResource {
/**
* Get an existing MaintenanceWindowTask 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<pulumi.ID>, opts?: pulumi.CustomResourceOptions): MaintenanceWindowTask;
/**
* Returns true if the given object is an instance of MaintenanceWindowTask. 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 MaintenanceWindowTask;
/**
* The specification for whether tasks should continue to run after the cutoff time specified in the maintenance windows is reached.
*/
readonly cutoffBehavior: pulumi.Output<string | undefined>;
/**
* A description of the task.
*/
readonly description: pulumi.Output<string | undefined>;
/**
* Information about an Amazon S3 bucket to write Run Command task-level logs to.
*/
readonly loggingInfo: pulumi.Output<outputs.ssm.MaintenanceWindowTaskLoggingInfo | undefined>;
/**
* The maximum number of targets this task can be run for, in parallel.
*/
readonly maxConcurrency: pulumi.Output<string | undefined>;
/**
* The maximum number of errors allowed before this task stops being scheduled.
*/
readonly maxErrors: pulumi.Output<string | undefined>;
/**
* The task name.
*/
readonly name: pulumi.Output<string | undefined>;
/**
* The priority of the task in the maintenance window. The lower the number, the higher the priority. Tasks that have the same priority are scheduled in parallel.
*/
readonly priority: pulumi.Output<number>;
/**
* The Amazon Resource Name (ARN) of the IAM service role for AWS Systems Manager to assume when running a maintenance window task.
*/
readonly serviceRoleArn: pulumi.Output<string | undefined>;
/**
* The targets (either instances or window target ids).
*/
readonly targets: pulumi.Output<outputs.ssm.MaintenanceWindowTaskTarget[] | undefined>;
/**
* The resource that the task uses during execution.
*/
readonly taskArn: pulumi.Output<string>;
/**
* The parameters to pass to the task when it runs. Populate only the fields that match the task type. All other fields should be empty.
*/
readonly taskInvocationParameters: pulumi.Output<outputs.ssm.MaintenanceWindowTaskTaskInvocationParameters | undefined>;
/**
* The parameters to pass to the task when it runs.
*
* Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::SSM::MaintenanceWindowTask` for more information about the expected schema for this property.
*/
readonly taskParameters: pulumi.Output<any | undefined>;
/**
* The type of task.
*/
readonly taskType: pulumi.Output<string>;
/**
* The ID of the maintenance window where the task is registered.
*/
readonly windowId: pulumi.Output<string>;
/**
* Unique identifier of the maintenance window task.
*/
readonly windowTaskId: pulumi.Output<string>;
/**
* Create a MaintenanceWindowTask 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: MaintenanceWindowTaskArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a MaintenanceWindowTask resource.
*/
export interface MaintenanceWindowTaskArgs {
/**
* The specification for whether tasks should continue to run after the cutoff time specified in the maintenance windows is reached.
*/
cutoffBehavior?: pulumi.Input<string>;
/**
* A description of the task.
*/
description?: pulumi.Input<string>;
/**
* Information about an Amazon S3 bucket to write Run Command task-level logs to.
*/
loggingInfo?: pulumi.Input<inputs.ssm.MaintenanceWindowTaskLoggingInfoArgs>;
/**
* The maximum number of targets this task can be run for, in parallel.
*/
maxConcurrency?: pulumi.Input<string>;
/**
* The maximum number of errors allowed before this task stops being scheduled.
*/
maxErrors?: pulumi.Input<string>;
/**
* The task name.
*/
name?: pulumi.Input<string>;
/**
* The priority of the task in the maintenance window. The lower the number, the higher the priority. Tasks that have the same priority are scheduled in parallel.
*/
priority: pulumi.Input<number>;
/**
* The Amazon Resource Name (ARN) of the IAM service role for AWS Systems Manager to assume when running a maintenance window task.
*/
serviceRoleArn?: pulumi.Input<string>;
/**
* The targets (either instances or window target ids).
*/
targets?: pulumi.Input<pulumi.Input<inputs.ssm.MaintenanceWindowTaskTargetArgs>[]>;
/**
* The resource that the task uses during execution.
*/
taskArn: pulumi.Input<string>;
/**
* The parameters to pass to the task when it runs. Populate only the fields that match the task type. All other fields should be empty.
*/
taskInvocationParameters?: pulumi.Input<inputs.ssm.MaintenanceWindowTaskTaskInvocationParametersArgs>;
/**
* The parameters to pass to the task when it runs.
*
* Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::SSM::MaintenanceWindowTask` for more information about the expected schema for this property.
*/
taskParameters?: any;
/**
* The type of task.
*/
taskType: pulumi.Input<string>;
/**
* The ID of the maintenance window where the task is registered.
*/
windowId: pulumi.Input<string>;
}