Class CfnWorkflow

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IInspectable, ITaggable, IWorkflowRef, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.116.0 (build 0eddcff)", date="2025-10-29T11:15:44.208Z") @Stability(Stable) public class CfnWorkflow extends CfnResource implements IInspectable, IWorkflowRef, ITaggable
Creates a private workflow. Before you create a private workflow, you must create and configure these required resources:.

  • Workflow definition file: A workflow definition file written in WDL, Nextflow, or CWL. The workflow definition specifies the inputs and outputs for runs that use the workflow. It also includes specifications for the runs and run tasks for your workflow, including compute and memory requirements. The workflow definition file must be in .zip format. For more information, see Workflow definition files in AWS HealthOmics.
  • You can use Amazon Q CLI to build and validate your workflow definition files in WDL, Nextflow, and CWL. For more information, see Example prompts for Amazon Q CLI and the AWS HealthOmics Agentic generative AI tutorial on GitHub.
  • (Optional) Parameter template file: A parameter template file written in JSON. Create the file to define the run parameters, or AWS HealthOmics generates the parameter template for you. For more information, see Parameter template files for HealthOmics workflows .
  • ECR container images: Create container images for the workflow in a private ECR repository, or synchronize images from a supported upstream registry with your Amazon ECR private repository.
  • (Optional) Sentieon licenses: Request a Sentieon license to use the Sentieon software in private workflows.

For more information, see Creating or updating a private workflow in AWS HealthOmics in the AWS HealthOmics User Guide .

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.omics.*;
 CfnWorkflow cfnWorkflow = CfnWorkflow.Builder.create(this, "MyCfnWorkflow")
         .accelerators("accelerators")
         .containerRegistryMap(ContainerRegistryMapProperty.builder()
                 .imageMappings(List.of(ImageMappingProperty.builder()
                         .destinationImage("destinationImage")
                         .sourceImage("sourceImage")
                         .build()))
                 .registryMappings(List.of(RegistryMappingProperty.builder()
                         .ecrAccountId("ecrAccountId")
                         .ecrRepositoryPrefix("ecrRepositoryPrefix")
                         .upstreamRegistryUrl("upstreamRegistryUrl")
                         .upstreamRepositoryPrefix("upstreamRepositoryPrefix")
                         .build()))
                 .build())
         .containerRegistryMapUri("containerRegistryMapUri")
         .definitionRepository(DefinitionRepositoryProperty.builder()
                 .connectionArn("connectionArn")
                 .excludeFilePatterns(List.of("excludeFilePatterns"))
                 .fullRepositoryId("fullRepositoryId")
                 .sourceReference(SourceReferenceProperty.builder()
                         .type("type")
                         .value("value")
                         .build())
                 .build())
         .definitionUri("definitionUri")
         .description("description")
         .engine("engine")
         .main("main")
         .name("name")
         .parameterTemplate(Map.of(
                 "parameterTemplateKey", WorkflowParameterProperty.builder()
                         .description("description")
                         .optional(false)
                         .build()))
         .parameterTemplatePath("parameterTemplatePath")
         .readmeMarkdown("readmeMarkdown")
         .readmePath("readmePath")
         .readmeUri("readmeUri")
         .storageCapacity(123)
         .storageType("storageType")
         .tags(Map.of(
                 "tagsKey", "tags"))
         .workflowBucketOwnerId("workflowBucketOwnerId")
         .build();
 

