workflows
Creates, updates, deletes, gets or lists a workflows resource.
Overview
| Name | workflows |
| Type | Resource |
| Id | aws.omics.workflows |
Fields
The following fields are returned by SELECT queries:
- get_workflow
- list_workflows
| Name | Datatype | Description |
|---|---|---|
id | string | The workflow's ID. (pattern: <code>[0-9]+</code>) |
name | string | The workflow's name. (pattern: <code>[\p{L}||\p{M}||\p{Z}||\p{S}||\p{N}||\p{P}]+</code>) |
accelerators | string | The computational accelerator specified to run the workflow. (GPU) |
arn | string | The workflow's ARN. (pattern: <code>arn:.+</code>) |
container_registry_map | object | Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see Container images in the Amazon Web Services HealthOmics User Guide. |
creation_time | string (date-time) | When the workflow was created. |
definition | string | The workflow's definition. (pattern: <code>[\p{L}||\p{M}||\p{Z}||\p{S}||\p{N}||\p{P}]+</code>) |
definition_repository_details | object | Details about the source code repository that hosts the workflow definition files. |
description | string | The workflow's description. (pattern: <code>[\p{L}||\p{M}||\p{Z}||\p{S}||\p{N}||\p{P}]+</code>) |
digest | string | The workflow's digest. |
engine | string | The workflow's engine. (WDL, NEXTFLOW, CWL, WDL_LENIENT) |
main | string | The path of the main definition file for the workflow. (pattern: <code>[\p{L}||\p{M}||\p{Z}||\p{S}||\p{N}||\p{P}]+</code>) |
metadata | object | Gets metadata for the workflow. |
parameter_template | object | The workflow's parameter template. |
profile_parameter_templates | object | A mapping of profile names to their parameter templates. Each profile defines its own set of parameters that you can use when starting a run with that profile. |
profiles | array | The list of Nextflow profiles that are available for this workflow. Profiles allow you to select predefined configuration settings at runtime. |
readme | string | The README content for the workflow, providing documentation and usage information. (pattern: <code>[\p{L}||\p{M}||\p{Z}||\p{S}||\p{N}||\p{P}]+</code>) |
readme_path | string | The path to the workflow README markdown file within the repository. This file provides documentation and usage information for the workflow. If not specified, the README.md file from the root directory of the repository will be used. (pattern: <code>[\p{L}||\p{M}||\p{Z}||\p{S}||\p{N}||\p{P}]+</code>) |
status | string | The workflow's status. (CREATING, ACTIVE, UPDATING, DELETED, FAILED, INACTIVE) |
status_message | string | The workflow's status message. (pattern: <code>[\p{L}||\p{M}||\p{Z}||\p{S}||\p{N}||\p{P}]+</code>) |
storage_capacity | integer | The default static storage capacity (in gibibytes) for runs that use this workflow or workflow version. |
storage_type | string | The default storage type for runs using this workflow. (STATIC, DYNAMIC) |
tags | object | The workflow's tags. |
type_ | string | The workflow's type. (PRIVATE, READY2RUN) |
uuid | string | The universally unique identifier (UUID) value for this workflow. (pattern: <code>[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}</code>) |
| Name | Datatype | Description |
|---|---|---|
id | string | The workflow's ID. (pattern: <code>[0-9]+</code>) |
name | string | The workflow's name. (pattern: <code>[\p{L}||\p{M}||\p{Z}||\p{S}||\p{N}||\p{P}]+</code>) |
arn | string | The workflow's ARN. (pattern: <code>arn:.+</code>) |
creation_time | string (date-time) | When the workflow was created. |
digest | string | The workflow's digest. |
metadata | object | Any metadata available for workflow. The information listed may vary depending on the workflow, and there may also be no metadata to return. |
status | string | The workflow's status. (CREATING, ACTIVE, UPDATING, DELETED, FAILED, INACTIVE) |
type_ | string | The workflow's type. (PRIVATE, READY2RUN) |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get_workflow | select | id, region | type, export, workflowOwnerId | Gets all information about a workflow using its ID. If a workflow is shared with you, you cannot export the workflow. For more information about your workflow status, see Verify the workflow status in the Amazon Web Services HealthOmics User Guide. |
list_workflows | select | region | type, name, startingToken, maxResults | Retrieves a list of existing workflows. You can filter for specific workflows by their name and type. Using the type parameter, specify PRIVATE to retrieve a list of private workflows or specify READY2RUN for a list of all Ready2Run workflows. If you do not specify the type of workflow, this operation returns a list of existing workflows. |
create_workflow | insert | region, requestId | 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 Amazon Web Services 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 Amazon Web Services 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 Amazon Web Services 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 Amazon Web Services HealthOmics in the Amazon Web Services HealthOmics User Guide. | |
update_workflow | update | id, region | Updates information about a workflow. You can update the following workflow information: Name Description Default storage type Default storage capacity (with workflow ID) This operation returns a response with no body if the operation is successful. You can check the workflow updates by calling the GetWorkflow API operation. For more information, see Update a private workflow in the Amazon Web Services HealthOmics User Guide. | |
delete_workflow | delete | id, region | Deletes a workflow by specifying its ID. This operation returns a response with no body if the deletion is successful. To verify that the workflow is deleted: Use ListWorkflows to confirm the workflow no longer appears in the list. Use GetWorkflow to verify the workflow cannot be found. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
id | string | The workflow's ID. |
region | string | AWS region (default: us-east-1) |
export | array | The export format for the workflow. |
maxResults | integer | The maximum number of workflows to return in one page of results. |
name | string | Filter the list by workflow name. |
startingToken | string | Specify the pagination token from a previous request to retrieve the next page of results. |
type | string | Filter the list by workflow type. |
workflowOwnerId | string | The ID of the workflow owner. |
SELECT examples
- get_workflow
- list_workflows
Gets all information about a workflow using its ID. If a workflow is shared with you, you cannot export the workflow. For more information about your workflow status, see Verify the workflow status in the Amazon Web Services HealthOmics User Guide.
SELECT
id,
name,
accelerators,
arn,
container_registry_map,
creation_time,
definition,
definition_repository_details,
description,
digest,
engine,
main,
metadata,
parameter_template,
profile_parameter_templates,
profiles,
readme,
readme_path,
status,
status_message,
storage_capacity,
storage_type,
tags,
type_,
uuid
FROM aws.omics.workflows
WHERE id = '{{ id }}' -- required
AND region = '{{ region }}' -- required
AND type = '{{ type }}'
AND export = '{{ export }}'
AND workflowOwnerId = '{{ workflowOwnerId }}'
;
Retrieves a list of existing workflows. You can filter for specific workflows by their name and type. Using the type parameter, specify PRIVATE to retrieve a list of private workflows or specify READY2RUN for a list of all Ready2Run workflows. If you do not specify the type of workflow, this operation returns a list of existing workflows.
SELECT
id,
name,
arn,
creation_time,
digest,
metadata,
status,
type_
FROM aws.omics.workflows
WHERE region = '{{ region }}' -- required
AND type = '{{ type }}'
AND name = '{{ name }}'
AND startingToken = '{{ startingToken }}'
AND maxResults = '{{ maxResults }}'
;
INSERT examples
- create_workflow
- Manifest
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 Amazon Web Services 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 Amazon Web Services 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 Amazon Web Services 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 Amazon Web Services HealthOmics in the Amazon Web Services HealthOmics User Guide.
INSERT INTO aws.omics.workflows (
name,
description,
engine,
definitionZip,
definitionUri,
main,
parameterTemplate,
storageCapacity,
tags,
requestId,
accelerators,
storageType,
containerRegistryMap,
containerRegistryMapUri,
readmeMarkdown,
parameterTemplatePath,
readmePath,
definitionRepository,
workflowBucketOwnerId,
readmeUri,
region
)
SELECT
'{{ name }}',
'{{ description }}',
'{{ engine }}',
'{{ definitionZip }}',
'{{ definitionUri }}',
'{{ main }}',
'{{ parameterTemplate }}',
{{ storageCapacity }},
'{{ tags }}',
'{{ requestId }}' /* required */,
'{{ accelerators }}',
'{{ storageType }}',
'{{ containerRegistryMap }}',
'{{ containerRegistryMapUri }}',
'{{ readmeMarkdown }}',
'{{ parameterTemplatePath }}',
'{{ readmePath }}',
'{{ definitionRepository }}',
'{{ workflowBucketOwnerId }}',
'{{ readmeUri }}',
'{{ region }}'
RETURNING
id,
arn,
status,
tags,
uuid
;
# Description fields are for documentation purposes
- name: workflows
props:
- name: region
value: "{{ region }}"
description: Required parameter for the workflows resource.
- name: name
value: "{{ name }}"
- name: description
value: "{{ description }}"
- name: engine
value: "{{ engine }}"
valid_values: ['WDL', 'NEXTFLOW', 'CWL', 'WDL_LENIENT']
- name: definitionZip
value: "{{ definitionZip }}"
- name: definitionUri
value: "{{ definitionUri }}"
- name: main
value: "{{ main }}"
- name: parameterTemplate
value: "{{ parameterTemplate }}"
- name: storageCapacity
value: {{ storageCapacity }}
- name: tags
value: "{{ tags }}"
- name: requestId
value: "{{ requestId }}"
- name: accelerators
value: "{{ accelerators }}"
valid_values: ['GPU']
- name: storageType
value: "{{ storageType }}"
valid_values: ['STATIC', 'DYNAMIC']
- name: containerRegistryMap
description: |
Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see Container images in the Amazon Web Services HealthOmics User Guide.
value:
registryMappings:
- upstreamRegistryUrl: "{{ upstreamRegistryUrl }}"
ecrRepositoryPrefix: "{{ ecrRepositoryPrefix }}"
upstreamRepositoryPrefix: "{{ upstreamRepositoryPrefix }}"
ecrAccountId: "{{ ecrAccountId }}"
imageMappings:
- sourceImage: "{{ sourceImage }}"
destinationImage: "{{ destinationImage }}"
- name: containerRegistryMapUri
value: "{{ containerRegistryMapUri }}"
- name: readmeMarkdown
value: "{{ readmeMarkdown }}"
- name: parameterTemplatePath
value: "{{ parameterTemplatePath }}"
- name: readmePath
value: "{{ readmePath }}"
- name: definitionRepository
description: |
Contains information about a source code repository that hosts the workflow definition files.
value:
connectionArn: "{{ connectionArn }}"
fullRepositoryId: "{{ fullRepositoryId }}"
sourceReference:
type_: "{{ type_ }}"
value: "{{ value }}"
excludeFilePatterns:
- "{{ excludeFilePatterns }}"
- name: workflowBucketOwnerId
value: "{{ workflowBucketOwnerId }}"
- name: readmeUri
value: "{{ readmeUri }}"
UPDATE examples
- update_workflow
Updates information about a workflow. You can update the following workflow information: Name Description Default storage type Default storage capacity (with workflow ID) This operation returns a response with no body if the operation is successful. You can check the workflow updates by calling the GetWorkflow API operation. For more information, see Update a private workflow in the Amazon Web Services HealthOmics User Guide.
UPDATE aws.omics.workflows
SET
name = '{{ name }}',
description = '{{ description }}',
storageType = '{{ storageType }}',
storageCapacity = {{ storageCapacity }},
readmeMarkdown = '{{ readmeMarkdown }}'
WHERE
id = '{{ id }}' --required
AND region = '{{ region }}' --required;
DELETE examples
- delete_workflow
Deletes a workflow by specifying its ID. This operation returns a response with no body if the deletion is successful. To verify that the workflow is deleted: Use ListWorkflows to confirm the workflow no longer appears in the list. Use GetWorkflow to verify the workflow cannot be found.
DELETE FROM aws.omics.workflows
WHERE id = '{{ id }}' --required
AND region = '{{ region }}' --required
;