UNPKG

@pulumi/aws

Version:

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

267 lines (266 loc) • 11.1 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Provides a SageMaker AI Flow Definition resource. * * ## Example Usage * * ### Basic Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.sagemaker.FlowDefinition("example", { * flowDefinitionName: "example", * roleArn: exampleAwsIamRole.arn, * humanLoopConfig: { * humanTaskUiArn: exampleAwsSagemakerHumanTaskUi.arn, * taskAvailabilityLifetimeInSeconds: 1, * taskCount: 1, * taskDescription: "example", * taskTitle: "example", * workteamArn: exampleAwsSagemakerWorkteam.arn, * }, * outputConfig: { * s3OutputPath: `s3://${exampleAwsS3Bucket.bucket}/`, * }, * }); * ``` * * ### Public Workteam Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.sagemaker.FlowDefinition("example", { * flowDefinitionName: "example", * roleArn: exampleAwsIamRole.arn, * humanLoopConfig: { * humanTaskUiArn: exampleAwsSagemakerHumanTaskUi.arn, * taskAvailabilityLifetimeInSeconds: 1, * taskCount: 1, * taskDescription: "example", * taskTitle: "example", * workteamArn: `arn:aws:sagemaker:${current.region}:394669845002:workteam/public-crowd/default`, * publicWorkforceTaskPrice: { * amountInUsd: { * cents: 1, * tenthFractionsOfACent: 2, * }, * }, * }, * outputConfig: { * s3OutputPath: `s3://${exampleAwsS3Bucket.bucket}/`, * }, * }); * ``` * * ### Human Loop Activation Config Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.sagemaker.FlowDefinition("example", { * flowDefinitionName: "example", * roleArn: exampleAwsIamRole.arn, * humanLoopConfig: { * humanTaskUiArn: exampleAwsSagemakerHumanTaskUi.arn, * taskAvailabilityLifetimeInSeconds: 1, * taskCount: 1, * taskDescription: "example", * taskTitle: "example", * workteamArn: exampleAwsSagemakerWorkteam.arn, * }, * humanLoopRequestSource: { * awsManagedHumanLoopRequestSource: "AWS/Textract/AnalyzeDocument/Forms/V1", * }, * humanLoopActivationConfig: { * humanLoopActivationConditionsConfig: { * humanLoopActivationConditions: ` { * \x09\x09\x09"Conditions": [ * \x09\x09\x09 { * \x09\x09\x09\x09"ConditionType": "Sampling", * \x09\x09\x09\x09"ConditionParameters": { * \x09\x09\x09\x09 "RandomSamplingPercentage": 5 * \x09\x09\x09\x09} * \x09\x09\x09 } * \x09\x09\x09] * \x09\x09} * `, * }, * }, * outputConfig: { * s3OutputPath: `s3://${exampleAwsS3Bucket.bucket}/`, * }, * }); * ``` * * ## Import * * Using `pulumi import`, import SageMaker AI Flow Definitions using the `flow_definition_name`. For example: * * ```sh * $ pulumi import aws:sagemaker/flowDefinition:FlowDefinition example example * ``` */ export declare class FlowDefinition extends pulumi.CustomResource { /** * Get an existing FlowDefinition 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 state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FlowDefinitionState, opts?: pulumi.CustomResourceOptions): FlowDefinition; /** * Returns true if the given object is an instance of FlowDefinition. 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 FlowDefinition; /** * The Amazon Resource Name (ARN) assigned by AWS to this Flow Definition. */ readonly arn: pulumi.Output<string>; /** * The name of your flow definition. */ readonly flowDefinitionName: pulumi.Output<string>; /** * An object containing information about the events that trigger a human workflow. See Human Loop Activation Config details below. */ readonly humanLoopActivationConfig: pulumi.Output<outputs.sagemaker.FlowDefinitionHumanLoopActivationConfig | undefined>; /** * An object containing information about the tasks the human reviewers will perform. See Human Loop Config details below. */ readonly humanLoopConfig: pulumi.Output<outputs.sagemaker.FlowDefinitionHumanLoopConfig>; /** * Container for configuring the source of human task requests. Use to specify if Amazon Rekognition or Amazon Textract is used as an integration source. See Human Loop Request Source details below. */ readonly humanLoopRequestSource: pulumi.Output<outputs.sagemaker.FlowDefinitionHumanLoopRequestSource | undefined>; /** * An object containing information about where the human review results will be uploaded. See Output Config details below. */ readonly outputConfig: pulumi.Output<outputs.sagemaker.FlowDefinitionOutputConfig>; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ readonly region: pulumi.Output<string>; /** * The Amazon Resource Name (ARN) of the role needed to call other services on your behalf. */ readonly roleArn: pulumi.Output<string>; /** * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ readonly tagsAll: pulumi.Output<{ [key: string]: string; }>; /** * Create a FlowDefinition 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: FlowDefinitionArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering FlowDefinition resources. */ export interface FlowDefinitionState { /** * The Amazon Resource Name (ARN) assigned by AWS to this Flow Definition. */ arn?: pulumi.Input<string>; /** * The name of your flow definition. */ flowDefinitionName?: pulumi.Input<string>; /** * An object containing information about the events that trigger a human workflow. See Human Loop Activation Config details below. */ humanLoopActivationConfig?: pulumi.Input<inputs.sagemaker.FlowDefinitionHumanLoopActivationConfig>; /** * An object containing information about the tasks the human reviewers will perform. See Human Loop Config details below. */ humanLoopConfig?: pulumi.Input<inputs.sagemaker.FlowDefinitionHumanLoopConfig>; /** * Container for configuring the source of human task requests. Use to specify if Amazon Rekognition or Amazon Textract is used as an integration source. See Human Loop Request Source details below. */ humanLoopRequestSource?: pulumi.Input<inputs.sagemaker.FlowDefinitionHumanLoopRequestSource>; /** * An object containing information about where the human review results will be uploaded. See Output Config details below. */ outputConfig?: pulumi.Input<inputs.sagemaker.FlowDefinitionOutputConfig>; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input<string>; /** * The Amazon Resource Name (ARN) of the role needed to call other services on your behalf. */ roleArn?: pulumi.Input<string>; /** * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ tagsAll?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; } /** * The set of arguments for constructing a FlowDefinition resource. */ export interface FlowDefinitionArgs { /** * The name of your flow definition. */ flowDefinitionName: pulumi.Input<string>; /** * An object containing information about the events that trigger a human workflow. See Human Loop Activation Config details below. */ humanLoopActivationConfig?: pulumi.Input<inputs.sagemaker.FlowDefinitionHumanLoopActivationConfig>; /** * An object containing information about the tasks the human reviewers will perform. See Human Loop Config details below. */ humanLoopConfig: pulumi.Input<inputs.sagemaker.FlowDefinitionHumanLoopConfig>; /** * Container for configuring the source of human task requests. Use to specify if Amazon Rekognition or Amazon Textract is used as an integration source. See Human Loop Request Source details below. */ humanLoopRequestSource?: pulumi.Input<inputs.sagemaker.FlowDefinitionHumanLoopRequestSource>; /** * An object containing information about where the human review results will be uploaded. See Output Config details below. */ outputConfig: pulumi.Input<inputs.sagemaker.FlowDefinitionOutputConfig>; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input<string>; /** * The Amazon Resource Name (ARN) of the role needed to call other services on your behalf. */ roleArn: pulumi.Input<string>; /** * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; }