See Also:
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnWorkflow

      protected CfnWorkflow(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnWorkflow

      protected CfnWorkflow(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnWorkflow

      @Stability(Stable) public CfnWorkflow(@NotNull software.constructs.Construct scope, @NotNull String id, @Nullable CfnWorkflowProps props)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties.
    • CfnWorkflow

      @Stability(Stable) public CfnWorkflow(@NotNull software.constructs.Construct scope, @NotNull String id)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector - tree inspector to collect and process attributes. This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrArn

      @Stability(Stable) @NotNull public String getAttrArn()
      The ARN for the workflow.
    • getAttrCreationTime

      @Stability(Stable) @NotNull public String getAttrCreationTime()
      When the workflow was created.
    • getAttrId

      @Stability(Stable) @NotNull public String getAttrId()
      The workflow's ID.
    • getAttrStatus

      @Stability(Stable) @NotNull public String getAttrStatus()
      The workflow's status.
    • getAttrType

      @Stability(Stable) @NotNull public String getAttrType()
      The workflow's type.
    • getAttrUuid

      @Stability(Stable) @NotNull public String getAttrUuid()
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      Tag Manager which manages the tags for this resource.
      Specified by:
      getTags in interface ITaggable
    • getWorkflowRef

      @Stability(Stable) @NotNull public WorkflowReference getWorkflowRef()
      A reference to a Workflow resource.
      Specified by:
      getWorkflowRef in interface IWorkflowRef
    • getAccelerators

      @Stability(Stable) @Nullable public String getAccelerators()
    • setAccelerators

      @Stability(Stable) public void setAccelerators(@Nullable String value)
    • getContainerRegistryMap

      @Stability(Stable) @Nullable public Object getContainerRegistryMap()
      Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries.

      Returns union: either IResolvable or CfnWorkflow.ContainerRegistryMapProperty

    • setContainerRegistryMap

      @Stability(Stable) public void setContainerRegistryMap(@Nullable IResolvable value)
      Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries.
    • setContainerRegistryMap

      @Stability(Stable) public void setContainerRegistryMap(@Nullable CfnWorkflow.ContainerRegistryMapProperty value)
      Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries.
    • getContainerRegistryMapUri

      @Stability(Stable) @Nullable public String getContainerRegistryMapUri()
    • setContainerRegistryMapUri

      @Stability(Stable) public void setContainerRegistryMapUri(@Nullable String value)
    • getDefinitionRepository

      @Stability(Stable) @Nullable public Object getDefinitionRepository()
      Contains information about a source code repository that hosts the workflow definition files.

      Returns union: either IResolvable or CfnWorkflow.DefinitionRepositoryProperty

    • setDefinitionRepository

      @Stability(Stable) public void setDefinitionRepository(@Nullable IResolvable value)
      Contains information about a source code repository that hosts the workflow definition files.
    • setDefinitionRepository

      @Stability(Stable) public void setDefinitionRepository(@Nullable CfnWorkflow.DefinitionRepositoryProperty value)
      Contains information about a source code repository that hosts the workflow definition files.
    • getDefinitionUri

      @Stability(Stable) @Nullable public String getDefinitionUri()
      The URI of a definition for the workflow.
    • setDefinitionUri

      @Stability(Stable) public void setDefinitionUri(@Nullable String value)
      The URI of a definition for the workflow.
    • getDescription

      @Stability(Stable) @Nullable public String getDescription()
      The parameter's description.
    • setDescription

      @Stability(Stable) public void setDescription(@Nullable String value)
      The parameter's description.
    • getEngine

      @Stability(Stable) @Nullable public String getEngine()
      An engine for the workflow.
    • setEngine

      @Stability(Stable) public void setEngine(@Nullable String value)
      An engine for the workflow.
    • getMain

      @Stability(Stable) @Nullable public String getMain()
      The path of the main definition file for the workflow.
    • setMain

      @Stability(Stable) public void setMain(@Nullable String value)
      The path of the main definition file for the workflow.
    • getName

      @Stability(Stable) @Nullable public String getName()
      The workflow's name.
    • setName

      @Stability(Stable) public void setName(@Nullable String value)
      The workflow's name.
    • getParameterTemplate

      @Stability(Stable) @Nullable public Object getParameterTemplate()
      The workflow's parameter template.

      Returns union: either IResolvable or Mapinvalid input: '<'String, either IResolvable or CfnWorkflow.WorkflowParameterProperty>

    • setParameterTemplate

      @Stability(Stable) public void setParameterTemplate(@Nullable IResolvable value)
      The workflow's parameter template.
    • setParameterTemplate

      @Stability(Stable) public void setParameterTemplate(@Nullable Map<String,Object> value)
      The workflow's parameter template.
    • getParameterTemplatePath

      @Stability(Stable) @Nullable public String getParameterTemplatePath()
      Path to the primary workflow parameter template JSON file inside the repository.
    • setParameterTemplatePath

      @Stability(Stable) public void setParameterTemplatePath(@Nullable String value)
      Path to the primary workflow parameter template JSON file inside the repository.
    • getReadmeMarkdown

      @Stability(Stable) @Nullable public String getReadmeMarkdown()
      The markdown content for the workflow's README file.
    • setReadmeMarkdown

      @Stability(Stable) public void setReadmeMarkdown(@Nullable String value)
      The markdown content for the workflow's README file.
    • getReadmePath

      @Stability(Stable) @Nullable public String getReadmePath()
      The path to the workflow README markdown file within the repository.
    • setReadmePath

      @Stability(Stable) public void setReadmePath(@Nullable String value)
      The path to the workflow README markdown file within the repository.
    • getReadmeUri

      @Stability(Stable) @Nullable public String getReadmeUri()
      The S3 URI of the README file for the workflow.
    • setReadmeUri

      @Stability(Stable) public void setReadmeUri(@Nullable String value)
      The S3 URI of the README file for the workflow.
    • getStorageCapacity

      @Stability(Stable) @Nullable public Number getStorageCapacity()
      The default static storage capacity (in gibibytes) for runs that use this workflow or workflow version.
    • setStorageCapacity

      @Stability(Stable) public void setStorageCapacity(@Nullable Number value)
      The default static storage capacity (in gibibytes) for runs that use this workflow or workflow version.
    • getStorageType

      @Stability(Stable) @Nullable public String getStorageType()
    • setStorageType

      @Stability(Stable) public void setStorageType(@Nullable String value)
    • getTagsRaw

      @Stability(Stable) @Nullable public Map<String,String> getTagsRaw()
      Tags for the workflow.
    • setTagsRaw

      @Stability(Stable) public void setTagsRaw(@Nullable Map<String,String> value)
      Tags for the workflow.
    • getWorkflowBucketOwnerId

      @Stability(Stable) @Nullable public String getWorkflowBucketOwnerId()
      Optional workflow bucket owner ID to verify the workflow bucket.
    • setWorkflowBucketOwnerId

      @Stability(Stable) public void setWorkflowBucketOwnerId(@Nullable String value)
      Optional workflow bucket owner ID to verify the workflow bucket.