Workflow

Provides a AWS Transfer Workflow resource.

Example Usage

Basic single step example

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.transfer.Workflow;
import com.pulumi.aws.transfer.WorkflowArgs;
import com.pulumi.aws.transfer.inputs.WorkflowStepArgs;
import com.pulumi.aws.transfer.inputs.WorkflowStepDeleteStepDetailsArgs;
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 Workflow("example", WorkflowArgs.builder()
.steps(WorkflowStepArgs.builder()
.deleteStepDetails(WorkflowStepDeleteStepDetailsArgs.builder()
.name("example")
.sourceFileLocation("${original.file}")
.build())
.type("DELETE")
.build())
.build());
}
}

Multistep example

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.transfer.Workflow;
import com.pulumi.aws.transfer.WorkflowArgs;
import com.pulumi.aws.transfer.inputs.WorkflowStepArgs;
import com.pulumi.aws.transfer.inputs.WorkflowStepCustomStepDetailsArgs;
import com.pulumi.aws.transfer.inputs.WorkflowStepTagStepDetailsArgs;
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 Workflow("example", WorkflowArgs.builder()
.steps(
WorkflowStepArgs.builder()
.customStepDetails(WorkflowStepCustomStepDetailsArgs.builder()
.name("example")
.sourceFileLocation("${original.file}")
.target(aws_lambda_function.example().arn())
.timeoutSeconds(60)
.build())
.type("CUSTOM")
.build(),
WorkflowStepArgs.builder()
.tagStepDetails(WorkflowStepTagStepDetailsArgs.builder()
.name("example")
.sourceFileLocation("${original.file}")
.tags(WorkflowStepTagStepDetailsTagArgs.builder()
.key("Name")
.value("Hello World")
.build())
.build())
.type("TAG")
.build())
.build());
}
}

Import

Transfer Workflows can be imported using the worflow_id.

$ pulumi import aws:transfer/workflow:Workflow example example

Properties

Link copied to clipboard
val arn: Output<String>

The Workflow ARN.

Link copied to clipboard
val description: Output<String>?

A textual description for the workflow.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard

Specifies the steps (actions) to take if errors are encountered during execution of the workflow. See Workflow Steps below.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val steps: Output<List<WorkflowStep>>

Specifies the details for the steps that are in the specified workflow. See Workflow Steps below.

Link copied to clipboard
val tags: Output<Map<String, String>>?

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
val tagsAll: Output<Map<String, String>>

A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Link copied to clipboard
val urn: Output<String>