From f4b9f00a89b128b6ab20dc59185b7f73cb3ad81a Mon Sep 17 00:00:00 2001 From: Llewellyn vd Berg <113503285+llewellyn-sl@users.noreply.github.com> Date: Sun, 11 May 2025 13:31:08 +0200 Subject: [PATCH 1/7] Update netlify.toml --- netlify.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/netlify.toml b/netlify.toml index 46d5381a7..6a4e83954 100644 --- a/netlify.toml +++ b/netlify.toml @@ -9,7 +9,7 @@ # Default production branch - exclude enterprise docs (includes API docs) [context.master.environment] EXCLUDE_PLATFORM_API="0" - EXCLUDE_PLATFORM_OPENAPI="10" + EXCLUDE_PLATFORM_OPENAPI="0" # Testing only - dev branch excluding enterprise docs (can be removed after #594 is live) [context.exclude-apidocs.environment] From 008b84455ddd0c4c5a3b10ece8909136eb465fc3 Mon Sep 17 00:00:00 2001 From: Llewellyn vd Berg <113503285+llewellyn-sl@users.noreply.github.com> Date: Tue, 1 Jul 2025 12:51:41 +0200 Subject: [PATCH 2/7] MVP 1st commit --- platform-cloud/docs/launch/launchpad.md | 47 +++++++++++++++++++++++-- 1 file changed, 45 insertions(+), 2 deletions(-) diff --git a/platform-cloud/docs/launch/launchpad.md b/platform-cloud/docs/launch/launchpad.md index 2c7a23ead..18a13ed0d 100644 --- a/platform-cloud/docs/launch/launchpad.md +++ b/platform-cloud/docs/launch/launchpad.md @@ -25,6 +25,10 @@ The launch form consists of [General config](#general-config), [Run parameters]( For saved pipelines, **General config** and **Run parameters** fields are prefilled and can be edited before launch. +:::info +The launch form accepts URL query parameters. See [Populate launch form with URL query parameters](#populate-launch-form-with-url-query-parameters) for more information. +::: + ### General config - **Pipeline to launch**: A Git repository name or URL. For saved pipelines, this is prefilled and cannot be edited. Private repositories require [access credentials](../credentials/overview). @@ -77,11 +81,12 @@ The dropdown of available config profiles is populated by inspecting the Nextflo ### Run parameters -There are three ways to enter **Run parameters** prior to launch: +There are four ways to enter **Run parameters** prior to launch: - The **Input form view** displays form fields to enter text, select attributes from dropdowns, and browse input and output locations with [Data Explorer](../data/data-explorer). - The **Config view** displays a raw schema that you can edit directly. Select JSON or YAML format from the **View as** dropdown. - **Upload params file** allows you to upload a JSON or YAML file with run parameters. +- Specify run parameters with query parameters in the launch URL. See [Populate launch form with URL query parameters](#populate-launch-form-with-url-query-parameters) for more information. Seqera uses a `nextflow_schema.json` file in the root of the pipeline repository to dynamically create a form with the necessary pipeline parameters. Most pipelines contain at least input and output parameters: @@ -116,7 +121,7 @@ See [Advanced options](../launch/advanced). After you have filled the necessary launch details, select **Launch**. The **Runs** tab shows your new run in a **submitted** status at the top of the list. Select the run name to navigate to the [**View Workflow Run**](../monitoring/overview) page and view the configuration, parameters, status of individual tasks, and run report. :::note -For more information on relaunch and resume, see [Nextflow cache and resume](./cache-resume). +For more information on relaunch and resume, see [Nextflow cache and resume](./cache-resume.mdx). ::: ## Add new pipeline @@ -147,3 +152,41 @@ Select **Update** when you are ready to save the updated pipeline. :::note Pipeline names must be unique per workspace. ::: + +## Populate launch form with URL query parameters + +The launch form can populate fields with values passed as URL query parameters. For example, append `?revision=master` to your launch URL to prefill the **Revision** field. + +Platform validates run parameters passed via the launch URL in the following way: +- Parameter values are validated and warnings are shown for any invalid supplied values. +- The validity of parameter names is **not** validated. You must provide valid and supported parameters for launch form fields to be populated without error. + +### Supported URL query parameters and corresponding launch form fields + +| **Launch form field** | **Query parameter name** | +|------------------------------------------------|---------------------------| +| **General config** | | +| Pipeline to launch | pipeline | +| Revision number | revision | +| Config profiles | configProfiles | +| Workflow run name | runName | +| Labels | labelIds | +| Compute environment | computeEnvId | +| Work directory | workDir | +| **Run parameters** | | +| Run parameters | paramsText | +| **Advanced settings** | | +| Resource labels | resourceLabelIds | +| Nextflow config file | configText | +| Seqera Cloud config file | towerConfig | +| Pull latest | pullLatest | +| Stub run | stubRun | +| Main script | mainScript | +| Workflow entry name | entryName | +| Schema name | schemaName | +| Head job CPUs | headJobCpus | +| Head job memory | headJobMemoryMb | +| Workspace's pipeline secrets | workspaceSecrets | +| User's pipeline secrets | userSecrets | +| Pre-run script | preRunScript | +| Post-run script | postRunScript | From b8c2537d4686b1e1e6ec91c343b4f4eae79b8234 Mon Sep 17 00:00:00 2001 From: Llewellyn vd Berg <113503285+llewellyn-sl@users.noreply.github.com> Date: Tue, 1 Jul 2025 14:31:25 +0200 Subject: [PATCH 3/7] Add paramsText instructions --- platform-cloud/docs/launch/launchpad.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/platform-cloud/docs/launch/launchpad.md b/platform-cloud/docs/launch/launchpad.md index 18a13ed0d..072ab4679 100644 --- a/platform-cloud/docs/launch/launchpad.md +++ b/platform-cloud/docs/launch/launchpad.md @@ -158,8 +158,13 @@ Pipeline names must be unique per workspace. The launch form can populate fields with values passed as URL query parameters. For example, append `?revision=master` to your launch URL to prefill the **Revision** field. Platform validates run parameters passed via the launch URL in the following way: +- The validity of parameter names is **not** validated. You must provide valid and supported parameters for launch form fields to be populated without error. See supported parameter names in the following section. - Parameter values are validated and warnings are shown for any invalid supplied values. -- The validity of parameter names is **not** validated. You must provide valid and supported parameters for launch form fields to be populated without error. +- Pipeline-specific run parameters can be passed with the `paramsText` query parameter. Include both the parameter name and value, and chain parameters together using `&`. For example: + +``` +?paramsText=key1:value1&key2:value2 +``` ### Supported URL query parameters and corresponding launch form fields @@ -190,3 +195,4 @@ Platform validates run parameters passed via the launch URL in the following way | User's pipeline secrets | userSecrets | | Pre-run script | preRunScript | | Post-run script | postRunScript | + From 5a7c9adaba8de86d78ce81bbcf9d5aba1ce1ec18 Mon Sep 17 00:00:00 2001 From: Llewellyn vd Berg <113503285+llewellyn-sl@users.noreply.github.com> Date: Wed, 2 Jul 2025 12:37:53 +0200 Subject: [PATCH 4/7] Clarify paramsText and percent-encoding --- platform-cloud/docs/launch/launchpad.md | 68 +++++++++++++++---------- 1 file changed, 42 insertions(+), 26 deletions(-) diff --git a/platform-cloud/docs/launch/launchpad.md b/platform-cloud/docs/launch/launchpad.md index 072ab4679..a3466c622 100644 --- a/platform-cloud/docs/launch/launchpad.md +++ b/platform-cloud/docs/launch/launchpad.md @@ -155,44 +155,60 @@ Pipeline names must be unique per workspace. ## Populate launch form with URL query parameters -The launch form can populate fields with values passed as URL query parameters. For example, append `?revision=master` to your launch URL to prefill the **Revision** field. +The launch form can populate fields with values passed as URL query parameters. For example, append `?revision=master` to your launch URL to prefill the **Revision** field with `master`. This feature is useful for Platform administrators to provide custom pipeline launch URLs to users in order to hard-code required run and pipeline parameters for every run. Platform validates run parameters passed via the launch URL in the following way: - The validity of parameter names is **not** validated. You must provide valid and supported parameters for launch form fields to be populated without error. See supported parameter names in the following section. - Parameter values are validated and warnings are shown for any invalid supplied values. -- Pipeline-specific run parameters can be passed with the `paramsText` query parameter. Include both the parameter name and value, and chain parameters together using `&`. For example: + +Pipeline-specific run parameters can be passed with the `paramsText` query parameter. Pass both the name and value for any parameter defined in your [pipeline schema](../pipeline-schema/overview.md) in JSON format: ``` -?paramsText=key1:value1&key2:value2 +?paramsText={"key1": "value1", "key2": "value2"} ``` +:::note +When submitted, JSON-formatted paramsText input will be formatted with percent-encoding for spaces, brackets and other non-standard URL characters. For example: + +``` +?paramsText={"key1": "value1", "key2": "value2"} +``` + +will be formatted and added to relevant launch form fields with this syntax: + +``` +%7B"key1":%20"value1",%20"key2":%20"value2"%7D +``` + +Platform will ignore added percent-encoding characters in form fields, so you do not need to remove them manually before submitting your pipeline launch. +::: + ### Supported URL query parameters and corresponding launch form fields | **Launch form field** | **Query parameter name** | |------------------------------------------------|---------------------------| | **General config** | | -| Pipeline to launch | pipeline | -| Revision number | revision | -| Config profiles | configProfiles | -| Workflow run name | runName | -| Labels | labelIds | -| Compute environment | computeEnvId | -| Work directory | workDir | +| Pipeline to launch | `pipeline` | +| Revision number | `revision` | +| Config profiles | `configProfiles` | +| Workflow run name | `runName` | +| Labels | `labelIds` | +| Compute environment | `computeEnvId` | +| Work directory | `workDir` | | **Run parameters** | | -| Run parameters | paramsText | +| Run parameters | `paramsText` | | **Advanced settings** | | -| Resource labels | resourceLabelIds | -| Nextflow config file | configText | -| Seqera Cloud config file | towerConfig | -| Pull latest | pullLatest | -| Stub run | stubRun | -| Main script | mainScript | -| Workflow entry name | entryName | -| Schema name | schemaName | -| Head job CPUs | headJobCpus | -| Head job memory | headJobMemoryMb | -| Workspace's pipeline secrets | workspaceSecrets | -| User's pipeline secrets | userSecrets | -| Pre-run script | preRunScript | -| Post-run script | postRunScript | - +| Resource labels | `resourceLabelIds` | +| Nextflow config file | `configText` | +| Seqera Cloud config file | `towerConfig` | +| Pull latest | `pullLatest` | +| Stub run | `stubRun` | +| Main script | `mainScript` | +| Workflow entry name | `entryName` | +| Schema name | `schemaName` | +| Head job CPUs | `headJobCpus` | +| Head job memory | `headJobMemoryMb` | +| Workspace's pipeline secrets | `workspaceSecrets` | +| User's pipeline secrets | `userSecrets` | +| Pre-run script | `preRunScript` | +| Post-run script | `postRunScript` | From 251b9f43656479cfc5bb2124e09cb21982fb04f9 Mon Sep 17 00:00:00 2001 From: Llewellyn vd Berg <113503285+llewellyn-sl@users.noreply.github.com> Date: Wed, 2 Jul 2025 13:00:49 +0200 Subject: [PATCH 5/7] Update platform-cloud/docs/launch/launchpad.md Signed-off-by: Llewellyn vd Berg <113503285+llewellyn-sl@users.noreply.github.com> --- platform-cloud/docs/launch/launchpad.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform-cloud/docs/launch/launchpad.md b/platform-cloud/docs/launch/launchpad.md index a3466c622..e0108263a 100644 --- a/platform-cloud/docs/launch/launchpad.md +++ b/platform-cloud/docs/launch/launchpad.md @@ -196,7 +196,7 @@ Platform will ignore added percent-encoding characters in form fields, so you do | Compute environment | `computeEnvId` | | Work directory | `workDir` | | **Run parameters** | | -| Run parameters | `paramsText` | +| Pipeline-specific run parameters | `paramsText` | | **Advanced settings** | | | Resource labels | `resourceLabelIds` | | Nextflow config file | `configText` | From cf887cf79672915163f198a5f5be52a634a15b29 Mon Sep 17 00:00:00 2001 From: Llewellyn vd Berg <113503285+llewellyn-sl@users.noreply.github.com> Date: Thu, 3 Jul 2025 16:27:16 +0200 Subject: [PATCH 6/7] Define array value syntax, disabled fields --- platform-cloud/docs/launch/launchpad.md | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/platform-cloud/docs/launch/launchpad.md b/platform-cloud/docs/launch/launchpad.md index e0108263a..d38f146ce 100644 --- a/platform-cloud/docs/launch/launchpad.md +++ b/platform-cloud/docs/launch/launchpad.md @@ -160,6 +160,13 @@ The launch form can populate fields with values passed as URL query parameters. Platform validates run parameters passed via the launch URL in the following way: - The validity of parameter names is **not** validated. You must provide valid and supported parameters for launch form fields to be populated without error. See supported parameter names in the following section. - Parameter values are validated and warnings are shown for any invalid supplied values. +- Disabled launch form fields, such as the `pipeline` field when launching a presaved pipeline, cannot be populated by URL. + +Parameters that accept arrays (multiple values) as input must be specified with the parameter name for each individual value. For example: + +``` +?labelIds=&labelIds= +``` Pipeline-specific run parameters can be passed with the `paramsText` query parameter. Pass both the name and value for any parameter defined in your [pipeline schema](../pipeline-schema/overview.md) in JSON format: @@ -185,9 +192,9 @@ Platform will ignore added percent-encoding characters in form fields, so you do ### Supported URL query parameters and corresponding launch form fields -| **Launch form field** | **Query parameter name** | -|------------------------------------------------|---------------------------| -| **General config** | | +| **Launch form field** | **Query parameter name** | +|------------------------------------------------|-----------------------------| +| **General config** | | | Pipeline to launch | `pipeline` | | Revision number | `revision` | | Config profiles | `configProfiles` | @@ -195,9 +202,9 @@ Platform will ignore added percent-encoding characters in form fields, so you do | Labels | `labelIds` | | Compute environment | `computeEnvId` | | Work directory | `workDir` | -| **Run parameters** | | -| Pipeline-specific run parameters | `paramsText` | -| **Advanced settings** | | +| **Run parameters** | | +| Pipeline-specific run parameters | `paramsText` | +| **Advanced settings** | | | Resource labels | `resourceLabelIds` | | Nextflow config file | `configText` | | Seqera Cloud config file | `towerConfig` | From b017a4c3a890029db85f6468c2d0712174d54039 Mon Sep 17 00:00:00 2001 From: Llewellyn vd Berg <113503285+llewellyn-sl@users.noreply.github.com> Date: Fri, 4 Jul 2025 13:41:18 +0200 Subject: [PATCH 7/7] Update platform-cloud/docs/launch/launchpad.md Co-authored-by: Justine Geffen Signed-off-by: Llewellyn vd Berg <113503285+llewellyn-sl@users.noreply.github.com> --- platform-cloud/docs/launch/launchpad.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform-cloud/docs/launch/launchpad.md b/platform-cloud/docs/launch/launchpad.md index d38f146ce..00f5372e9 100644 --- a/platform-cloud/docs/launch/launchpad.md +++ b/platform-cloud/docs/launch/launchpad.md @@ -158,7 +158,7 @@ Pipeline names must be unique per workspace. The launch form can populate fields with values passed as URL query parameters. For example, append `?revision=master` to your launch URL to prefill the **Revision** field with `master`. This feature is useful for Platform administrators to provide custom pipeline launch URLs to users in order to hard-code required run and pipeline parameters for every run. Platform validates run parameters passed via the launch URL in the following way: -- The validity of parameter names is **not** validated. You must provide valid and supported parameters for launch form fields to be populated without error. See supported parameter names in the following section. +- Parameter names are **not** validated. You must provide valid and supported parameters for launch form fields to be populated without error. See supported parameter names in the following section. - Parameter values are validated and warnings are shown for any invalid supplied values. - Disabled launch form fields, such as the `pipeline` field when launching a presaved pipeline, cannot be populated by URL.