AWS omics documentation change
Summary
Restructured and expanded documentation for Nextflow directives, including new sections about opting out of task retries (omicsRetryOn5xx) and configuring task duration. Updated section headers from gerund form to imperative verbs.
Security assessment
The changes primarily document operational configurations like task retries and timeouts. While the new omicsRetryOn5xx setting controls retry behavior for 5xx errors, there is no explicit mention of addressing a security vulnerability. The documentation update appears focused on clarifying functionality rather than patching a security issue.
Diff
diff --git a/omics/latest/dev/workflow-definition-nextflow.md b/omics/latest/dev/workflow-definition-nextflow.md index 5f067b4d1..01e49dac4 100644 --- a//omics/latest/dev/workflow-definition-nextflow.md +++ b//omics/latest/dev/workflow-definition-nextflow.md @@ -5 +5 @@ -Using nf-schema and nf-validation pluginsSpecifying storage URIsSetting maximum task duration using time directivesExporting task content +Use nf-schema and nf-validation pluginsSpecify storage URIsNextflow directivesExport task content @@ -17 +17 @@ Nextflow DSL2 is based on the Groovy programming language, so parameters are dyn - * Using nf-schema and nf-validation plugins + * Use nf-schema and nf-validation plugins @@ -19 +19 @@ Nextflow DSL2 is based on the Groovy programming language, so parameters are dyn - * Specifying storage URIs + * Specify storage URIs @@ -21 +21 @@ Nextflow DSL2 is based on the Groovy programming language, so parameters are dyn - * Setting maximum task duration using time directives + * Nextflow directives @@ -23 +23 @@ Nextflow DSL2 is based on the Groovy programming language, so parameters are dyn - * Exporting task content + * Export task content @@ -28 +28 @@ Nextflow DSL2 is based on the Groovy programming language, so parameters are dyn -## Using nf-schema and nf-validation plugins +## Use nf-schema and nf-validation plugins @@ -56 +56 @@ HealthOmics provides the following support for Nextflow plugins: -## Specifying storage URIs +## Specify storage URIs @@ -62 +62 @@ HealthOmics supports the use of glob patterns in Amazon S3 URIs or HealthOmics S -## Setting maximum task duration using time directives +## Nextflow directives @@ -64 +64,62 @@ HealthOmics supports the use of glob patterns in Amazon S3 URIs or HealthOmics S -HealthOmics provides an adjustable quota (see [HealthOmics service quotas](./service-quotas.html)) to specify the maximum duration for a run. For Nextflow v23 and v24 workflows, you can also specify maximum task durations using Nextflow time directives. +You configure Nextflow directives in the Nextflow config file or workflow definition. The following list shows the order of precedence that HealthOmics uses to apply configuration settings, from lowest to highest priority: + + 1. Global configuration in the config file. + + 2. Task section of the workflow definition. + + 3. Task-specific selectors in the config file. + + + + +###### Topics + + * Opt out of task retry using omicsRetryOn5xx + + * Set task duration using the time directive + + + + +### Opt out of task retry using `omicsRetryOn5xx` + +HealthOmics supports task retries if the task failed because of service errors (5XX HTTP status codes). By default, HealthOmics attempts up to two retries of a failed task. + +You can configure `omicsRetryOn5xx` to opt out of task retry for service errors. For more information about task retry in HealthOmics, see [Task Retries](./monitoring-runs.html#run-status-task-retries). + +The following example configures `omicsRetryOn5xx` in the global configuration to opt out of task retry. + + + process { + omicsRetryOn5xx = false + } + +The following example shows how to configure `omicsRetryOn5xx` in the task section of the workflow definition. + + + process myTask { + label 'my_label' + omicsRetryOn5xx = false + + script: + """ + your-command-here + """ + } + +The following example shows how to set `omicsRetryOn5xx` as task-specific configuration in the Nextflow config file, based on the name or label selectors. + + + process { + withLabel: 'my_label' { + omicsRetryOn5xx = false + } + + withName: 'myTask' { + omicsRetryOn5xx = false + } + } + +### Set task duration using the `time` directive + +HealthOmics provides an adjustable quota (see [HealthOmics service quotas](./service-quotas.html)) to specify the maximum duration for a run. For Nextflow v23 and v24 workflows, you can also specify maximum task durations using the Nextflow `time` directive. @@ -70 +131 @@ For more information about the Nextflow time directive, see [time directive](htt -HealthOmics provides the following support for Nextflow time directives: +HealthOmics provides the following support for the Nextflow time directive: @@ -89,10 +150 @@ HealthOmics provides the following support for Nextflow time directives: -Specify the timeout duration using one or more of the following units: `ms`, `s`, `m`,`h`, or `d`. You can specify time directives in the Nextflow config file and in the workflow definition. The following list shows order of precedence, from lowest to highest priority: - - 1. Global configuration in the config file. - - 2. Task section of the workflow definition. - - 3. Task-specific selectors in the config file. - - - +Specify the timeout duration using one or more of the following units: `ms`, `s`, `m`,`h`, or `d`. @@ -100 +152 @@ Specify the timeout duration using one or more of the following units: `ms`, `s` -The following example shows how to specify global configuration in the Nextflow config file. It sets a global timeout of 1 hour and 30 minutes: +The following example shows how to specify global configuration in the Nextflow config file. It sets a global timeout of 1 hour and 30 minutes. @@ -107 +159 @@ The following example shows how to specify global configuration in the Nextflow -The following example shows how to specify a time directive in the task section of the workflow definition. This example sets a timeout of 3 days, 5 hours, and 4 minutes. This value takes precedence over the global value in the config file, but doesn't take precedence over a task-specific time directive for `my_label` in the config file: +The following example shows how to specify a time directive in the task section of the workflow definition. This example sets a timeout of 3 days, 5 hours, and 4 minutes. This value takes precedence over the global value in the config file, but doesn't take precedence over a task-specific time directive for `my_label` in the config file. @@ -120 +172 @@ The following example shows how to specify a time directive in the task section -The following example shows how to specify task-specific time directives in the Nextflow config file, based on the name or label selectors. This example sets a global task timeout value of 30 minutes. It sets a value of 2 hours for task `myTask` and sets a value of 3 hours for tasks with label `my_label`. For tasks that match the selector, these values take precedence over the global value and the value in the workflow definition: +The following example shows how to specify task-specific time directives in the Nextflow config file, based on the name or label selectors. This example sets a global task timeout value of 30 minutes. It sets a value of 2 hours for task `myTask` and sets a value of 3 hours for tasks with label `my_label`. For tasks that match the selector, these values take precedence over the global value and the value in the workflow definition. @@ -135 +187 @@ The following example shows how to specify task-specific time directives in the -## Exporting task content +## Export task content