From 7b398037f760878b6f6e765f5c162282f0681cbe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20M=C2=AA=20Fern=C3=A1ndez?= Date: Fri, 20 Sep 2024 15:16:39 +0200 Subject: [PATCH 1/2] Janitorial work around JSON Schema documentation generator. As the JSON schemas documentation generator has been embedded in WfExS ReadTheDocs, remove all traces from the main repo, and update references so they are pointing to ReadTheDocs instance. --- .github/workflows/schemas-doc-generator.yml | 61 - README.md | 8 +- dev-requirements.txt | 3 +- .../schemas/cache-metadata_schema.html | 1032 -- .../schemas/cache-metadata_schema.md | 334 - development-docs/schemas/config_schema.html | 2002 ---- development-docs/schemas/config_schema.md | 701 -- .../schemas/export-actions_schema.html | 90 - .../schemas/export-actions_schema.md | 50 - development-docs/schemas/schema_doc.css | 181 - development-docs/schemas/schema_doc.min.js | 1 - .../schemas/security-context_schema.html | 796 -- .../schemas/security-context_schema.md | 210 - .../schemas/stage-definition_schema.html | 9869 ----------------- .../schemas/stage-definition_schema.md | 1969 ---- development-docs/schemas/templates/md/base.md | 17 - .../schemas/templates/md/breadcrumbs.md | 9 - .../schemas/templates/md/content.md | 94 - .../schemas/templates/md/section_array.md | 39 - .../md/section_conditional_subschema.md | 48 - .../templates/md/section_description.md | 4 - .../schemas/templates/md/section_examples.md | 16 - .../schemas/templates/md/section_not.md | 4 - .../schemas/templates/md/section_one_of.md | 4 - .../md/section_properties_details.md | 32 - ...ection_undocumented_required_properties.md | 7 - .../schemas/templates/md/tabbed_section.md | 11 - .../regenerate_schema_docs_html.bash | 48 - .../regenerate_schema_docs_md.bash | 49 - 29 files changed, 6 insertions(+), 17683 deletions(-) delete mode 100644 .github/workflows/schemas-doc-generator.yml delete mode 100644 development-docs/schemas/cache-metadata_schema.html delete mode 100644 development-docs/schemas/cache-metadata_schema.md delete mode 100644 development-docs/schemas/config_schema.html delete mode 100644 development-docs/schemas/config_schema.md delete mode 100644 development-docs/schemas/export-actions_schema.html delete mode 100644 development-docs/schemas/export-actions_schema.md delete mode 100644 development-docs/schemas/schema_doc.css delete mode 100644 development-docs/schemas/schema_doc.min.js delete mode 100644 development-docs/schemas/security-context_schema.html delete mode 100644 development-docs/schemas/security-context_schema.md delete mode 100644 development-docs/schemas/stage-definition_schema.html delete mode 100644 development-docs/schemas/stage-definition_schema.md delete mode 100644 development-docs/schemas/templates/md/base.md delete mode 100644 development-docs/schemas/templates/md/breadcrumbs.md delete mode 100644 development-docs/schemas/templates/md/content.md delete mode 100644 development-docs/schemas/templates/md/section_array.md delete mode 100644 development-docs/schemas/templates/md/section_conditional_subschema.md delete mode 100644 development-docs/schemas/templates/md/section_description.md delete mode 100644 development-docs/schemas/templates/md/section_examples.md delete mode 100644 development-docs/schemas/templates/md/section_not.md delete mode 100644 development-docs/schemas/templates/md/section_one_of.md delete mode 100644 development-docs/schemas/templates/md/section_properties_details.md delete mode 100644 development-docs/schemas/templates/md/section_undocumented_required_properties.md delete mode 100644 development-docs/schemas/templates/md/tabbed_section.md delete mode 100755 development-scripts/regenerate_schema_docs_html.bash delete mode 100755 development-scripts/regenerate_schema_docs_md.bash diff --git a/.github/workflows/schemas-doc-generator.yml b/.github/workflows/schemas-doc-generator.yml deleted file mode 100644 index 30caa84a..00000000 --- a/.github/workflows/schemas-doc-generator.yml +++ /dev/null @@ -1,61 +0,0 @@ -name: schemas-doc-generator - -on: - push: - branches: [main] - paths: - - 'wfexs_backend/schemas/*.json' - -jobs: - json-schema-validation: - runs-on: ubuntu-latest - name: JSON Schema validation through pre-commit - steps: - - uses: actions/checkout@v3 - - uses: pre-commit/action@v3.0.1 - with: - extra_args: --all -c .pre-commit-config.yaml jsonschema_dir_validate - - update_docs: - # Do this only when it is not a pull request validation - if: github.event_name != 'pull_request' - runs-on: ubuntu-latest - name: Update documentation if all worked properly - needs: - - json-schema-validation - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 100 - - name: Install python - uses: actions/setup-python@v4 - with: - python-version: "3.8" - cache: 'pip' - architecture: x64 - cache-dependency-path: 'dev-requirements.txt' - - name: Install documentation generator dependencies (development) - run: | - pip install -r dev-requirements.txt - - name: Generate HTML documentation from internal JSON Schemas - id: doc-generate-html-if-changed - run: | - development-scripts/regenerate_schema_docs_html.bash wfexs_backend/schemas development-docs/schemas - - name: Generate MD documentation from internal JSON Schemas - id: doc-generate-md-if-changed - run: | - development-scripts/regenerate_schema_docs_md.bash wfexs_backend/schemas development-docs/schemas - - name: Create Pull Request - id: cpr - uses: peter-evans/create-pull-request@v5 - if: steps.doc-generate-md-if-changed.outcome == 'success' || steps.doc-generate-html-if-changed.outcome == 'success' - with: - title: Updated schemas documentation (triggered by ${{ github.sha }}) - branch: create-pull-request/patch-schema-docs - delete-branch: true - commit-message: "[create-pull-request] Automatically commit updated contents (generated schemas documentation)" - - name: Check outputs - if: ${{ steps.cpr.outputs.pull-request-number }} - run: | - echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}" - echo "Pull Request URL - ${{ steps.cpr.outputs.pull-request-url }}" diff --git a/README.md b/README.md index b3193f00..5468a5e7 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ and [cwltool](https://github.com/common-workflow-language/cwltool)). * [README_REPLICATOR.md](README_REPLICATOR.md): It briefly describes `WfExS-config-replicator.py` usage. -Additional present and future documentation is hosted at [development-docs](development-docs/index.md) subfolder, until it is migrated to a proper documentation service. +Additional present and future documentation is hosted at [development-docs](development-docs/index.md) subfolder, until it is migrated to [WfExS-backend ReadTheDocs](https://wfexs-backend.readthedocs.io). ## Cite as @@ -108,7 +108,7 @@ Also, a description about the different WfExS commands is available [at the comm The program uses three different types of configuration files: -* Local configuration file: YAML formatted file which describes the local setup of the backend (example at [workflow_examples/local_config.yaml](workflow_examples/local_config.yaml)). JSON Schema describing the format (and used for validation) is available at [wfexs_backend/schemas/config.json](wfexs_backend/schemas/config.json) and there is also automatically generated documentation (see [config_schema.md](development-docs/schemas/config_schema.md)). Relative paths in this configuration file use as reference the directory where the local configuration file is living. +* Local configuration file: YAML formatted file which describes the local setup of the backend (example at [workflow_examples/local_config.yaml](workflow_examples/local_config.yaml)). JSON Schema describing the format (and used for validation) is available at [wfexs_backend/schemas/config.json](wfexs_backend/schemas/config.json) and there is also automatically generated documentation on each release (see [config.json.html](https://wfexs-backend.readthedocs.io/en/latest/schemadocs/config.json.html)). Relative paths in this configuration file use as reference the directory where the local configuration file is living. - `cacheDir`: The path in this key sets up the place where all the contents which can be cached are hold. It contains downloaded RO-Crate, downloaded workflow git repositories, downloaded workflow engines. It is recommended to have it outside `/tmp` directory when @@ -146,9 +146,9 @@ The program uses three different types of configuration files: - `tools.encrypted_fs.idle`: Number of minutes of inactivity before the encrypted FUSE filesystem is automatically unmounted. The default is 5 minutes. -* Workflow configuration file: YAML formatted file which describes the workflow staging before being executed, like where inputs are located and can be fetched, the security contexts to be used on specific inputs to get those controlled access resources, the parameters, the outputs to capture, ... ([Nextflow example](workflow_examples/wetlab2variations_execution_nxf.wfex.stage), [CWL example](workflow_examples/wetlab2variations_execution_cwl.wfex.stage)). JSON Schema describing the format and valid keys (and used for validation), is available at [wfexs_backend/schemas/stage-definition.json](wfexs_backend/schemas/stage-definition.json) and there is also automatically generated documentation (see [stage-definition_schema.md](development-docs/schemas/stage-definition_schema.md)). +* Workflow configuration file: YAML formatted file which describes the workflow staging before being executed, like where inputs are located and can be fetched, the security contexts to be used on specific inputs to get those controlled access resources, the parameters, the outputs to capture, ... ([Nextflow example](workflow_examples/wetlab2variations_execution_nxf.wfex.stage), [CWL example](workflow_examples/wetlab2variations_execution_cwl.wfex.stage)). JSON Schema describing the format and valid keys (and used for validation), is available at [wfexs_backend/schemas/stage-definition.json](wfexs_backend/schemas/stage-definition.json) and there is also automatically generated documentation on each release (see [stage-definition.json.html](https://wfexs-backend.readthedocs.io/en/latest/schemadocs/stage-definition.json.html)). -* Security contexts file: YAML formatted file which holds the `user`/`password` pairs, security tokens or keys needed on different steps, like input fetching. ([Nextflow example](workflow_examples/wetlab2variations_credentials_nxf.wfex.ctxt), [CWL example](workflow_examples/wetlab2variations_credentials_cwl.wfex.ctxt)). JSON Schema describing the format and valid keys (and used for validation), is available at [wfexs_backend/schemas/security-context.json](wfexs_backend/schemas/security-context.json) and there is also automatically generated documentation (see [security-context_schema.md](development-docs/schemas/security-context_schema.md)). +* Security contexts file: YAML formatted file which holds the `user`/`password` pairs, security tokens or keys needed on different steps, like input fetching. ([Nextflow example](workflow_examples/wetlab2variations_credentials_nxf.wfex.ctxt), [CWL example](workflow_examples/wetlab2variations_credentials_cwl.wfex.ctxt)). JSON Schema describing the format and valid keys (and used for validation), is available at [wfexs_backend/schemas/security-context.json](wfexs_backend/schemas/security-context.json) and there is also automatically generated documentation on each release (see [security-context.json.html](https://wfexs-backend.readthedocs.io/en/latest/schemadocs/security-context.json.html)). ## License * © 2020-2024 Barcelona Supercomputing Center (BSC), ES diff --git a/dev-requirements.txt b/dev-requirements.txt index 011443d1..b8bb3f05 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -13,7 +13,8 @@ flake8 < 6.0.0 ; python_version < '3.8' flake8 >= 6.0.0 ; python_version >= '3.8' mccabe >= 0.7.0 mypy >= 1.1.1 -json-schema-for-humans >= 0.45.1 +# This one is now managed by the ReadTheDocs documentation +# json-schema-for-humans >= 0.45.1 pre-commit >= 2.17.0 # This is the last version of black supporting Python 3.7 black == 23.3.0 diff --git a/development-docs/schemas/cache-metadata_schema.html b/development-docs/schemas/cache-metadata_schema.html deleted file mode 100644 index d8b9e495..00000000 --- a/development-docs/schemas/cache-metadata_schema.html +++ /dev/null @@ -1,1032 +0,0 @@ - - - - - - - - - - - - - - - - WfExS-backend cache metadata - -

WfExS-backend cache metadata

- -
-

WfExS-backend cache metadata file (EOSC-Life Demonstrator 7 JSON Schemas)

-

- -

-
- - - Type: object
- -
-

The following properties are required:

-
  • metadata_array
-
- - - - - -
-
-
-

- -

-
- -
-
- -
-

This metadata cache entry resolves to these

-

- -

-
- - - Type: string
-

This metadata cache entry resolves to a single URI

-
- - - -

Must be at least 1 characters long

- - -
- - - Type: array of string
-

This metadata cache entry resolves to multiple URIs

-
- - - - - -

Must contain a minimum of 1 items

Each item of this array must be:

-
-
- - - Type: string
- - - - -

Must be at least 1 characters long

- - -
-
-
- - - - - - -
-
-
-
-
- - - Type: object
- -
-

The following properties are required:

-
  • metadata_array
-
- - - - - -
-
-
-

- -

-
- -
-
- - Type: enum (of string)
-

Kind of cached content. It could be either a file or a directory

-
-

Must be one of:

-
  • "file"
  • "dir"
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
-

The fingerprint of the content, which is the name of the hashing algorithm, the '~' separator and the encoded hash in base64

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
-

Both the relative and absolute paths to the cached file or directory, using the base directory of the cached metadata as reference

-
- - - - - - -
-
-
-

- -

-
- -
-
- - Type: string
- - - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
- - - - - - - -
-
-
-
-
-
-
-
-
- - - - - - -
-
-
-

- -

-
- -
-
- - Type: string
-

When this cache entry was stored

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: array of string Default: []
- - - - - - -

Each item of this array must be:

-
-
- - - Type: string Default: "https://choosealicense.com/no-permission/"
- - - - - - - -
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: array of object
- - - - - - -

Each item of this array must be:

-
-
- - - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- - Type: string
- - - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -
-

- -

-
- - - Type: array of object
- - - - - - -

Each item of this array must be:

-
-
- - - Type: object
- - - - - - - -
-
-
- - - Type: object
- - - - - - - -
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string or null
- - - - - - - -
-
-
-
-
-
-
-
-
-
- - - \ No newline at end of file diff --git a/development-docs/schemas/cache-metadata_schema.md b/development-docs/schemas/cache-metadata_schema.md deleted file mode 100644 index c0f6c319..00000000 --- a/development-docs/schemas/cache-metadata_schema.md +++ /dev/null @@ -1,334 +0,0 @@ -# WfExS-backend cache metadata - -- [1. Property `WfExS-backend cache metadata > oneOf > item 0`](#oneOf_i0) - - [1.1. The following properties are required](#autogenerated_heading_2) - - [1.2. Property `WfExS-backend cache metadata > oneOf > item 0 > resolves_to`](#oneOf_i0_resolves_to) - - [1.2.1. Property `WfExS-backend cache metadata > oneOf > item 0 > resolves_to > oneOf > item 0`](#oneOf_i0_resolves_to_oneOf_i0) - - [1.2.2. Property `WfExS-backend cache metadata > oneOf > item 0 > resolves_to > oneOf > item 1`](#oneOf_i0_resolves_to_oneOf_i1) - - [1.2.2.1. WfExS-backend cache metadata > oneOf > item 0 > resolves_to > oneOf > item 1 > item 1 items](#autogenerated_heading_3) -- [2. Property `WfExS-backend cache metadata > oneOf > item 1`](#oneOf_i1) - - [2.1. The following properties are required](#autogenerated_heading_4) - - [2.2. Property `WfExS-backend cache metadata > oneOf > item 1 > kind`](#oneOf_i1_kind) - - [2.3. Property `WfExS-backend cache metadata > oneOf > item 1 > fingerprint`](#oneOf_i1_fingerprint) - - [2.4. Property `WfExS-backend cache metadata > oneOf > item 1 > path`](#oneOf_i1_path) - - [2.4.1. Property `WfExS-backend cache metadata > oneOf > item 1 > path > relative`](#oneOf_i1_path_relative) - - [2.4.2. Property `WfExS-backend cache metadata > oneOf > item 1 > path > absolute`](#oneOf_i1_path_absolute) -- [3. [Optional] Property `WfExS-backend cache metadata > stamp`](#stamp) -- [4. [Optional] Property `WfExS-backend cache metadata > licences`](#licences) - - [4.1. WfExS-backend cache metadata > licences > licences items](#autogenerated_heading_5) -- [5. [Optional] Property `WfExS-backend cache metadata > metadata_array`](#metadata_array) - - [5.1. WfExS-backend cache metadata > metadata_array > metadata_array items](#autogenerated_heading_6) - - [5.1.1. Property `WfExS-backend cache metadata > metadata_array > metadata_array items > uri`](#metadata_array_items_uri) - - [5.1.2. Property `WfExS-backend cache metadata > metadata_array > metadata_array items > metadata`](#metadata_array_items_metadata) - - [5.1.2.1. Property `WfExS-backend cache metadata > metadata_array > metadata_array items > metadata > oneOf > item 0`](#metadata_array_items_metadata_oneOf_i0) - - [5.1.2.1.1. WfExS-backend cache metadata > metadata_array > metadata_array items > metadata > oneOf > item 0 > item 0 items](#autogenerated_heading_7) - - [5.1.2.2. Property `WfExS-backend cache metadata > metadata_array > metadata_array items > metadata > oneOf > item 1`](#metadata_array_items_metadata_oneOf_i1) - - [5.1.3. Property `WfExS-backend cache metadata > metadata_array > metadata_array items > preferredName`](#metadata_array_items_preferredName) - -**Title:** WfExS-backend cache metadata - -| Type | `combining` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -**Description:** WfExS-backend cache metadata file (EOSC-Life Demonstrator 7 JSON Schemas) - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------ | ------- | --------------- | ---------- | ---------- | -------------------------------- | -| - [stamp](#stamp ) | No | string | No | - | When this cache entry was stored | -| - [licences](#licences ) | No | array of string | No | - | - | -| - [metadata_array](#metadata_array ) | No | array of object | No | - | - | -| | | | | | | - -| One of(Option) | -| ------------------- | -| [item 0](#oneOf_i0) | -| [item 1](#oneOf_i1) | -| | - -## 1. Property `WfExS-backend cache metadata > oneOf > item 0` - -| Type | `object` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| --------------------------------------- | ------- | ----------- | ---------- | ---------- | ------------------------------------------- | -| + [resolves_to](#oneOf_i0_resolves_to ) | No | Combination | No | - | This metadata cache entry resolves to these | -| | | | | | | - -### 1.1. The following properties are required -* metadata_array - -### 1.2. Property `WfExS-backend cache metadata > oneOf > item 0 > resolves_to` - -| Type | `combining` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -**Description:** This metadata cache entry resolves to these - -| One of(Option) | -| ---------------------------------------- | -| [item 0](#oneOf_i0_resolves_to_oneOf_i0) | -| [item 1](#oneOf_i0_resolves_to_oneOf_i1) | -| | - -#### 1.2.1. Property `WfExS-backend cache metadata > oneOf > item 0 > resolves_to > oneOf > item 0` - -| Type | `string` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -**Description:** This metadata cache entry resolves to a single URI - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | -| | | - -#### 1.2.2. Property `WfExS-backend cache metadata > oneOf > item 0 > resolves_to > oneOf > item 1` - -| Type | `array of string` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -**Description:** This metadata cache entry resolves to multiple URIs - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | 1 | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | -| | | - -| Each item of this array must be | Description | -| ---------------------------------------------------- | ----------- | -| [item 1 items](#oneOf_i0_resolves_to_oneOf_i1_items) | - | -| | | - -##### 1.2.2.1. WfExS-backend cache metadata > oneOf > item 0 > resolves_to > oneOf > item 1 > item 1 items - -| Type | `string` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | -| | | - -## 2. Property `WfExS-backend cache metadata > oneOf > item 1` - -| Type | `object` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| --------------------------------------- | ------- | ---------------- | ---------- | ---------- | ------------------------------------------------------------------------------------ | -| + [kind](#oneOf_i1_kind ) | No | enum (of string) | No | - | Kind of cached content. It could be either a file or a directory | -| + [fingerprint](#oneOf_i1_fingerprint ) | No | string | No | - | The fingerprint of the content, which is the name of the hashing algorithm, the ... | -| + [path](#oneOf_i1_path ) | No | object | No | - | Both the relative and absolute paths to the cached file or directory, using the ... | -| | | | | | | - -### 2.1. The following properties are required -* metadata_array - -### 2.2. Property `WfExS-backend cache metadata > oneOf > item 1 > kind` - -| Type | `enum (of string)` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -**Description:** Kind of cached content. It could be either a file or a directory - -Must be one of: -* "file" -* "dir" - -### 2.3. Property `WfExS-backend cache metadata > oneOf > item 1 > fingerprint` - -| Type | `string` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -**Description:** The fingerprint of the content, which is the name of the hashing algorithm, the '~' separator and the encoded hash in base64 - -### 2.4. Property `WfExS-backend cache metadata > oneOf > item 1 > path` - -| Type | `object` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -**Description:** Both the relative and absolute paths to the cached file or directory, using the base directory of the cached metadata as reference - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| -------------------------------------- | ------- | ------ | ---------- | ---------- | ----------------- | -| + [relative](#oneOf_i1_path_relative ) | No | string | No | - | - | -| + [absolute](#oneOf_i1_path_absolute ) | No | string | No | - | - | -| | | | | | | - -#### 2.4.1. Property `WfExS-backend cache metadata > oneOf > item 1 > path > relative` - -| Type | `string` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -#### 2.4.2. Property `WfExS-backend cache metadata > oneOf > item 1 > path > absolute` - -| Type | `string` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -## 3. [Optional] Property `WfExS-backend cache metadata > stamp` - -| Type | `string` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -**Description:** When this cache entry was stored - -## 4. [Optional] Property `WfExS-backend cache metadata > licences` - -| Type | `array of string` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| **Default** | `[]` | -| | | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | N/A | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | -| | | - -| Each item of this array must be | Description | -| --------------------------------- | ----------- | -| [licences items](#licences_items) | - | -| | | - -### 4.1. WfExS-backend cache metadata > licences > licences items - -| Type | `string` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| **Default** | `"https://choosealicense.com/no-permission/"` | -| | | - -## 5. [Optional] Property `WfExS-backend cache metadata > metadata_array` - -| Type | `array of object` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | N/A | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | -| | | - -| Each item of this array must be | Description | -| --------------------------------------------- | ----------- | -| [metadata_array items](#metadata_array_items) | - | -| | | - -### 5.1. WfExS-backend cache metadata > metadata_array > metadata_array items - -| Type | `object` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------------------------- | ------- | -------------- | ---------- | ---------- | ----------------- | -| + [uri](#metadata_array_items_uri ) | No | string | No | - | - | -| + [metadata](#metadata_array_items_metadata ) | No | Combination | No | - | - | -| - [preferredName](#metadata_array_items_preferredName ) | No | string or null | No | - | - | -| | | | | | | - -#### 5.1.1. Property `WfExS-backend cache metadata > metadata_array > metadata_array items > uri` - -| Type | `string` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -#### 5.1.2. Property `WfExS-backend cache metadata > metadata_array > metadata_array items > metadata` - -| Type | `combining` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -| One of(Option) | -| ------------------------------------------------- | -| [item 0](#metadata_array_items_metadata_oneOf_i0) | -| [item 1](#metadata_array_items_metadata_oneOf_i1) | -| | - -##### 5.1.2.1. Property `WfExS-backend cache metadata > metadata_array > metadata_array items > metadata > oneOf > item 0` - -| Type | `array of object` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | N/A | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | -| | | - -| Each item of this array must be | Description | -| ------------------------------------------------------------- | ----------- | -| [item 0 items](#metadata_array_items_metadata_oneOf_i0_items) | - | -| | | - -##### 5.1.2.1.1. WfExS-backend cache metadata > metadata_array > metadata_array items > metadata > oneOf > item 0 > item 0 items - -| Type | `object` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -##### 5.1.2.2. Property `WfExS-backend cache metadata > metadata_array > metadata_array items > metadata > oneOf > item 1` - -| Type | `object` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - -#### 5.1.3. Property `WfExS-backend cache metadata > metadata_array > metadata_array items > preferredName` - -| Type | `string or null` | -| ------------------------- | ------------------------------------------------------------------------- | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| | | - ----------------------------------------------------------------------------------------------------------------------------- -Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2022-04-06 at 03:20:32 +0200 \ No newline at end of file diff --git a/development-docs/schemas/config_schema.html b/development-docs/schemas/config_schema.html deleted file mode 100644 index 5eaee16d..00000000 --- a/development-docs/schemas/config_schema.html +++ /dev/null @@ -1,2002 +0,0 @@ - - - - - - - - - - - - - - - - WfExS-backend config - - - -

WfExS-backend config

Type: object
-

WfExS-backend configuration file (EOSC-Life Demonstrator 7 JSON Schemas)

-
No Additional Properties - - - - - - -
-
-
-

- -

-
- -
-
- -

Caching directory

Type: string
-

Directory where all the cache-able content will be hold.
-This directory can be removed, as its contents should be available outside.
-When it is not set, a temporary directory is created for the session, being destroyed when the program finishes.

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Installation Crypt4GH key setup

Type: object
-

WfExS-backend needs an encryption key for several tasks, like encrypting and decrypting random keys of encrypted working directories. When this block does not exist, WfExS-backend.py creates the installation's keys, and updates the configuration file

-
No Additional Properties - - - - - - -
-
-
-

- -

-
- -
-
- -

Secret key installation file

Type: string
-

The path to the Crypt4GH secret key file used by this installation. If the path is relative, the directory where the configuration file resides is used for the resolution

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Passphrase used to work with the secret key

Type: string
-

Passphrase which has to be used to work with the secret key

-
- - - -

Must be at least 0 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Public key installation file

Type: string
-

The path to the Crypt4GH public key file used by this installation. If the path is relative, the directory where the configuration file resides is used for the resolution

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- -

External tools configuration block

Type: object
-

External tools configuration block

-
No Additional Properties - - - - - - -
-
-
-

- -

-
- -
-
- -

Default container technology type in this installation

Type: enum (of string) Default: "singularity"
-

Type of container technology to be used by default when any workflow is launched using this installation. Supported types are:
-- Singularity (default).
-- Docker.
-- Podman
-- No containerisation technology (discouraged)
-Encrypted working directories are unsupported when Docker or Podman are used due technological limitations

-
-

Must be one of:

-
  • "singularity"
  • "docker"
  • "podman"
  • "none"
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Workflow engine invocation mode

Type: enum (of string) Default: "local"
-

Most of workflow engines are usually available both as installable executables and as containers, but when they are used inside a container usually do not support running containerised jobs, unless a very careful setup is done. Currently, WfExS-backend only partially supports Nextflow in its docker-in-docker mode.

-
-

Must be one of:

-
  • "local"
  • "docker"
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Working directory FUSE encrypted FS configuration block

Type: object
- No Additional Properties - - - - - - -
-
-
-

- -

-
- -
-
- -

Type of encrypted FS

Type: enum (of string) Default: "gocryptfs"
-

When an encrypted working directory is needed, the type of encrypted FS to be used is set up through this key. Currently, both encfs (default) and gocryptfs (recommended) are supported

-
-

Must be one of:

-
  • "encfs"
  • "gocryptfs"
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Path to encryption mount program

Type: string
-

When this key is set, it overrides the default command to be used when an encrypted directory has to be created or mounted

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Path to unmount command

Type: string Default: "fusermount"
-

Path to unmounting command to be used, being 'fusermount' by default

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Idle minutes before autoumount

Type: integer Default: 5
-

Number of minutes before an idle, mounted encrypted directory will automatically unmount

-
- - - - - - -
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- -

Custom command paths

Type: array of object
-

Different modules depend on locatable programs, like git, docker, java or similar. These declarations are used to provide WfExS either custom paths or custom names. These declarations take precedence over gitCommand, javaCommand and similar ones

-
- - - - - -

Must contain a minimum of 1 items

All items must be unique

No Additional Items

Each item of this array must be:

-
-
- - - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- -

The command key

Type: string
-

Internal symbolic name used to represent this command

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

The command path

Type: string
-

Either the absolute path or PATH findable program name

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- -

Git client path

Type: string Default: "git"
-

Git is used to materialize workflows being hosted at git repositories, like GitHub. This key sets up custom paths to git command

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Java path

Type: string Default: "java"
-

Java is needed to run Nextflow and future workflow engines. This key sets up custom paths to java installations

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Singularity client path

Type: string Default: "singularity"
-

Singularity is used when containerType is 'singularity'. This key sets up custom paths to singularity command

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Docker client path

Type: string Default: "docker"
-

Docker is used when containerType is 'docker'. This key sets up custom paths to docker command

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Podman client path

Type: string Default: "podman"
-

Podman is used when containerType is 'podman'. This key sets up custom paths to podman command

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

'dot' client path

Type: string Default: "dot"
-

'dot' is used when the workflow engine generated diagram is in DOT format, to translate it to either PNG or SVG when the diagram is going to be embedded in an RO-Crate

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Static bash command (used in singularity based Nextflow engine executions)

Type: string Default: "bash.static"
-

There is a bug in some bash versions which make them unsuitable to run the trace machinery from Nextflow, as the trace machinery enters in a live lock. As the images containing these faulty bash versions cannot be changed, a 'monkey patch' solution where an external, static bash version is injected on workflow execution is used. The injected static bash is found through this key, which is searched on PATH variable when it is not a full path.

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Static ps command (used in Nextflow engine executions to assure metrics gathering works even in containers without /bin/ps command)

Type: string Default: "ps.static"
-

Nextflow uses a bash wrapper to gather process execution statistics. One of the binaries used by the wrapper is ps. Some containers (for instance, r-base:latest) do not contain such binary. As the images which do not contain ps cannot be changed, a 'monkey patch' solution where an external, static ps version is injected on workflow execution is used. The injected static ps is found through this key, which is searched on PATH variable when it is not a full path.

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- -

Image for docker-in-docker mode

Type: string Default: "nextflow/nextflow"
-

(unfinished) When engineMode is docker, the name of the image to be fetched and used. The used tag will depend on the workflow's metadata, being by default the version

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Nextflow's version

Type: string Default: "19.04.1"
-

Version of Nextflow engine to be used when workflow's metadata does not provide hints about minimal version needed.

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Retries in docker mode

Type: integer Default: 5
-

Retries when engineMode is docker.
-Retries system was introduced when using docker-in-docker pattern because an insidious
-bug happens sometimes. See https://forums.docker.com/t/any-known-problems-with-symlinks-on-bind-mounts/32138

-
- - - -

Value must be greater or equal to 0

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

(deprecated) Max number of CPUs


-

Number of CPUs to be used by Nextflow. When this key has an explicit value of null, it depends on Nextflow criteria, which tries creating as many processes as available CPUs, spawning jobs in parallel. Not declaring it, or declaring and explicit value, imposes a limitation in the number of concurrent processes

-

- -

-
- - - Type: integer Default: 4
- - - - -

Value must be greater or equal to 1

- - -
- - - Type: null
- - - - - - - -
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Max number of CPUs


-

Number of CPUs to be used by Nextflow. When this key has an explicit value of null, it depends on Nextflow criteria, which tries creating as many processes as available CPUs, spawning jobs in parallel. Not declaring it, or declaring and explicit value, imposes a limitation in the number of concurrent processes

-

- -

-
- - - Type: integer Default: 4
- - - - -

Value must be greater or equal to 1

- - -
- - - Type: null
- - - - - - - -
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Max task duration


-

With this parameter it is possible to override the max task time declared for processes. This is needed for workflows which are not so customizable

-

- -

-
- - - Type: string
-Must match regular expression: ^[0-9]+.*$ - - - - - - -
- - - Type: null
- - - - - - - -
- - - - - - -
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- -

cwltool's version

Type: string Default: "3.1.20210628163208"
-

Version of cwltool engine to be used. WfExS is not currently guessing the minimal needed version, so it is either the value set up in this key or the default one

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-

- -

-

All properties whose name matches the following regular expression must respect the following conditions

- Property name regular expression: ^.+Command$ -
- -

Path to a command

Type: string
-

This is a wildcard declaration to allow setting up custom paths to commands needed by several parts of the code

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- -

Working directory

Type: string
-

Directory where all the working directories are going to be created.
-When it is not set, a temporary directory is created, which will be removed when the program finishes (which avoids inspecting the working directory after the program has finished).

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Fetchers parameters setup

Type: object
-

Some fetchers could need customizations at the configuration level, like limiting throughput or setting up some proxy

-
- - - - - - -
-
-
-

- -

-
- -
-

- -

-

All properties whose name matches the following regular expression must respect the following conditions

- Property name regular expression: ^[a-z][a-z0-9+.-]*$ -
- -

Scheme fetcher setup

Type: object
-

Some scheme fetchers could need customizations which depend on local WfExS installation environment. This is the place where to pass that

-
- - - - - - -
-
-
-
-
-
-
-
- - - \ No newline at end of file diff --git a/development-docs/schemas/config_schema.md b/development-docs/schemas/config_schema.md deleted file mode 100644 index 05d02a63..00000000 --- a/development-docs/schemas/config_schema.md +++ /dev/null @@ -1,701 +0,0 @@ -# WfExS-backend config - -- [1. Property `WfExS-backend config > cacheDir`](#cacheDir) -- [2. Property `WfExS-backend config > crypt4gh`](#crypt4gh) - - [2.1. Property `WfExS-backend config > crypt4gh > key`](#crypt4gh_key) - - [2.2. Property `WfExS-backend config > crypt4gh > passphrase`](#crypt4gh_passphrase) - - [2.3. Property `WfExS-backend config > crypt4gh > pub`](#crypt4gh_pub) -- [3. Property `WfExS-backend config > tools`](#tools) - - [3.1. Property `WfExS-backend config > tools > containerType`](#tools_containerType) - - [3.2. Property `WfExS-backend config > tools > engineMode`](#tools_engineMode) - - [3.3. Property `WfExS-backend config > tools > encrypted_fs`](#tools_encrypted_fs) - - [3.3.1. Property `WfExS-backend config > tools > encrypted_fs > type`](#tools_encrypted_fs_type) - - [3.3.2. Property `WfExS-backend config > tools > encrypted_fs > command`](#tools_encrypted_fs_command) - - [3.3.3. Property `WfExS-backend config > tools > encrypted_fs > fusermount_command`](#tools_encrypted_fs_fusermount_command) - - [3.3.4. Property `WfExS-backend config > tools > encrypted_fs > idle`](#tools_encrypted_fs_idle) - - [3.4. Property `WfExS-backend config > tools > commands`](#tools_commands) - - [3.4.1. WfExS-backend config > tools > commands > commands items](#autogenerated_heading_2) - - [3.4.1.1. Property `WfExS-backend config > tools > commands > commands items > key`](#tools_commands_items_key) - - [3.4.1.2. Property `WfExS-backend config > tools > commands > commands items > path`](#tools_commands_items_path) - - [3.5. Property `WfExS-backend config > tools > gitCommand`](#tools_gitCommand) - - [3.6. Property `WfExS-backend config > tools > javaCommand`](#tools_javaCommand) - - [3.7. Property `WfExS-backend config > tools > singularityCommand`](#tools_singularityCommand) - - [3.8. Property `WfExS-backend config > tools > dockerCommand`](#tools_dockerCommand) - - [3.9. Property `WfExS-backend config > tools > podmanCommand`](#tools_podmanCommand) - - [3.10. Property `WfExS-backend config > tools > dotCommand`](#tools_dotCommand) - - [3.11. Property `WfExS-backend config > tools > staticBashCommand`](#tools_staticBashCommand) - - [3.12. Property `WfExS-backend config > tools > staticPsCommand`](#tools_staticPsCommand) - - [3.13. Property `WfExS-backend config > tools > nextflow`](#tools_nextflow) - - [3.13.1. Property `WfExS-backend config > tools > nextflow > dockerImage`](#tools_nextflow_dockerImage) - - [3.13.2. Property `WfExS-backend config > tools > nextflow > version`](#tools_nextflow_version) - - [3.13.3. Property `WfExS-backend config > tools > nextflow > maxRetries`](#tools_nextflow_maxRetries) - - [3.13.4. Property `WfExS-backend config > tools > nextflow > maxProcesses`](#tools_nextflow_maxProcesses) - - [3.13.4.1. Property `WfExS-backend config > tools > nextflow > maxProcesses > oneOf > item 0`](#tools_nextflow_maxProcesses_oneOf_i0) - - [3.13.4.2. Property `WfExS-backend config > tools > nextflow > maxProcesses > oneOf > item 1`](#tools_nextflow_maxProcesses_oneOf_i1) - - [3.13.5. Property `WfExS-backend config > tools > nextflow > maxCPUs`](#tools_nextflow_maxCPUs) - - [3.13.5.1. Property `WfExS-backend config > tools > nextflow > maxCPUs > oneOf > item 0`](#tools_nextflow_maxCPUs_oneOf_i0) - - [3.13.5.2. Property `WfExS-backend config > tools > nextflow > maxCPUs > oneOf > item 1`](#tools_nextflow_maxCPUs_oneOf_i1) - - [3.13.6. Property `WfExS-backend config > tools > nextflow > maxTaskDuration`](#tools_nextflow_maxTaskDuration) - - [3.13.6.1. Property `WfExS-backend config > tools > nextflow > maxTaskDuration > oneOf > item 0`](#tools_nextflow_maxTaskDuration_oneOf_i0) - - [3.13.6.2. Property `WfExS-backend config > tools > nextflow > maxTaskDuration > oneOf > item 1`](#tools_nextflow_maxTaskDuration_oneOf_i1) - - [3.14. Property `WfExS-backend config > tools > cwl`](#tools_cwl) - - [3.14.1. Property `WfExS-backend config > tools > cwl > version`](#tools_cwl_version) - - [3.15. Pattern Property `WfExS-backend config > tools > Path to a command`](#tools_pattern1) -- [4. Property `WfExS-backend config > workDir`](#workDir) -- [5. Property `WfExS-backend config > fetchers-setup`](#fetchers-setup) - - [5.1. Pattern Property `WfExS-backend config > fetchers-setup > Scheme fetcher setup`](#fetchers-setup_pattern1) - -**Title:** WfExS-backend config - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | - -**Description:** WfExS-backend configuration file (EOSC-Life Demonstrator 7 JSON Schemas) - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------ | ------- | ------ | ---------- | ---------- | ---------------------------------- | -| - [cacheDir](#cacheDir ) | No | string | No | - | Caching directory | -| - [crypt4gh](#crypt4gh ) | No | object | No | - | Installation Crypt4GH key setup | -| - [tools](#tools ) | No | object | No | - | External tools configuration block | -| - [workDir](#workDir ) | No | string | No | - | Working directory | -| - [fetchers-setup](#fetchers-setup ) | No | object | No | - | Fetchers parameters setup | - -## 1. Property `WfExS-backend config > cacheDir` - -**Title:** Caching directory - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -**Description:** Directory where all the cache-able content will be hold. -This directory can be removed, as its contents should be available outside. -When it is not set, a temporary directory is created for the session, being destroyed when the program finishes. - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -## 2. Property `WfExS-backend config > crypt4gh` - -**Title:** Installation Crypt4GH key setup - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | - -**Description:** WfExS-backend needs an encryption key for several tasks, like encrypting and decrypting random keys of encrypted working directories. When this block does not exist, WfExS-backend.py creates the installation's keys, and updates the configuration file - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------- | ------- | ------ | ---------- | ---------- | ------------------------------------------- | -| + [key](#crypt4gh_key ) | No | string | No | - | Secret key installation file | -| + [passphrase](#crypt4gh_passphrase ) | No | string | No | - | Passphrase used to work with the secret key | -| + [pub](#crypt4gh_pub ) | No | string | No | - | Public key installation file | - -### 2.1. Property `WfExS-backend config > crypt4gh > key` - -**Title:** Secret key installation file - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -**Description:** The path to the Crypt4GH secret key file used by this installation. If the path is relative, the directory where the configuration file resides is used for the resolution - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -### 2.2. Property `WfExS-backend config > crypt4gh > passphrase` - -**Title:** Passphrase used to work with the secret key - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -**Description:** Passphrase which has to be used to work with the secret key - -| Restrictions | | -| -------------- | - | -| **Min length** | 0 | - -### 2.3. Property `WfExS-backend config > crypt4gh > pub` - -**Title:** Public key installation file - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -**Description:** The path to the Crypt4GH public key file used by this installation. If the path is relative, the directory where the configuration file resides is used for the resolution - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -## 3. Property `WfExS-backend config > tools` - -**Title:** External tools configuration block - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | - -**Description:** External tools configuration block - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| -------------------------------------------------- | ------- | ---------------- | ---------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------- | -| - [containerType](#tools_containerType ) | No | enum (of string) | No | - | Default container technology type in this installation | -| - [engineMode](#tools_engineMode ) | No | enum (of string) | No | - | Workflow engine invocation mode | -| - [encrypted_fs](#tools_encrypted_fs ) | No | object | No | - | Working directory FUSE encrypted FS configuration block | -| - [commands](#tools_commands ) | No | array of object | No | - | Custom command paths | -| - [gitCommand](#tools_gitCommand ) | No | string | No | - | Git client path | -| - [javaCommand](#tools_javaCommand ) | No | string | No | - | Java path | -| - [singularityCommand](#tools_singularityCommand ) | No | string | No | - | Singularity client path | -| - [dockerCommand](#tools_dockerCommand ) | No | string | No | - | Docker client path | -| - [podmanCommand](#tools_podmanCommand ) | No | string | No | - | Podman client path | -| - [dotCommand](#tools_dotCommand ) | No | string | No | - | 'dot' client path | -| - [staticBashCommand](#tools_staticBashCommand ) | No | string | No | - | Static bash command (used in singularity based Nextflow engine executions) | -| - [staticPsCommand](#tools_staticPsCommand ) | No | string | No | - | Static ps command (used in Nextflow engine executions to assure metrics gathering works even in containers without /bin/ps command) | -| - [nextflow](#tools_nextflow ) | No | object | No | - | - | -| - [cwl](#tools_cwl ) | No | object | No | - | - | -| - [^.+Command$](#tools_pattern1 ) | Yes | string | No | - | Path to a command | - -### 3.1. Property `WfExS-backend config > tools > containerType` - -**Title:** Default container technology type in this installation - -| | | -| ------------ | ------------------ | -| **Type** | `enum (of string)` | -| **Required** | No | -| **Default** | `"singularity"` | - -**Description:** Type of container technology to be used by default when any workflow is launched using this installation. Supported types are: -- Singularity (default). -- Docker. -- Podman -- No containerisation technology (discouraged) -Encrypted working directories are unsupported when Docker or Podman are used due technological limitations - -Must be one of: -* "singularity" -* "docker" -* "podman" -* "none" - -### 3.2. Property `WfExS-backend config > tools > engineMode` - -**Title:** Workflow engine invocation mode - -| | | -| ------------ | ------------------ | -| **Type** | `enum (of string)` | -| **Required** | No | -| **Default** | `"local"` | - -**Description:** Most of workflow engines are usually available both as installable executables and as containers, but when they are used inside a container usually do not support running containerised jobs, unless a very careful setup is done. Currently, WfExS-backend only partially supports Nextflow in its docker-in-docker mode. - -Must be one of: -* "local" -* "docker" - -### 3.3. Property `WfExS-backend config > tools > encrypted_fs` - -**Title:** Working directory FUSE encrypted FS configuration block - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| --------------------------------------------------------------- | ------- | ---------------- | ---------- | ---------- | -------------------------------- | -| - [type](#tools_encrypted_fs_type ) | No | enum (of string) | No | - | Type of encrypted FS | -| - [command](#tools_encrypted_fs_command ) | No | string | No | - | Path to encryption mount program | -| - [fusermount_command](#tools_encrypted_fs_fusermount_command ) | No | string | No | - | Path to unmount command | -| - [idle](#tools_encrypted_fs_idle ) | No | integer | No | - | Idle minutes before autoumount | - -#### 3.3.1. Property `WfExS-backend config > tools > encrypted_fs > type` - -**Title:** Type of encrypted FS - -| | | -| ------------ | ------------------ | -| **Type** | `enum (of string)` | -| **Required** | No | -| **Default** | `"gocryptfs"` | - -**Description:** When an encrypted working directory is needed, the type of encrypted FS to be used is set up through this key. Currently, both encfs (default) and gocryptfs (recommended) are supported - -Must be one of: -* "encfs" -* "gocryptfs" - -#### 3.3.2. Property `WfExS-backend config > tools > encrypted_fs > command` - -**Title:** Path to encryption mount program - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -**Description:** When this key is set, it overrides the default command to be used when an encrypted directory has to be created or mounted - -#### 3.3.3. Property `WfExS-backend config > tools > encrypted_fs > fusermount_command` - -**Title:** Path to unmount command - -| | | -| ------------ | -------------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"fusermount"` | - -**Description:** Path to unmounting command to be used, being 'fusermount' by default - -#### 3.3.4. Property `WfExS-backend config > tools > encrypted_fs > idle` - -**Title:** Idle minutes before autoumount - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | -| **Default** | `5` | - -**Description:** Number of minutes before an idle, mounted encrypted directory will automatically unmount - -### 3.4. Property `WfExS-backend config > tools > commands` - -**Title:** Custom command paths - -| | | -| ------------ | ----------------- | -| **Type** | `array of object` | -| **Required** | No | - -**Description:** Different modules depend on locatable programs, like git, docker, java or similar. These declarations are used to provide WfExS either custom paths or custom names. These declarations take precedence over `gitCommand`, `javaCommand` and similar ones - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | 1 | -| **Max items** | N/A | -| **Items unicity** | True | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| --------------------------------------- | ----------- | -| [commands items](#tools_commands_items) | - | - -#### 3.4.1. WfExS-backend config > tools > commands > commands items - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------- | ------- | ------ | ---------- | ---------- | ----------------- | -| + [key](#tools_commands_items_key ) | No | string | No | - | The command key | -| + [path](#tools_commands_items_path ) | No | string | No | - | The command path | - -##### 3.4.1.1. Property `WfExS-backend config > tools > commands > commands items > key` - -**Title:** The command key - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -**Description:** Internal symbolic name used to represent this command - -##### 3.4.1.2. Property `WfExS-backend config > tools > commands > commands items > path` - -**Title:** The command path - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -**Description:** Either the absolute path or PATH findable program name - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -### 3.5. Property `WfExS-backend config > tools > gitCommand` - -**Title:** Git client path - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"git"` | - -**Description:** Git is used to materialize workflows being hosted at git repositories, like GitHub. This key sets up custom paths to git command - -### 3.6. Property `WfExS-backend config > tools > javaCommand` - -**Title:** Java path - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"java"` | - -**Description:** Java is needed to run Nextflow and future workflow engines. This key sets up custom paths to java installations - -### 3.7. Property `WfExS-backend config > tools > singularityCommand` - -**Title:** Singularity client path - -| | | -| ------------ | --------------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"singularity"` | - -**Description:** Singularity is used when containerType is 'singularity'. This key sets up custom paths to singularity command - -### 3.8. Property `WfExS-backend config > tools > dockerCommand` - -**Title:** Docker client path - -| | | -| ------------ | ---------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"docker"` | - -**Description:** Docker is used when containerType is 'docker'. This key sets up custom paths to docker command - -### 3.9. Property `WfExS-backend config > tools > podmanCommand` - -**Title:** Podman client path - -| | | -| ------------ | ---------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"podman"` | - -**Description:** Podman is used when containerType is 'podman'. This key sets up custom paths to podman command - -### 3.10. Property `WfExS-backend config > tools > dotCommand` - -**Title:** 'dot' client path - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"dot"` | - -**Description:** 'dot' is used when the workflow engine generated diagram is in DOT format, to translate it to either PNG or SVG when the diagram is going to be embedded in an RO-Crate - -### 3.11. Property `WfExS-backend config > tools > staticBashCommand` - -**Title:** Static bash command (used in singularity based Nextflow engine executions) - -| | | -| ------------ | --------------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"bash.static"` | - -**Description:** There is a bug in some bash versions which make them unsuitable to run the trace machinery from Nextflow, as the trace machinery enters in a live lock. As the images containing these faulty bash versions cannot be changed, a 'monkey patch' solution where an external, static bash version is injected on workflow execution is used. The injected static bash is found through this key, which is searched on PATH variable when it is not a full path. - -### 3.12. Property `WfExS-backend config > tools > staticPsCommand` - -**Title:** Static ps command (used in Nextflow engine executions to assure metrics gathering works even in containers without /bin/ps command) - -| | | -| ------------ | ------------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"ps.static"` | - -**Description:** Nextflow uses a bash wrapper to gather process execution statistics. One of the binaries used by the wrapper is `ps`. Some containers (for instance, r-base:latest) do not contain such binary. As the images which do not contain `ps` cannot be changed, a 'monkey patch' solution where an external, static ps version is injected on workflow execution is used. The injected static ps is found through this key, which is searched on PATH variable when it is not a full path. - -### 3.13. Property `WfExS-backend config > tools > nextflow` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ----------------------------------------------------- | ------- | ----------- | ---------- | ---------- | ------------------------------- | -| - [dockerImage](#tools_nextflow_dockerImage ) | No | string | No | - | Image for docker-in-docker mode | -| - [version](#tools_nextflow_version ) | No | string | No | - | Nextflow's version | -| - [maxRetries](#tools_nextflow_maxRetries ) | No | integer | No | - | Retries in docker mode | -| - [maxProcesses](#tools_nextflow_maxProcesses ) | No | Combination | No | - | (deprecated) Max number of CPUs | -| - [maxCPUs](#tools_nextflow_maxCPUs ) | No | Combination | No | - | Max number of CPUs | -| - [maxTaskDuration](#tools_nextflow_maxTaskDuration ) | No | Combination | No | - | Max task duration | - -#### 3.13.1. Property `WfExS-backend config > tools > nextflow > dockerImage` - -**Title:** Image for docker-in-docker mode - -| | | -| ------------ | --------------------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"nextflow/nextflow"` | - -**Description:** (unfinished) When `engineMode` is `docker`, the name of the image to be fetched and used. The used tag will depend on the workflow's metadata, being by default the `version` - -#### 3.13.2. Property `WfExS-backend config > tools > nextflow > version` - -**Title:** Nextflow's version - -| | | -| ------------ | ----------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"19.04.1"` | - -**Description:** Version of Nextflow engine to be used when workflow's metadata does not provide hints about minimal version needed. - -#### 3.13.3. Property `WfExS-backend config > tools > nextflow > maxRetries` - -**Title:** Retries in docker mode - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | -| **Default** | `5` | - -**Description:** Retries when `engineMode` is `docker`. -Retries system was introduced when using docker-in-docker pattern because an insidious -bug happens sometimes. See https://forums.docker.com/t/any-known-problems-with-symlinks-on-bind-mounts/32138 - -| Restrictions | | -| ------------ | ------ | -| **Minimum** | ≥ 0 | - -#### 3.13.4. Property `WfExS-backend config > tools > nextflow > maxProcesses` - -**Title:** (deprecated) Max number of CPUs - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** Number of CPUs to be used by Nextflow. When this key has an explicit value of `null`, it depends on Nextflow criteria, which tries creating as many processes as available CPUs, spawning jobs in parallel. Not declaring it, or declaring and explicit value, imposes a limitation in the number of concurrent processes - -| One of(Option) | -| ----------------------------------------------- | -| [item 0](#tools_nextflow_maxProcesses_oneOf_i0) | -| [item 1](#tools_nextflow_maxProcesses_oneOf_i1) | - -##### 3.13.4.1. Property `WfExS-backend config > tools > nextflow > maxProcesses > oneOf > item 0` - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | -| **Default** | `4` | - -| Restrictions | | -| ------------ | ------ | -| **Minimum** | ≥ 1 | - -##### 3.13.4.2. Property `WfExS-backend config > tools > nextflow > maxProcesses > oneOf > item 1` - -| | | -| ------------ | ------ | -| **Type** | `null` | -| **Required** | No | - -#### 3.13.5. Property `WfExS-backend config > tools > nextflow > maxCPUs` - -**Title:** Max number of CPUs - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** Number of CPUs to be used by Nextflow. When this key has an explicit value of `null`, it depends on Nextflow criteria, which tries creating as many processes as available CPUs, spawning jobs in parallel. Not declaring it, or declaring and explicit value, imposes a limitation in the number of concurrent processes - -| One of(Option) | -| ------------------------------------------ | -| [item 0](#tools_nextflow_maxCPUs_oneOf_i0) | -| [item 1](#tools_nextflow_maxCPUs_oneOf_i1) | - -##### 3.13.5.1. Property `WfExS-backend config > tools > nextflow > maxCPUs > oneOf > item 0` - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | -| **Default** | `4` | - -| Restrictions | | -| ------------ | ------ | -| **Minimum** | ≥ 1 | - -##### 3.13.5.2. Property `WfExS-backend config > tools > nextflow > maxCPUs > oneOf > item 1` - -| | | -| ------------ | ------ | -| **Type** | `null` | -| **Required** | No | - -#### 3.13.6. Property `WfExS-backend config > tools > nextflow > maxTaskDuration` - -**Title:** Max task duration - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** With this parameter it is possible to override the max task time declared for processes. This is needed for workflows which are not so customizable - -| One of(Option) | -| -------------------------------------------------- | -| [item 0](#tools_nextflow_maxTaskDuration_oneOf_i0) | -| [item 1](#tools_nextflow_maxTaskDuration_oneOf_i1) | - -##### 3.13.6.1. Property `WfExS-backend config > tools > nextflow > maxTaskDuration > oneOf > item 0` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -| Restrictions | | -| --------------------------------- | --------------------------------------------------------------------------- | -| **Must match regular expression** | ```^[0-9]+.*$``` [Test](https://regex101.com/?regex=%5E%5B0-9%5D%2B.%2A%24) | - -##### 3.13.6.2. Property `WfExS-backend config > tools > nextflow > maxTaskDuration > oneOf > item 1` - -| | | -| ------------ | ------ | -| **Type** | `null` | -| **Required** | No | - -### 3.14. Property `WfExS-backend config > tools > cwl` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| -------------------------------- | ------- | ------ | ---------- | ---------- | ----------------- | -| - [version](#tools_cwl_version ) | No | string | No | - | cwltool's version | - -#### 3.14.1. Property `WfExS-backend config > tools > cwl > version` - -**Title:** cwltool's version - -| | | -| ------------ | ---------------------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"3.1.20210628163208"` | - -**Description:** Version of cwltool engine to be used. WfExS is not currently guessing the minimal needed version, so it is either the value set up in this key or the default one - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -### 3.15. Pattern Property `WfExS-backend config > tools > Path to a command` -> All properties whose name matches the regular expression -```^.+Command$``` ([Test](https://regex101.com/?regex=%5E.%2BCommand%24)) -must respect the following conditions - -**Title:** Path to a command - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -**Description:** This is a wildcard declaration to allow setting up custom paths to commands needed by several parts of the code - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -## 4. Property `WfExS-backend config > workDir` - -**Title:** Working directory - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -**Description:** Directory where all the working directories are going to be created. -When it is not set, a temporary directory is created, which will be removed when the program finishes (which avoids inspecting the working directory after the program has finished). - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -## 5. Property `WfExS-backend config > fetchers-setup` - -**Title:** Fetchers parameters setup - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** Some fetchers could need customizations at the configuration level, like limiting throughput or setting up some proxy - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| -------------------------------------------------- | ------- | ------ | ---------- | ---------- | -------------------- | -| - [^[a-z][a-z0-9+.-]*$](#fetchers-setup_pattern1 ) | Yes | object | No | - | Scheme fetcher setup | - -### 5.1. Pattern Property `WfExS-backend config > fetchers-setup > Scheme fetcher setup` -> All properties whose name matches the regular expression -```^[a-z][a-z0-9+.-]*$``` ([Test](https://regex101.com/?regex=%5E%5Ba-z%5D%5Ba-z0-9%2B.-%5D%2A%24)) -must respect the following conditions - -**Title:** Scheme fetcher setup - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** Some scheme fetchers could need customizations which depend on local WfExS installation environment. This is the place where to pass that - ----------------------------------------------------------------------------------------------------------------------------- -Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2024-08-07 at 03:30:03 +0000 diff --git a/development-docs/schemas/export-actions_schema.html b/development-docs/schemas/export-actions_schema.html deleted file mode 100644 index abed8e1a..00000000 --- a/development-docs/schemas/export-actions_schema.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - - - - - - - WfExS-backend exports definition - - - -

WfExS-backend exports definition

Type: object
-

WfExS-backend stage definition file (EOSC-Life Demonstrator 7 JSON Schemas)

-
No Additional Properties - - - - - - -
-
-
-

- -

-
- -
-
- - Type: array
- - - - - - - - -

All items must be unique

No Additional Items

Each item of this array must be:

-
-
- - - Type: object
-Same definition as defs_ExportsBlock_items -
-
-
-
-
-
- - - \ No newline at end of file diff --git a/development-docs/schemas/export-actions_schema.md b/development-docs/schemas/export-actions_schema.md deleted file mode 100644 index 02bac3e1..00000000 --- a/development-docs/schemas/export-actions_schema.md +++ /dev/null @@ -1,50 +0,0 @@ -# WfExS-backend exports definition - -- [1. Property `WfExS-backend exports definition > exports`](#exports) - - [1.1. WfExS-backend exports definition > exports > ExportAction](#autogenerated_heading_2) - -**Title:** WfExS-backend exports definition - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | - -**Description:** WfExS-backend stage definition file (EOSC-Life Demonstrator 7 JSON Schemas) - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ---------------------- | ------- | ----- | ---------- | ----------------------- | ----------------- | -| + [exports](#exports ) | No | array | No | In #/$defs/ExportsBlock | - | - -## 1. Property `WfExS-backend exports definition > exports` - -| | | -| -------------- | -------------------- | -| **Type** | `array` | -| **Required** | Yes | -| **Defined in** | #/$defs/ExportsBlock | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | N/A | -| **Max items** | N/A | -| **Items unicity** | True | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| ------------------------------- | ----------- | -| [ExportAction](#exports_items) | - | - -### 1.1. WfExS-backend exports definition > exports > ExportAction - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| **Same definition as** | [defs_ExportsBlock_items](#defs_ExportsBlock_items) | - ----------------------------------------------------------------------------------------------------------------------------- -Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2024-04-24 at 16:05:50 +0000 diff --git a/development-docs/schemas/schema_doc.css b/development-docs/schemas/schema_doc.css deleted file mode 100644 index e1f3a511..00000000 --- a/development-docs/schemas/schema_doc.css +++ /dev/null @@ -1,181 +0,0 @@ -body { - font: 16px/1.5em "Overpass", "Open Sans", Helvetica, sans-serif; - color: #333; - font-weight: 300; - padding: 40px; -} - -.btn.btn-link { - font-size: 18px; - user-select: text; -} - -.jsfh-animated-property { - animation: eclair; - animation-iteration-count: 1; - animation-fill-mode: forwards; - animation-duration: .75s; - -} - -@keyframes eclair { - 0%,100% { - transform: scale(1); - } - 50% { - transform: scale(1.03); - } -} - -.btn.btn-primary { - margin: 10px; -} - -.btn.example-show.collapsed:before { - content: "show" -} - -.btn.example-show:before { - content: "hide" -} - -.description.collapse:not(.show) { - max-height: 100px !important; - overflow: hidden; - - display: -webkit-box; - -webkit-line-clamp: 2; - -webkit-box-orient: vertical; -} - -.description.collapsing { - min-height: 100px !important; -} - -.collapse-description-link.collapsed:after { - content: '+ Read More'; -} - -.collapse-description-link:not(.collapsed):after { - content: '- Read Less'; -} - -.badge { - font-size: 100%; - margin-bottom: 0.5rem; - margin-top: 0.5rem; -} - -.badge.value-type { - font-size: 120%; - margin-right: 5px; - margin-bottom: 10px; -} - - -.badge.default-value { - font-size: 120%; - margin-left: 5px; - margin-bottom: 10px; -} - -.badge.restriction { - display: inline-block; -} - -.badge.required-property,.badge.deprecated-property,.badge.pattern-property,.badge.no-additional { - font-size: 100%; - margin-left: 10px; -} - -.accordion div.card:only-child { - border-bottom: 1px solid rgba(0, 0, 0, 0.125); -} - -.examples { - padding: 1rem !important; -} - -.examples pre { - margin-bottom: 0; -} - -.highlight.jumbotron { - padding: 1rem !important; -} - -.generated-by-footer { - margin-top: 1em; - text-align: right; -} - -/* From https://github.com/richleland/pygments-css/blob/master/friendly.css, see https://github.com/trentm/python-markdown2/wiki/fenced-code-blocks */ -.highlight { background: #e9ecef; } /* Changed from #f0f0f0 in the original style to be the same as bootstrap's jumbotron */ -.highlight .hll { background-color: #ffffcc } -.highlight .c { color: #60a0b0; font-style: italic } /* Comment */ -.highlight .err { border: 1px solid #FF0000 } /* Error */ -.highlight .k { color: #007020; font-weight: bold } /* Keyword */ -.highlight .o { color: #666666 } /* Operator */ -.highlight .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */ -.highlight .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */ -.highlight .cp { color: #007020 } /* Comment.Preproc */ -.highlight .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */ -.highlight .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */ -.highlight .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */ -.highlight .gd { color: #A00000 } /* Generic.Deleted */ -.highlight .ge { font-style: italic } /* Generic.Emph */ -.highlight .gr { color: #FF0000 } /* Generic.Error */ -.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */ -.highlight .gi { color: #00A000 } /* Generic.Inserted */ -.highlight .go { color: #888888 } /* Generic.Output */ -.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */ -.highlight .gs { font-weight: bold } /* Generic.Strong */ -.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ -.highlight .gt { color: #0044DD } /* Generic.Traceback */ -.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */ -.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */ -.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */ -.highlight .kp { color: #007020 } /* Keyword.Pseudo */ -.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */ -.highlight .kt { color: #902000 } /* Keyword.Type */ -.highlight .m { color: #40a070 } /* Literal.Number */ -.highlight .s { color: #4070a0 } /* Literal.String */ -.highlight .na { color: #4070a0 } /* Name.Attribute */ -.highlight .nb { color: #007020 } /* Name.Builtin */ -.highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */ -.highlight .no { color: #60add5 } /* Name.Constant */ -.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */ -.highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */ -.highlight .ne { color: #007020 } /* Name.Exception */ -.highlight .nf { color: #06287e } /* Name.Function */ -.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */ -.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */ -.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */ -.highlight .nv { color: #bb60d5 } /* Name.Variable */ -.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */ -.highlight .w { color: #bbbbbb } /* Text.Whitespace */ -.highlight .mb { color: #40a070 } /* Literal.Number.Bin */ -.highlight .mf { color: #40a070 } /* Literal.Number.Float */ -.highlight .mh { color: #40a070 } /* Literal.Number.Hex */ -.highlight .mi { color: #40a070 } /* Literal.Number.Integer */ -.highlight .mo { color: #40a070 } /* Literal.Number.Oct */ -.highlight .sa { color: #4070a0 } /* Literal.String.Affix */ -.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */ -.highlight .sc { color: #4070a0 } /* Literal.String.Char */ -.highlight .dl { color: #4070a0 } /* Literal.String.Delimiter */ -.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */ -.highlight .s2 { color: #4070a0 } /* Literal.String.Double */ -.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */ -.highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */ -.highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */ -.highlight .sx { color: #c65d09 } /* Literal.String.Other */ -.highlight .sr { color: #235388 } /* Literal.String.Regex */ -.highlight .s1 { color: #4070a0 } /* Literal.String.Single */ -.highlight .ss { color: #517918 } /* Literal.String.Symbol */ -.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */ -.highlight .fm { color: #06287e } /* Name.Function.Magic */ -.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */ -.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */ -.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */ -.highlight .vm { color: #bb60d5 } /* Name.Variable.Magic */ -.highlight .il { color: #40a070 } /* Literal.Number.Integer.Long */ diff --git a/development-docs/schemas/schema_doc.min.js b/development-docs/schemas/schema_doc.min.js deleted file mode 100644 index 17eceaf5..00000000 --- a/development-docs/schemas/schema_doc.min.js +++ /dev/null @@ -1 +0,0 @@ -$(document).on("click",'a[href^="#"]',function(event){event.preventDefault();history.pushState({},"",this.href)});function flashElement(elementId){myElement=document.getElementById(elementId);myElement.classList.add("jsfh-animated-property");setTimeout(function(){myElement.classList.remove("jsfh-animated-property")},1e3)}function setAnchor(anchorLinkDestination){history.pushState({},"",anchorLinkDestination)}function anchorOnLoad(){let linkTarget=decodeURIComponent(window.location.hash.split("?")[0].split("&")[0]);if(linkTarget[0]==="#"){linkTarget=linkTarget.substr(1)}if(linkTarget.length>0){anchorLink(linkTarget)}}function anchorLink(linkTarget){const target=$("#"+linkTarget);target.parents().addBack().filter(".collapse:not(.show), .tab-pane, [role='tab']").each(function(index){if($(this).hasClass("collapse")){$(this).collapse("show")}else if($(this).hasClass("tab-pane")){const tabToShow=$("a[href='#"+$(this).attr("id")+"']");if(tabToShow){tabToShow.tab("show")}}else if($(this).attr("role")==="tab"){$(this).tab("show")}});setTimeout(function(){let targetElement=document.getElementById(linkTarget);if(targetElement){targetElement.scrollIntoView({block:"center",behavior:"smooth"});setTimeout(function(){flashElement(linkTarget)},500)}},1e3)} \ No newline at end of file diff --git a/development-docs/schemas/security-context_schema.html b/development-docs/schemas/security-context_schema.html deleted file mode 100644 index f566ac0a..00000000 --- a/development-docs/schemas/security-context_schema.html +++ /dev/null @@ -1,796 +0,0 @@ - - - - - - - - - - - - - - - - WfExS-backend security context - -

WfExS-backend security context

- - Type: object
-

WfExS-backend security context file (EOSC-Life Demonstrator 7 JSON Schemas)

-
No Additional Properties - - - - - - -
-
-
-

- -

-
- -
-

- -

-

All properties whose name matches the following regular expression must respect the following conditions

- Property name regular expression: ^[^:;]+$ -
- - Type: object
- - -

- -

-
- - - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- - Type: string
-

The user name

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
-

The user password associated to the username

-
- - - -

Must be at least 0 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-

Additional Properties of any type are allowed.

- - Type: object
- - - - - - - -
-
-
-
-
- - - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- - Type: string
- - - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
- - - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-

Additional Properties of any type are allowed.

- - Type: object
- - - - - - - -
-
-
-
-
- - - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- - Type: string
-

The authentication token

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
-

On HTTP, the authentication token is used to fill-in an 'Authentication: Bearer ' header. Sometimes authentication through tokens require using custom headers, like it happens with SevenBridges

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-

Additional Properties of any type are allowed.

- - Type: object
- - - - - - - -
-
-
-
-
- - - - - - -
-
-
-

- -

-
- -
-
- - Type: enum (of string) Default: "GET"
-
-

Must be one of:

-
  • "GET"
  • "POST"
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
-

Custom headers to be used on the request

-
- - - - - - -
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-

- -

-

All properties whose name matches the following regular expression must respect the following conditions

- Property name regular expression: ^[a-z][a-z0-9+.-]*:.*$ -
- - Type: object
-Same definition as pattern1 -
-
-
-
- - - \ No newline at end of file diff --git a/development-docs/schemas/security-context_schema.md b/development-docs/schemas/security-context_schema.md deleted file mode 100644 index 6a1f1a30..00000000 --- a/development-docs/schemas/security-context_schema.md +++ /dev/null @@ -1,210 +0,0 @@ -# WfExS-backend security context - -- [1. Pattern Property `WfExS-backend security context > Security context by name`](#pattern1) - - [1.1. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 0`](#pattern1_pattern2_i0) - - [1.1.1. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 0 > username`](#pattern1_pattern2_i0_username) - - [1.1.2. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 0 > password`](#pattern1_pattern2_i0_password) - - [1.2. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 1`](#pattern1_pattern2_i1) - - [1.2.1. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 1 > access_key`](#pattern1_pattern2_i1_access_key) - - [1.2.2. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 1 > secret_key`](#pattern1_pattern2_i1_secret_key) - - [1.3. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 2`](#pattern1_pattern2_i2) - - [1.3.1. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 2 > token`](#pattern1_pattern2_i2_token) - - [1.3.2. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 2 > token_header`](#pattern1_pattern2_i2_token_header) - - [1.4. Property `WfExS-backend security context > ^[^:;]+$ > method`](#pattern1_method) - - [1.5. Property `WfExS-backend security context > ^[^:;]+$ > headers`](#pattern1_headers) -- [2. Pattern Property `WfExS-backend security context > Security context by prefix`](#pattern2) - -**Title:** WfExS-backend security context - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | - -**Description:** WfExS-backend security context file (EOSC-Life Demonstrator 7 JSON Schemas) - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| -------------------------------------- | ------- | ------ | ---------- | ------------------------------ | -------------------------- | -| - [^[^:;]+$](#pattern1 ) | Yes | object | No | In #/definitions/SecContext | Security context by name | -| - [^[a-z][a-z0-9+.-]*:.*$](#pattern2 ) | Yes | object | No | Same as [pattern1](#pattern1 ) | Security context by prefix | - -## 1. Pattern Property `WfExS-backend security context > Security context by name` -> All properties whose name matches the regular expression -```^[^:;]+$``` ([Test](https://regex101.com/?regex=%5E%5B%5E%3A%3B%5D%2B%24)) -must respect the following conditions - -**Title:** Security context by name - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| **Defined in** | #/definitions/SecContext | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------- | ------- | ---------------- | ---------- | ---------- | ---------------------------------------- | -| - [method](#pattern1_method ) | No | enum (of string) | No | - | - | -| - [headers](#pattern1_headers ) | No | object | No | - | Custom headers to be used on the request | - -| One of(Option) | -| ------------------------------- | -| [item 0](#pattern1_pattern2_i0) | -| [item 1](#pattern1_pattern2_i1) | -| [item 2](#pattern1_pattern2_i2) | - -### 1.1. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 0` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------------------- | ------- | ------ | ---------- | ---------- | -------------------------------------------- | -| + [username](#pattern1_pattern2_i0_username ) | No | string | No | - | The user name | -| + [password](#pattern1_pattern2_i0_password ) | No | string | No | - | The user password associated to the username | -| - [](#pattern1_pattern2_i0_additionalProperties ) | No | object | No | - | - | - -#### 1.1.1. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 0 > username` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -**Description:** The user name - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -#### 1.1.2. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 0 > password` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -**Description:** The user password associated to the username - -| Restrictions | | -| -------------- | - | -| **Min length** | 0 | - -### 1.2. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 1` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------------------- | ------- | ------ | ---------- | ---------- | ----------------- | -| + [access_key](#pattern1_pattern2_i1_access_key ) | No | string | No | - | - | -| + [secret_key](#pattern1_pattern2_i1_secret_key ) | No | string | No | - | - | -| - [](#pattern1_pattern2_i1_additionalProperties ) | No | object | No | - | - | - -#### 1.2.1. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 1 > access_key` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -#### 1.2.2. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 1 > secret_key` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -### 1.3. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 2` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ----------------------------------------------------- | ------- | ------ | ---------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| + [token](#pattern1_pattern2_i2_token ) | No | string | No | - | The authentication token | -| - [token_header](#pattern1_pattern2_i2_token_header ) | No | string | No | - | On HTTP, the authentication token is used to fill-in an 'Authentication: Bearer ' header. Sometimes authentication through tokens require using custom headers, like it happens with SevenBridges | -| - [](#pattern1_pattern2_i2_additionalProperties ) | No | object | No | - | - | - -#### 1.3.1. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 2 > token` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -**Description:** The authentication token - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -#### 1.3.2. Property `WfExS-backend security context > ^[^:;]+$ > oneOf > item 2 > token_header` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -**Description:** On HTTP, the authentication token is used to fill-in an 'Authentication: Bearer ' header. Sometimes authentication through tokens require using custom headers, like it happens with SevenBridges - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -### 1.4. Property `WfExS-backend security context > ^[^:;]+$ > method` - -| | | -| ------------ | ------------------ | -| **Type** | `enum (of string)` | -| **Required** | No | -| **Default** | `"GET"` | - -Must be one of: -* "GET" -* "POST" - -### 1.5. Property `WfExS-backend security context > ^[^:;]+$ > headers` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** Custom headers to be used on the request - -## 2. Pattern Property `WfExS-backend security context > Security context by prefix` -> All properties whose name matches the regular expression -```^[a-z][a-z0-9+.-]*:.*$``` ([Test](https://regex101.com/?regex=%5E%5Ba-z%5D%5Ba-z0-9%2B.-%5D%2A%3A.%2A%24)) -must respect the following conditions - -**Title:** Security context by prefix - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| **Same definition as** | [pattern1](#pattern1) | - ----------------------------------------------------------------------------------------------------------------------------- -Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2023-09-23 at 01:39:57 +0000 diff --git a/development-docs/schemas/stage-definition_schema.html b/development-docs/schemas/stage-definition_schema.html deleted file mode 100644 index f636e076..00000000 --- a/development-docs/schemas/stage-definition_schema.html +++ /dev/null @@ -1,9869 +0,0 @@ - - - - - - - - - - - - - - - - WfExS-backend stage definition - - - -

WfExS-backend stage definition

Type: object
-

WfExS-backend stage definition file (EOSC-Life Demonstrator 7 JSON Schemas)

-
No Additional Properties - - - - - - -
-
-
-

- -

-
- -
-
- -

The optional TRS endpoing

Type: string
-

If this key is set, it will tell the GA4GH TRS service where to look for the workflow_id (and optional version)

-
- - - - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Workflow version

Type: string or integer
-

If trsenpoint key is set, it will tell the version of the workflowid to look for at GA4GH TRS

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -
-

- -

-
- - - Type: string
-Same definition as trs_endpoint -
- - - Type: string
- - - - - - - -
- - - Type: integer
- - - - - - - -
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

A friendly nickname (prefix) for the instances

Type: string
- - - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: boolean Default: false
- - - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

The optional, forced workflow type

Type: string
-

When this key is set, it is forcing the workflow type. WfExS-backend is usually able to identify the workflow type, unless there are two intertwined workflows in the same location

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- - Type: boolean
- - - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Container technology type to be used for this workflow

Type: enum (of string)
-

Type of container technology to be used when this staging scenario is instantiated. Supported types are:
-- Singularity (default).
-- Docker.
-- Podman
-- No containerisation technology (discouraged, but needed for some workflows)
-Encrypted working directories are unsupported when Docker or Podman are used due technological limitations

-
-

Must be one of:

-
  • "singularity"
  • "docker"
  • "podman"
  • "none"
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: boolean Default: false
- - - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- - Type: string Default: "19.04.1"
- - - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Retries in docker mode

Type: integer Default: 5
-

Retries when engineMode is docker.
-Retries system was introduced when using docker-in-docker pattern because an insidious
-bug happens sometimes. See https://forums.docker.com/t/any-known-problems-with-symlinks-on-bind-mounts/32138

-
- - - -

Value must be greater or equal to 0

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

(deprecated) Max number of CPUs


-

Number of CPUs to be used by Nextflow. When this key has an explicit value of null, it depends on Nextflow criteria, which tries creating as many processes as available CPUs, spawning jobs in parallel. Not declaring it, or declaring and explicit value, imposes a limitation in the number of concurrent processes

-

- -

-
- - - Type: integer Default: 4
- - - - -

Value must be greater or equal to 1

- - -
- - - Type: null
- - - - - - - -
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

(deprecated) Max number of CPUs


-

Number of CPUs to be used by Nextflow. When this key has an explicit value of null, it depends on Nextflow criteria, which tries creating as many processes as available CPUs, spawning jobs in parallel. Not declaring it, or declaring and explicit value, imposes a limitation in the number of concurrent processes

-

- -

-
- - - Type: integer Default: 4
- - - - -

Value must be greater or equal to 1

- - -
- - - Type: null
- - - - - - - -
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Max task duration


-

With this parameter it is possible to override the max task time declared for processes. This is needed for workflows which are not so customizable

-

- -

-
- - - Type: string
-Must match regular expression: ^[0-9]+.*$ - - - - - - -
- - - Type: null
- - - - - - - -
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -
-

(deprecated) If defined, the profile/s to enable

-

- -

-
- - - Type: string
-Must match regular expression: ^[^, ]+[ ]*(,[ ]*[^, ]+[ ]*)*$ - - - -

Must be at least 1 characters long

- - -
- - - Type: array of string
- - - - - - -

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

-
-
- - - Type: string
-Must match regular expression: ^[^,]+$ - - - -

Must be at least 1 characters long

- - -
-
-
- - - - - - -
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- - Type: string Default: "3.1.20210628163208"
- - - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-

Each additional property must conform to the following schema

- - Type: number, integer or string
- - - - - - - -
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
- - - No Additional Properties - - - - - - -
-
-
-

- -

-
- -
-

- -

-

All properties whose name matches the following regular expression must respect the following conditions

- Property name regular expression: ^(?!c-l-a-s-s)[^:;]+$ -
- - Type: object
- - -

- -

-
- - - Type: string, number or boolean
- - - - - - - -
- - - Type: array of string
- - - - - - - No Additional Items

Each item of this array must be:

-
-
- - - Type: string
- - - - - - - -
-
-
- - - Type: array of number
- - - - - - - No Additional Items

Each item of this array must be:

-
-
- - - Type: number
- - - - - - - -
-
-
- - - Type: array of boolean
- - - - - - - No Additional Items

Each item of this array must be:

-
-
- - - Type: boolean
- - - - - - - -
-
-
- - - Type: object
- - - No Additional Properties

- -

-
- - - Type: object
-

- -

-

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. - Otherwise, the conditions in the "Else" tab should be respected.

- - -
- -
- - - Type: object
- -
-

The following properties are required:

-
  • url
-
- - - - - -
-
-
-

- -

-
- -
-
- - Type: enum (of string)
-
-

Must be one of:

-
  • "Directory"
  • "File"
-
- - - - - - -
-
-
-
-
- - - -
- - -
-
-

Must not be:

-
-
- - - Type: object
- -
-

The following properties are required:

-
  • value
  • tabular
  • autoFill
  • autoPrefix
-
- - - - - -
-
-
- - - - - - -
- - - - - - -
- - - Type: object
-

- -

-

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. - Otherwise, the conditions in the "Else" tab should be respected.

- - -
- -
- - - Type: object
- -
-

The following properties are required:

-
  • url
-
- - - - - -
-
-
-

- -

-
- -
-
- - Type: const
-Specific value: "ContentWithURIs" - - - - - - -
-
-
-
-
- - - -
- - -
-
-

Must not be:

-
-
- - - Type: object
- -
-

The following properties are required:

-
  • value
  • autoFill
  • autoPrefix
-
- - - - - -
-
-
- - - - - - -
- - - - - - -
- - - Type: object
-

- -

-

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. - Otherwise, the conditions in the "Else" tab should be respected.

- - -
- -
- - - Type: object
- -
-

The following properties are required:

-
  • autoFill
-
- - - - - -
-
-
-

- -

-
- -
-
- - Type: enum (of string)
-
-

Must be one of:

-
  • "Directory"
  • "File"
-
- - - - - - -
-
-
-
-
- - - -
- - -
-
-

Must not be:

-
-
- - - Type: object
- -
-

The following properties are required:

-
  • value
  • tabular
  • url
  • secondary-urls
  • security-context
  • globExplode
-
- - - - - -
-
-
- - - - - - -
- - - - - - -
- - - Type: object
-

- -

-

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. - Otherwise, the conditions in the "Else" tab should be respected.

- - -
- -
- - - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- - Type: const
-Specific value: "Directory" - - - - - - -
-
-
-
-
- - - -
- - -
-
-

Must not be:

-
-
- - - Type: object
- -
-

The following properties are required:

-
  • value
-
- - - - - -
-
-
- - - - - - -
- - - - - - -
- - - Type: object
-

- -

-

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. - Otherwise, the conditions in the "Else" tab should be respected.

- - -
- -
- - - Type: object
- -
-

The following properties are required:

-
  • value
-
- - - - - -
-
-
-

- -

-
- -
-
- - Type: const
-Specific value: "File" - - - - - - -
-
-
-
-
- - - -
- - -
-
-

Must not be:

-
-
- - - Type: object
- -
-

The following properties are required:

-
  • url
  • tabular
  • secondary-urls
  • security-context
  • globExplode
  • autoFill
  • autoPrefix
-
- - - - - -
-
-
- - - - - - -
- - - - - - -
- - - Type: object
-

- -

-

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. - Otherwise, the conditions in the "Else" tab should be respected.

- - -
- -
- - - Type: object
- -
-

The following properties are required:

-
  • value
-
- - - - - -
-
-
-

- -

-
- -
-
- - Type: const
-Specific value: "ContentWithURIs" - - - - - - -
-
-
-
-
- - - -
- - -
-
-

Must not be:

-
-
- - - Type: object
- -
-

The following properties are required:

-
  • url
  • secondary-urls
  • security-context
  • globExplode
  • autoFill
  • autoPrefix
-
- - - - - -
-
-
- - - - - - -
- - - - - - -
- - - Type: object
-

- -

-

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. - Otherwise, the conditions in the "Else" tab should be respected.

- - -
- -
- - - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- - Type: const
-Specific value: "Value" - - - - - - -
-
-
-
-
- - - -
- - -
-
-

Must not be:

-
-
- - - Type: object
- -
-

The following properties are required:

-
  • tabular
  • url
  • secondary-urls
  • preferred-name
  • relative-dir
  • security-context
  • globExplode
  • autoFill
  • autoPrefix
  • cacheable
  • clonable
-
- - - - - -
-
-
-
-

The following properties are required:

-
  • value
-
- - - - - -
- - - - - - -
- - - Type: object
-

- -

-

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. - Otherwise, the conditions in the "Else" tab should be respected.

- - -
- -
- - - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- - Type: const
-Specific value: "ContentWithURIs" - - - - - - -
-
-
-
-
- - - -
- - -
-
-

Must not be:

-
-
- - - Type: object
- -
-

The following properties are required:

-
  • globExplode
  • autoFill
  • autoPrefix
-
- - - - - -
-
-

- -

-

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. - Otherwise, the conditions in the "Else" tab should be respected.

- - -
- -
- - - Type: object
- -
-

The following properties are required:

-
  • url
-
- - - - - -
- - - -
- - -
-
-

Must not be:

-
-
- - - Type: object
- -
-

The following properties are required:

-
  • value
-
- - - - - -
-
-
- - - - - - -
-
- - -
-
-

Must not be:

-
-
- - - Type: object
- -
-

The following properties are required:

-
  • url
  • secondary-urls
  • security-context
-
- - - - - -
-
-
-
-

The following properties are required:

-
  • value
-
- - - - - -
-
-

The following properties are required:

-
  • tabular
-
- - - - - -
- - - - - - -
- - - - - - -
-
-
-

- -

-
- -
-
- - Type: enum (of string)
-
-

Must be one of:

-
  • "File"
  • "Directory"
  • "Value"
  • "ContentWithURIs"
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -
-

When 'c-l-a-s-s' is a single file or a value, the assigned value

-

- -

-
- - - Type: string
- - - - -

Must be at least 1 characters long

- - -
- - - Type: array of string
- - - - - - -

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

-
-
- - - Type: string
- - - - -

Must be at least 1 characters long

- - -
-
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
-

When it is content with URIs, we are telling it is a tabular one with this key. URIs are fetched, and the absolute paths replace them in the generated content tab

-
- - - - - - -
-
-
-

- -

-
- -
-
- - Type: array of integer
-

The columns where URIs to be fetched are found

-
- - - - - -

Must contain a minimum of 1 items

All items must be unique

No Additional Items

Each item of this array must be:

-
-
- - - Type: integer
- - - - - - - -
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: enum (of string) Default: "\n"
-

The string used to split the tabulated content by rows

-
-

Must be one of:

-
  • "\n"
  • "\r"
  • "\t\n"
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
-

The regular expression used to split the tabulated content by columns

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: integer Default: 0
-

How many header rows should be skipped?

-
- - - - - - -
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
-

The URL(s) / URI(s) where this input is available

-
- -

- -

-
- - - Type: string
-Same definition as trs_endpoint -
- - - Type: string
- - - Must match regular expression: $\{[^}]+\} - - - -

Must be at least 1 characters long

- - -
- - - Type: object
- - - No Additional Properties - - - - - - -
-
-
-

- -

-
- -
-
- -
-

The URI of the resource

-

- -

-
- - - Type: string
-Same definition as trs_endpoint -
- - - Type: string
-Same definition as params_pattern1_pattern1_i4_url_oneOf_i1 -
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: array
- - - - - - - No Additional Items

Each item of this array must be:

-
-
- - - Type: string Default: "https://choosealicense.com/no-permission/"
-

URL to the description of the licence of the data. And by default, no permission to use or distribute it

-
- - - - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: array of object
- - - - - - -

All items must be unique

No Additional Items

Each item of this array must be:

-
-
- - - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-
- - Type: string
-

Name of the author

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
-

A unique way to represent this author, either through her/his ORCID or another permanent, representative link

-
Same definition as trs_endpoint -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: array of enum (of string)
- - - - - - -

Must contain a minimum of 1 items

All items must be unique

No Additional Items

Each item of this array must be:

-
-
- - - Type: enum (of string)
-
-

Must be one of:

-
  • "conceptualization"
  • "data-curation"
  • "formal-analysis"
  • "funding-acquisition"
  • "investigation"
  • "methodology"
  • "project-administration"
  • "resources"
  • "software"
  • "supervision"
  • "validation"
  • "visualization"
  • "writing-original-draft"
  • "writing-review-editing"
-
- - - - - - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
-Must match regular expression: ^[^:;]+$ - - - -

Must be at least 1 characters long

- - -
-
-
-
-
- - - Type: array
- - - - - - -

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

-
-
- - -
-

- -

-
- - - Type: object
-Same definition as params_pattern1_pattern1_i4_url_oneOf_i2 -
- - - Type: string
-Same definition as trs_endpoint -
- - - Type: string
-Same definition as params_pattern1_pattern1_i4_url_oneOf_i1 -
- - - Type: array
-

This element is an array of alternate URLs, so any of them provide the very same resources

-
- - - - - -

Must contain a minimum of 2 items

No Additional Items

Each item of this array must be:

-
-
- - -
-

- -

-
- - - Type: object
-Same definition as params_pattern1_pattern1_i4_url_oneOf_i2 -
- - - Type: string
-Same definition as trs_endpoint -
- - - Type: string
-Same definition as params_pattern1_pattern1_i4_url_oneOf_i1 -
- - - - - - -
-
-
- - - - - - -
-
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
-

Secondary URLs / URIs are pointing to contents which will feed secondary inputs (CWL concept)

-
Same definition as url -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: boolean or string Default: false
-

Preferred base name / relative path for this input, instead of the derived one from the URL

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: boolean or string Default: false
-

Put contents fetched for this input in this relative directory. This option does not affect preferred-name

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
-

Use an explicitly named security context

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: boolean Default: true
-

Whether this input contents can be included in RO-Crates or exported

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: boolean Default: true
-

Whether a copy of this input contents can be kept locally outside the working directory

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: boolean Default: true
-

Whether a copy of this input contents can be kept locally inside the working directory

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
-

When this is set, and the class is directory, it helps filtering in what it should be included

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: boolean Default: false
-

When this key is true, the directory or file is considered an output one

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: boolean Default: false
-

When autoFill is true and this parameter is false, this directory is mapped to the parent output one for this execution. When both autoFill and this parameter are true, an output file or directory name is assigned, based on its complete param name

-
- - - - - - -
-
-
-
-
- - - Type: object
-Same definition as params -
- - - - - - -
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- -
-

For engines which support profiles, like Nextflow or snakemake, if defined, the profile/s to enable

-

- -

-
- - - Type: string
-Must match regular expression: ^[^, ]+[ ]*(,[ ]*[^, ]+[ ]*)*$ - - - -

Must be at least 1 characters long

- - -
- - - Type: array of string
- - - - - - -

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

-
-
- - - Type: string
-Must match regular expression: ^[^,]+$ - - - -

Must be at least 1 characters long

- - -
-
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
- No Additional Properties - - - - - - -
-
-
-

- -

-
- -
-

- -

-

All properties whose name matches the following regular expression must respect the following conditions

- Property name regular expression: ^[^=\0]+$ -
- - Type: object
-

The name of an environment variable. These names cannot contain either the equal or the character \0

-
- -

- -

-
- - - Type: string or number
- - - - - - - -
- - - Type: object
-Same definition as params_pattern1_pattern1_i4 -
- - - - - - -
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: object
- - - - - - - -
-
-
-

- -

-
- -
-

- -

-

All properties whose name matches the following regular expression must respect the following conditions

- Property name regular expression: ^[^:;]+$ -
- - Type: object
- No Additional Properties - - - - - - -
-
-
-

- -

-
- -
-
- - Type: enum (of string)
-
-

Must be one of:

-
  • "File"
  • "Directory"
-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- -

Output cardinality

Default: 1
-

Expected cardinality of this output

-

- -

-
- - - Type: enum (of string)
-
-

Must be one of:

-
  • "1"
  • "?"
  • "*"
  • "+"
-
- - - - - - -
- - - Type: integer
- - - - -

Value must be greater or equal to 0

- - -
- - - Type: array
- - - - - - -

Must contain a minimum of 2 items

Must contain a maximum of 2 items

No Additional Items

Tuple Validation

- -
Item at 1 must be:
-
-
- - - Type: integer
- - - - -

Value must be greater or equal to 0

- - -
-
- -
Item at 2 must be:
-
-
- - - Type: integer
- - - - -

Value must be greater or equal to 1

- - -
-
- -
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
-

Preferred name for this output, honored when either filledFrom or glob are used

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
-

Autofilled input from where to get the files and directories to be assigned to this output, useful in workflow models where outputs are not explicitly declared (Nextflow, Snakemake)

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: boolean
-

Is this output a synthetic one? The default value when it is not defined depends on the type of workflow.

-
- - - - - - -
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: string
-

Glob pattern to get the files and directories to be assigned to this output, useful in workflow models where outputs are not explicitly declared (Nextflow, Snakemake)

-
- - - -

Must be at least 1 characters long

- - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

- -

-
- -
-
- - Type: array
- - - - - - - No Additional Items -
-
-
-
- - - \ No newline at end of file diff --git a/development-docs/schemas/stage-definition_schema.md b/development-docs/schemas/stage-definition_schema.md deleted file mode 100644 index acad72e3..00000000 --- a/development-docs/schemas/stage-definition_schema.md +++ /dev/null @@ -1,1969 +0,0 @@ -# WfExS-backend stage definition - -- [1. Property `WfExS-backend stage definition > trs_endpoint`](#trs_endpoint) -- [2. Property `WfExS-backend stage definition > version`](#version) -- [3. Property `WfExS-backend stage definition > workflow_id`](#workflow_id) - - [3.1. Property `WfExS-backend stage definition > workflow_id > anyOf > PlainURI`](#workflow_id_anyOf_i0) - - [3.2. Property `WfExS-backend stage definition > workflow_id > anyOf > item 1`](#workflow_id_anyOf_i1) - - [3.3. Property `WfExS-backend stage definition > workflow_id > anyOf > item 2`](#workflow_id_anyOf_i2) -- [4. Property `WfExS-backend stage definition > nickname`](#nickname) -- [5. Property `WfExS-backend stage definition > paranoid_mode`](#paranoid_mode) -- [6. Property `WfExS-backend stage definition > workflow_type`](#workflow_type) -- [7. Property `WfExS-backend stage definition > workflow_config`](#workflow_config) - - [7.1. Property `WfExS-backend stage definition > workflow_config > secure`](#workflow_config_secure) - - [7.2. Property `WfExS-backend stage definition > workflow_config > containerType`](#workflow_config_containerType) - - [7.3. Property `WfExS-backend stage definition > workflow_config > writable_containers`](#workflow_config_writable_containers) - - [7.4. Property `WfExS-backend stage definition > workflow_config > nextflow`](#workflow_config_nextflow) - - [7.4.1. Property `WfExS-backend stage definition > workflow_config > nextflow > version`](#workflow_config_nextflow_version) - - [7.4.2. Property `WfExS-backend stage definition > workflow_config > nextflow > maxRetries`](#workflow_config_nextflow_maxRetries) - - [7.4.3. Property `WfExS-backend stage definition > workflow_config > nextflow > maxProcesses`](#workflow_config_nextflow_maxProcesses) - - [7.4.3.1. Property `WfExS-backend stage definition > workflow_config > nextflow > maxProcesses > oneOf > item 0`](#workflow_config_nextflow_maxProcesses_oneOf_i0) - - [7.4.3.2. Property `WfExS-backend stage definition > workflow_config > nextflow > maxProcesses > oneOf > item 1`](#workflow_config_nextflow_maxProcesses_oneOf_i1) - - [7.4.4. Property `WfExS-backend stage definition > workflow_config > nextflow > maxCPUs`](#workflow_config_nextflow_maxCPUs) - - [7.4.4.1. Property `WfExS-backend stage definition > workflow_config > nextflow > maxCPUs > oneOf > item 0`](#workflow_config_nextflow_maxCPUs_oneOf_i0) - - [7.4.4.2. Property `WfExS-backend stage definition > workflow_config > nextflow > maxCPUs > oneOf > item 1`](#workflow_config_nextflow_maxCPUs_oneOf_i1) - - [7.4.5. Property `WfExS-backend stage definition > workflow_config > nextflow > maxTaskDuration`](#workflow_config_nextflow_maxTaskDuration) - - [7.4.5.1. Property `WfExS-backend stage definition > workflow_config > nextflow > maxTaskDuration > oneOf > item 0`](#workflow_config_nextflow_maxTaskDuration_oneOf_i0) - - [7.4.5.2. Property `WfExS-backend stage definition > workflow_config > nextflow > maxTaskDuration > oneOf > item 1`](#workflow_config_nextflow_maxTaskDuration_oneOf_i1) - - [7.4.6. Property `WfExS-backend stage definition > workflow_config > nextflow > profile`](#workflow_config_nextflow_profile) - - [7.4.6.1. Property `WfExS-backend stage definition > workflow_config > nextflow > profile > oneOf > item 0`](#workflow_config_nextflow_profile_oneOf_i0) - - [7.4.6.2. Property `WfExS-backend stage definition > workflow_config > nextflow > profile > oneOf > item 1`](#workflow_config_nextflow_profile_oneOf_i1) - - [7.4.6.2.1. WfExS-backend stage definition > workflow_config > nextflow > profile > oneOf > item 1 > item 1 items](#autogenerated_heading_2) - - [7.5. Property `WfExS-backend stage definition > workflow_config > cwl`](#workflow_config_cwl) - - [7.5.1. Property `WfExS-backend stage definition > workflow_config > cwl > version`](#workflow_config_cwl_version) -- [8. Property `WfExS-backend stage definition > placeholders`](#placeholders) - - [8.1. Property `WfExS-backend stage definition > placeholders > additionalProperties`](#placeholders_additionalProperties) -- [9. Property `WfExS-backend stage definition > params`](#params) - - [9.1. Pattern Property `WfExS-backend stage definition > params > Param`](#params_pattern1) - - [9.1.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 0`](#params_pattern1_pattern1_i0) - - [9.1.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 1`](#params_pattern1_pattern1_i1) - - [9.1.2.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 1 > item 1 items](#autogenerated_heading_3) - - [9.1.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 2`](#params_pattern1_pattern1_i2) - - [9.1.3.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 2 > item 2 items](#autogenerated_heading_4) - - [9.1.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 3`](#params_pattern1_pattern1_i3) - - [9.1.4.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 3 > item 3 items](#autogenerated_heading_5) - - [9.1.5. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > DirFile`](#params_pattern1_pattern1_i4) - - [9.1.5.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 0`](#params_pattern1_pattern1_i4_allOf_i0) - - [9.1.5.1.1. If (c-l-a-s-s = Must be one of: -* "Directory" -* "File" - )](#autogenerated_heading_6) - - [9.1.5.1.1.1. Must **not** be](#autogenerated_heading_7) - - [9.1.5.1.1.1.1. The following properties are required](#autogenerated_heading_8) - - [9.1.5.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 1`](#params_pattern1_pattern1_i4_allOf_i1) - - [9.1.5.2.1. If (c-l-a-s-s = "ContentWithURIs" )](#autogenerated_heading_9) - - [9.1.5.2.1.1. Must **not** be](#autogenerated_heading_10) - - [9.1.5.2.1.1.1. The following properties are required](#autogenerated_heading_11) - - [9.1.5.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 2`](#params_pattern1_pattern1_i4_allOf_i2) - - [9.1.5.3.1. If (c-l-a-s-s = Must be one of: -* "Directory" -* "File" - )](#autogenerated_heading_12) - - [9.1.5.3.1.1. Must **not** be](#autogenerated_heading_13) - - [9.1.5.3.1.1.1. The following properties are required](#autogenerated_heading_14) - - [9.1.5.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 3`](#params_pattern1_pattern1_i4_allOf_i3) - - [9.1.5.4.1. If (c-l-a-s-s = "Directory" )](#autogenerated_heading_15) - - [9.1.5.4.1.1. Must **not** be](#autogenerated_heading_16) - - [9.1.5.4.1.1.1. The following properties are required](#autogenerated_heading_17) - - [9.1.5.5. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 4`](#params_pattern1_pattern1_i4_allOf_i4) - - [9.1.5.5.1. If (c-l-a-s-s = "File" )](#autogenerated_heading_18) - - [9.1.5.5.1.1. Must **not** be](#autogenerated_heading_19) - - [9.1.5.5.1.1.1. The following properties are required](#autogenerated_heading_20) - - [9.1.5.6. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 5`](#params_pattern1_pattern1_i4_allOf_i5) - - [9.1.5.6.1. If (c-l-a-s-s = "ContentWithURIs" )](#autogenerated_heading_21) - - [9.1.5.6.1.1. Must **not** be](#autogenerated_heading_22) - - [9.1.5.6.1.1.1. The following properties are required](#autogenerated_heading_23) - - [9.1.5.7. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 6`](#params_pattern1_pattern1_i4_allOf_i6) - - [9.1.5.7.1. If (c-l-a-s-s = "Value" )](#autogenerated_heading_24) - - [9.1.5.7.1.1. Must **not** be](#autogenerated_heading_25) - - [9.1.5.7.1.1.1. The following properties are required](#autogenerated_heading_26) - - [9.1.5.7.1.2. The following properties are required](#autogenerated_heading_27) - - [9.1.5.8. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 7`](#params_pattern1_pattern1_i4_allOf_i7) - - [9.1.5.8.1. If (c-l-a-s-s = "ContentWithURIs" )](#autogenerated_heading_28) - - [9.1.5.8.1.1. Must **not** be](#autogenerated_heading_29) - - [9.1.5.8.1.1.1. The following properties are required](#autogenerated_heading_30) - - [9.1.5.8.1.1.2. Must **not** be](#autogenerated_heading_31) - - [9.1.5.8.1.1.2.1. The following properties are required](#autogenerated_heading_32) - - [9.1.5.8.1.1.3. Must **not** be](#autogenerated_heading_33) - - [9.1.5.8.1.1.3.1. The following properties are required](#autogenerated_heading_34) - - [9.1.5.8.1.1.4. The following properties are required](#autogenerated_heading_35) - - [9.1.5.8.1.2. The following properties are required](#autogenerated_heading_36) - - [9.1.5.9. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > c-l-a-s-s`](#params_pattern1_pattern1_i4_c-l-a-s-s) - - [9.1.5.10. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > value`](#params_pattern1_pattern1_i4_value) - - [9.1.5.10.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > value > oneOf > item 0`](#params_pattern1_pattern1_i4_value_oneOf_i0) - - [9.1.5.10.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > value > oneOf > item 1`](#params_pattern1_pattern1_i4_value_oneOf_i1) - - [9.1.5.10.2.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > value > oneOf > item 1 > item 1 items](#autogenerated_heading_37) - - [9.1.5.11. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular`](#params_pattern1_pattern1_i4_tabular) - - [9.1.5.11.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular > uri-columns`](#params_pattern1_pattern1_i4_tabular_uri-columns) - - [9.1.5.11.1.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular > uri-columns > uri-columns items](#autogenerated_heading_38) - - [9.1.5.11.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular > row-sep`](#params_pattern1_pattern1_i4_tabular_row-sep) - - [9.1.5.11.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular > column-sep`](#params_pattern1_pattern1_i4_tabular_column-sep) - - [9.1.5.11.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular > header-rows`](#params_pattern1_pattern1_i4_tabular_header-rows) - - [9.1.5.12. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url`](#params_pattern1_pattern1_i4_url) - - [9.1.5.12.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > PlainURI`](#params_pattern1_pattern1_i4_url_oneOf_i0) - - [9.1.5.12.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > PlaceholderURI`](#params_pattern1_pattern1_i4_url_oneOf_i1) - - [9.1.5.12.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > LicensedURI`](#params_pattern1_pattern1_i4_url_oneOf_i2) - - [9.1.5.12.3.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > uri`](#params_pattern1_pattern1_i4_url_oneOf_i2_uri) - - [9.1.5.12.3.1.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > uri > anyOf > PlainURI`](#params_pattern1_pattern1_i4_url_oneOf_i2_uri_anyOf_i0) - - [9.1.5.12.3.1.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > uri > anyOf > PlaceholderURI`](#params_pattern1_pattern1_i4_url_oneOf_i2_uri_anyOf_i1) - - [9.1.5.12.3.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > licences`](#params_pattern1_pattern1_i4_url_oneOf_i2_licences) - - [9.1.5.12.3.2.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > licences > PlainURI](#autogenerated_heading_39) - - [9.1.5.12.3.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions`](#params_pattern1_pattern1_i4_url_oneOf_i2_attributions) - - [9.1.5.12.3.3.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions > attributions items](#autogenerated_heading_40) - - [9.1.5.12.3.3.1.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions > attributions items > name`](#params_pattern1_pattern1_i4_url_oneOf_i2_attributions_items_name) - - [9.1.5.12.3.3.1.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions > attributions items > pid`](#params_pattern1_pattern1_i4_url_oneOf_i2_attributions_items_pid) - - [9.1.5.12.3.3.1.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions > attributions items > roles`](#params_pattern1_pattern1_i4_url_oneOf_i2_attributions_items_roles) - - [9.1.5.12.3.3.1.3.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions > attributions items > roles > roles items](#autogenerated_heading_41) - - [9.1.5.12.3.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > security-context`](#params_pattern1_pattern1_i4_url_oneOf_i2_security-context) - - [9.1.5.12.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3`](#params_pattern1_pattern1_i4_url_oneOf_i3) - - [9.1.5.12.4.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items](#autogenerated_heading_42) - - [9.1.5.12.4.1.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > LicensedURI`](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i0) - - [9.1.5.12.4.1.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > PlainURI`](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i1) - - [9.1.5.12.4.1.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > PlaceholderURI`](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i2) - - [9.1.5.12.4.1.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > item 3`](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i3) - - [9.1.5.12.4.1.4.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > item 3 > item 3 items](#autogenerated_heading_43) - - [9.1.5.12.4.1.4.1.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > item 3 > item 3 items > oneOf > LicensedURI`](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i3_items_oneOf_i0) - - [9.1.5.12.4.1.4.1.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > item 3 > item 3 items > oneOf > PlainURI`](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i3_items_oneOf_i1) - - [9.1.5.12.4.1.4.1.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > item 3 > item 3 items > oneOf > PlaceholderURI`](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i3_items_oneOf_i2) - - [9.1.5.13. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > secondary-urls`](#params_pattern1_pattern1_i4_secondary-urls) - - [9.1.5.14. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > preferred-name`](#params_pattern1_pattern1_i4_preferred-name) - - [9.1.5.15. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > relative-dir`](#params_pattern1_pattern1_i4_relative-dir) - - [9.1.5.16. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > security-context`](#params_pattern1_pattern1_i4_security-context) - - [9.1.5.17. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > disclosable`](#params_pattern1_pattern1_i4_disclosable) - - [9.1.5.18. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > cacheable`](#params_pattern1_pattern1_i4_cacheable) - - [9.1.5.19. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > clonable`](#params_pattern1_pattern1_i4_clonable) - - [9.1.5.20. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > globExplode`](#params_pattern1_pattern1_i4_globExplode) - - [9.1.5.21. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > autoFill`](#params_pattern1_pattern1_i4_autoFill) - - [9.1.5.22. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > autoPrefix`](#params_pattern1_pattern1_i4_autoPrefix) - - [9.1.6. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > Params`](#params_pattern1_pattern1_i5) -- [10. Property `WfExS-backend stage definition > profile`](#profile) - - [10.1. Property `WfExS-backend stage definition > profile > oneOf > item 0`](#profile_oneOf_i0) - - [10.2. Property `WfExS-backend stage definition > profile > oneOf > item 1`](#profile_oneOf_i1) - - [10.2.1. WfExS-backend stage definition > profile > oneOf > item 1 > item 1 items](#autogenerated_heading_44) -- [11. Property `WfExS-backend stage definition > environment`](#environment) - - [11.1. Pattern Property `WfExS-backend stage definition > environment > EnvVar`](#environment_pattern1) - - [11.1.1. Property `WfExS-backend stage definition > environment > ^[^=\0]+$ > oneOf > item 0`](#environment_pattern1_pattern1_i0) - - [11.1.2. Property `WfExS-backend stage definition > environment > ^[^=\0]+$ > oneOf > DirFile`](#environment_pattern1_pattern1_i1) -- [12. Property `WfExS-backend stage definition > outputs`](#outputs) - - [12.1. Pattern Property `WfExS-backend stage definition > outputs > ^[^:;]+$`](#outputs_pattern1) - - [12.1.1. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > c-l-a-s-s`](#outputs_pattern1_c-l-a-s-s) - - [12.1.2. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality`](#outputs_pattern1_cardinality) - - [12.1.2.1. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality > oneOf > item 0`](#outputs_pattern1_cardinality_oneOf_i0) - - [12.1.2.2. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality > oneOf > item 1`](#outputs_pattern1_cardinality_oneOf_i1) - - [12.1.2.3. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality > oneOf > item 2`](#outputs_pattern1_cardinality_oneOf_i2) - - [12.1.2.3.1. WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality > oneOf > item 2 > item 2 item 0](#autogenerated_heading_45) - - [12.1.2.3.2. WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality > oneOf > item 2 > item 2 item 1](#autogenerated_heading_46) - - [12.1.3. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > preferredName`](#outputs_pattern1_preferredName) - - [12.1.4. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > fillFrom`](#outputs_pattern1_fillFrom) - - [12.1.5. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > syntheticOutput`](#outputs_pattern1_syntheticOutput) - - [12.1.6. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > glob`](#outputs_pattern1_glob) -- [13. Property `WfExS-backend stage definition > default_actions`](#default_actions) - -**Title:** WfExS-backend stage definition - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | - -**Description:** WfExS-backend stage definition file (EOSC-Life Demonstrator 7 JSON Schemas) - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| -------------------------------------- | ------- | ----------------- | ---------- | ------------------------- | --------------------------------------------------------------------------------------------------- | -| - [trs_endpoint](#trs_endpoint ) | No | string | No | In #/definitions/PlainURI | The optional TRS endpoing | -| - [version](#version ) | No | string or integer | No | - | Workflow version | -| + [workflow_id](#workflow_id ) | No | Combination | No | - | - | -| - [nickname](#nickname ) | No | string | No | - | A friendly nickname (prefix) for the instances | -| - [paranoid_mode](#paranoid_mode ) | No | boolean | No | - | - | -| - [workflow_type](#workflow_type ) | No | string | No | - | The optional, forced workflow type | -| - [workflow_config](#workflow_config ) | No | object | No | - | - | -| - [placeholders](#placeholders ) | No | object | No | - | - | -| - [params](#params ) | No | object | No | In #/definitions/Params | - | -| - [profile](#profile ) | No | Combination | No | - | For engines which support profiles, like Nextflow or snakemake, if defined, the profile/s to enable | -| - [environment](#environment ) | No | object | No | - | - | -| - [outputs](#outputs ) | No | object | No | - | - | -| - [default_actions](#default_actions ) | No | array | No | - | - | - -## 1. Property `WfExS-backend stage definition > trs_endpoint` - -**Title:** The optional TRS endpoing - -| | | -| -------------- | ---------------------- | -| **Type** | `string` | -| **Required** | No | -| **Defined in** | #/definitions/PlainURI | - -**Description:** If this key is set, it will tell the GA4GH TRS service where to look for the workflow_id (and optional version) - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -## 2. Property `WfExS-backend stage definition > version` - -**Title:** Workflow version - -| | | -| ------------ | ------------------- | -| **Type** | `string or integer` | -| **Required** | No | - -**Description:** If trs_enpoint key is set, it will tell the version of the workflow_id to look for at GA4GH TRS - -## 3. Property `WfExS-backend stage definition > workflow_id` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | Yes | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Any of(Option) | -| --------------------------------- | -| [PlainURI](#workflow_id_anyOf_i0) | -| [item 1](#workflow_id_anyOf_i1) | -| [item 2](#workflow_id_anyOf_i2) | - -### 3.1. Property `WfExS-backend stage definition > workflow_id > anyOf > PlainURI` - -| | | -| ---------------------- | ----------------------------- | -| **Type** | `string` | -| **Required** | No | -| **Same definition as** | [trs_endpoint](#trs_endpoint) | - -### 3.2. Property `WfExS-backend stage definition > workflow_id > anyOf > item 1` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -### 3.3. Property `WfExS-backend stage definition > workflow_id > anyOf > item 2` - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | - -## 4. Property `WfExS-backend stage definition > nickname` - -**Title:** A friendly nickname (prefix) for the instances - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -## 5. Property `WfExS-backend stage definition > paranoid_mode` - -| | | -| ------------ | --------- | -| **Type** | `boolean` | -| **Required** | No | -| **Default** | `false` | - -## 6. Property `WfExS-backend stage definition > workflow_type` - -**Title:** The optional, forced workflow type - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -**Description:** When this key is set, it is forcing the workflow type. WfExS-backend is usually able to identify the workflow type, unless there are two intertwined workflows in the same location - -## 7. Property `WfExS-backend stage definition > workflow_config` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| -------------------------------------------------------------- | ------- | ---------------- | ---------- | ---------- | ------------------------------------------------------ | -| - [secure](#workflow_config_secure ) | No | boolean | No | - | - | -| - [containerType](#workflow_config_containerType ) | No | enum (of string) | No | - | Container technology type to be used for this workflow | -| - [writable_containers](#workflow_config_writable_containers ) | No | boolean | No | - | - | -| - [nextflow](#workflow_config_nextflow ) | No | object | No | - | - | -| - [cwl](#workflow_config_cwl ) | No | object | No | - | - | - -### 7.1. Property `WfExS-backend stage definition > workflow_config > secure` - -| | | -| ------------ | --------- | -| **Type** | `boolean` | -| **Required** | No | - -### 7.2. Property `WfExS-backend stage definition > workflow_config > containerType` - -**Title:** Container technology type to be used for this workflow - -| | | -| ------------ | ------------------ | -| **Type** | `enum (of string)` | -| **Required** | No | - -**Description:** Type of container technology to be used when this staging scenario is instantiated. Supported types are: -- Singularity (default). -- Docker. -- Podman -- No containerisation technology (discouraged, but needed for some workflows) -Encrypted working directories are unsupported when Docker or Podman are used due technological limitations - -Must be one of: -* "singularity" -* "docker" -* "podman" -* "none" - -### 7.3. Property `WfExS-backend stage definition > workflow_config > writable_containers` - -| | | -| ------------ | --------- | -| **Type** | `boolean` | -| **Required** | No | -| **Default** | `false` | - -### 7.4. Property `WfExS-backend stage definition > workflow_config > nextflow` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| --------------------------------------------------------------- | ------- | ----------- | ---------- | ---------- | ------------------------------------------------ | -| - [version](#workflow_config_nextflow_version ) | No | string | No | - | - | -| - [maxRetries](#workflow_config_nextflow_maxRetries ) | No | integer | No | - | Retries in docker mode | -| - [maxProcesses](#workflow_config_nextflow_maxProcesses ) | No | Combination | No | - | (deprecated) Max number of CPUs | -| - [maxCPUs](#workflow_config_nextflow_maxCPUs ) | No | Combination | No | - | (deprecated) Max number of CPUs | -| - [maxTaskDuration](#workflow_config_nextflow_maxTaskDuration ) | No | Combination | No | - | Max task duration | -| - [profile](#workflow_config_nextflow_profile ) | No | Combination | No | - | (deprecated) If defined, the profile/s to enable | - -#### 7.4.1. Property `WfExS-backend stage definition > workflow_config > nextflow > version` - -| | | -| ------------ | ----------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"19.04.1"` | - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -#### 7.4.2. Property `WfExS-backend stage definition > workflow_config > nextflow > maxRetries` - -**Title:** Retries in docker mode - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | -| **Default** | `5` | - -**Description:** Retries when `engineMode` is `docker`. -Retries system was introduced when using docker-in-docker pattern because an insidious -bug happens sometimes. See https://forums.docker.com/t/any-known-problems-with-symlinks-on-bind-mounts/32138 - -| Restrictions | | -| ------------ | ------ | -| **Minimum** | ≥ 0 | - -#### 7.4.3. Property `WfExS-backend stage definition > workflow_config > nextflow > maxProcesses` - -**Title:** (deprecated) Max number of CPUs - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** Number of CPUs to be used by Nextflow. When this key has an explicit value of `null`, it depends on Nextflow criteria, which tries creating as many processes as available CPUs, spawning jobs in parallel. Not declaring it, or declaring and explicit value, imposes a limitation in the number of concurrent processes - -| One of(Option) | -| --------------------------------------------------------- | -| [item 0](#workflow_config_nextflow_maxProcesses_oneOf_i0) | -| [item 1](#workflow_config_nextflow_maxProcesses_oneOf_i1) | - -##### 7.4.3.1. Property `WfExS-backend stage definition > workflow_config > nextflow > maxProcesses > oneOf > item 0` - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | -| **Default** | `4` | - -| Restrictions | | -| ------------ | ------ | -| **Minimum** | ≥ 1 | - -##### 7.4.3.2. Property `WfExS-backend stage definition > workflow_config > nextflow > maxProcesses > oneOf > item 1` - -| | | -| ------------ | ------ | -| **Type** | `null` | -| **Required** | No | - -#### 7.4.4. Property `WfExS-backend stage definition > workflow_config > nextflow > maxCPUs` - -**Title:** (deprecated) Max number of CPUs - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** Number of CPUs to be used by Nextflow. When this key has an explicit value of `null`, it depends on Nextflow criteria, which tries creating as many processes as available CPUs, spawning jobs in parallel. Not declaring it, or declaring and explicit value, imposes a limitation in the number of concurrent processes - -| One of(Option) | -| ---------------------------------------------------- | -| [item 0](#workflow_config_nextflow_maxCPUs_oneOf_i0) | -| [item 1](#workflow_config_nextflow_maxCPUs_oneOf_i1) | - -##### 7.4.4.1. Property `WfExS-backend stage definition > workflow_config > nextflow > maxCPUs > oneOf > item 0` - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | -| **Default** | `4` | - -| Restrictions | | -| ------------ | ------ | -| **Minimum** | ≥ 1 | - -##### 7.4.4.2. Property `WfExS-backend stage definition > workflow_config > nextflow > maxCPUs > oneOf > item 1` - -| | | -| ------------ | ------ | -| **Type** | `null` | -| **Required** | No | - -#### 7.4.5. Property `WfExS-backend stage definition > workflow_config > nextflow > maxTaskDuration` - -**Title:** Max task duration - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** With this parameter it is possible to override the max task time declared for processes. This is needed for workflows which are not so customizable - -| One of(Option) | -| ------------------------------------------------------------ | -| [item 0](#workflow_config_nextflow_maxTaskDuration_oneOf_i0) | -| [item 1](#workflow_config_nextflow_maxTaskDuration_oneOf_i1) | - -##### 7.4.5.1. Property `WfExS-backend stage definition > workflow_config > nextflow > maxTaskDuration > oneOf > item 0` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -| Restrictions | | -| --------------------------------- | --------------------------------------------------------------------------- | -| **Must match regular expression** | ```^[0-9]+.*$``` [Test](https://regex101.com/?regex=%5E%5B0-9%5D%2B.%2A%24) | - -##### 7.4.5.2. Property `WfExS-backend stage definition > workflow_config > nextflow > maxTaskDuration > oneOf > item 1` - -| | | -| ------------ | ------ | -| **Type** | `null` | -| **Required** | No | - -#### 7.4.6. Property `WfExS-backend stage definition > workflow_config > nextflow > profile` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** (deprecated) If defined, the profile/s to enable - -| One of(Option) | -| ---------------------------------------------------- | -| [item 0](#workflow_config_nextflow_profile_oneOf_i0) | -| [item 1](#workflow_config_nextflow_profile_oneOf_i1) | - -##### 7.4.6.1. Property `WfExS-backend stage definition > workflow_config > nextflow > profile > oneOf > item 0` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -| Restrictions | | -| --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Min length** | 1 | -| **Must match regular expression** | ```^[^, ]+[ ]*(,[ ]*[^, ]+[ ]*)*$``` [Test](https://regex101.com/?regex=%5E%5B%5E%2C+%09%5D%2B%5B+%09%5D%2A%28%2C%5B+%09%5D%2A%5B%5E%2C+%09%5D%2B%5B+%09%5D%2A%29%2A%24) | - -##### 7.4.6.2. Property `WfExS-backend stage definition > workflow_config > nextflow > profile > oneOf > item 1` - -| | | -| ------------ | ----------------- | -| **Type** | `array of string` | -| **Required** | No | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | 1 | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| ---------------------------------------------------------------- | ----------- | -| [item 1 items](#workflow_config_nextflow_profile_oneOf_i1_items) | - | - -###### 7.4.6.2.1. WfExS-backend stage definition > workflow_config > nextflow > profile > oneOf > item 1 > item 1 items - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -| Restrictions | | -| --------------------------------- | ----------------------------------------------------------------------- | -| **Min length** | 1 | -| **Must match regular expression** | ```^[^,]+$``` [Test](https://regex101.com/?regex=%5E%5B%5E%2C%5D%2B%24) | - -### 7.5. Property `WfExS-backend stage definition > workflow_config > cwl` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------------ | ------- | ------ | ---------- | ---------- | ----------------- | -| - [version](#workflow_config_cwl_version ) | No | string | No | - | - | - -#### 7.5.1. Property `WfExS-backend stage definition > workflow_config > cwl > version` - -| | | -| ------------ | ---------------------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"3.1.20210628163208"` | - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -## 8. Property `WfExS-backend stage definition > placeholders` - -| | | -| ------------------------- | ---------------------------------------------------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Should-conform]](#placeholders_additionalProperties "Each additional property must conform to the following schema") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ----------------------------------------- | ------- | ------------------------- | ---------- | ---------- | ----------------- | -| - [](#placeholders_additionalProperties ) | No | number, integer or string | No | - | - | - -### 8.1. Property `WfExS-backend stage definition > placeholders > additionalProperties` - -| | | -| ------------ | --------------------------- | -| **Type** | `number, integer or string` | -| **Required** | No | - -## 9. Property `WfExS-backend stage definition > params` - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | -| **Defined in** | #/definitions/Params | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| -------------------------------------------- | ------- | ------ | ---------- | ---------------------- | ----------------- | -| - [^(?!c-l-a-s-s)[^:;]+$](#params_pattern1 ) | Yes | object | No | In #/definitions/Param | - | - -### 9.1. Pattern Property `WfExS-backend stage definition > params > Param` -> All properties whose name matches the regular expression -```^(?!c-l-a-s-s)[^:;]+$``` ([Test](https://regex101.com/?regex=%5E%28%3F%21c-l-a-s-s%29%5B%5E%3A%3B%5D%2B%24)) -must respect the following conditions - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| **Defined in** | #/definitions/Param | - -| One of(Option) | -| --------------------------------------- | -| [item 0](#params_pattern1_pattern1_i0) | -| [item 1](#params_pattern1_pattern1_i1) | -| [item 2](#params_pattern1_pattern1_i2) | -| [item 3](#params_pattern1_pattern1_i3) | -| [DirFile](#params_pattern1_pattern1_i4) | -| [Params](#params_pattern1_pattern1_i5) | - -#### 9.1.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 0` - -| | | -| ------------ | --------------------------- | -| **Type** | `string, number or boolean` | -| **Required** | No | - -#### 9.1.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 1` - -| | | -| ------------ | ----------------- | -| **Type** | `array of string` | -| **Required** | No | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | N/A | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| -------------------------------------------------- | ----------- | -| [item 1 items](#params_pattern1_pattern1_i1_items) | - | - -##### 9.1.2.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 1 > item 1 items - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -#### 9.1.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 2` - -| | | -| ------------ | ----------------- | -| **Type** | `array of number` | -| **Required** | No | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | N/A | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| -------------------------------------------------- | ----------- | -| [item 2 items](#params_pattern1_pattern1_i2_items) | - | - -##### 9.1.3.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 2 > item 2 items - -| | | -| ------------ | -------- | -| **Type** | `number` | -| **Required** | No | - -#### 9.1.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 3` - -| | | -| ------------ | ------------------ | -| **Type** | `array of boolean` | -| **Required** | No | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | N/A | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| -------------------------------------------------- | ----------- | -| [item 3 items](#params_pattern1_pattern1_i3_items) | - | - -##### 9.1.4.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 3 > item 3 items - -| | | -| ------------ | --------- | -| **Type** | `boolean` | -| **Required** | No | - -#### 9.1.5. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > DirFile` - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | -| **Defined in** | #/definitions/DirFile | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| -------------------------------------------------------------------- | ------- | ----------------- | ---------- | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| + [c-l-a-s-s](#params_pattern1_pattern1_i4_c-l-a-s-s ) | No | enum (of string) | No | - | - | -| - [value](#params_pattern1_pattern1_i4_value ) | No | Combination | No | - | When 'c-l-a-s-s' is a single file or a value, the assigned value | -| - [tabular](#params_pattern1_pattern1_i4_tabular ) | No | object | No | - | When it is content with URIs, we are telling it is a tabular one with this key. URIs are fetched, and the absolute paths replace them in the generated content tab | -| - [url](#params_pattern1_pattern1_i4_url ) | No | object | No | In #/definitions/InputURI | The URL(s) / URI(s) where this input is available | -| - [secondary-urls](#params_pattern1_pattern1_i4_secondary-urls ) | No | object | No | Same as [url](#params_pattern1_pattern1_i4_url ) | Secondary URLs / URIs are pointing to contents which will feed secondary inputs (CWL concept) | -| - [preferred-name](#params_pattern1_pattern1_i4_preferred-name ) | No | boolean or string | No | - | Preferred base name / relative path for this input, instead of the derived one from the URL | -| - [relative-dir](#params_pattern1_pattern1_i4_relative-dir ) | No | boolean or string | No | - | Put contents fetched for this input in this relative directory. This option does not affect preferred-name | -| - [security-context](#params_pattern1_pattern1_i4_security-context ) | No | string | No | - | Use an explicitly named security context | -| - [disclosable](#params_pattern1_pattern1_i4_disclosable ) | No | boolean | No | - | Whether this input contents can be included in RO-Crates or exported | -| - [cacheable](#params_pattern1_pattern1_i4_cacheable ) | No | boolean | No | - | Whether a copy of this input contents can be kept locally outside the working directory | -| - [clonable](#params_pattern1_pattern1_i4_clonable ) | No | boolean | No | - | Whether a copy of this input contents can be kept locally inside the working directory | -| - [globExplode](#params_pattern1_pattern1_i4_globExplode ) | No | string | No | - | When this is set, and the class is directory, it helps filtering in what it should be included | -| - [autoFill](#params_pattern1_pattern1_i4_autoFill ) | No | boolean | No | - | When this key is true, the directory or file is considered an output one | -| - [autoPrefix](#params_pattern1_pattern1_i4_autoPrefix ) | No | boolean | No | - | When autoFill is true and this parameter is false, this directory is mapped to the parent output one for this execution. When both autoFill and this parameter are true, an output file or directory name is assigned, based on its complete param name | - -| All of(Requirement) | -| ----------------------------------------------- | -| [item 0](#params_pattern1_pattern1_i4_allOf_i0) | -| [item 1](#params_pattern1_pattern1_i4_allOf_i1) | -| [item 2](#params_pattern1_pattern1_i4_allOf_i2) | -| [item 3](#params_pattern1_pattern1_i4_allOf_i3) | -| [item 4](#params_pattern1_pattern1_i4_allOf_i4) | -| [item 5](#params_pattern1_pattern1_i4_allOf_i5) | -| [item 6](#params_pattern1_pattern1_i4_allOf_i6) | -| [item 7](#params_pattern1_pattern1_i4_allOf_i7) | - -##### 9.1.5.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 0` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.1.1. If (c-l-a-s-s = Must be one of: -* "Directory" -* "File" - ) - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.1.1.1. Must **not** be - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.1.1.1.1. The following properties are required -* value -* tabular -* autoFill -* autoPrefix - -##### 9.1.5.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 1` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.2.1. If (c-l-a-s-s = "ContentWithURIs" ) - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.2.1.1. Must **not** be - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.2.1.1.1. The following properties are required -* value -* autoFill -* autoPrefix - -##### 9.1.5.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 2` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.3.1. If (c-l-a-s-s = Must be one of: -* "Directory" -* "File" - ) - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.3.1.1. Must **not** be - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.3.1.1.1. The following properties are required -* value -* tabular -* url -* secondary-urls -* security-context -* globExplode - -##### 9.1.5.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 3` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.4.1. If (c-l-a-s-s = "Directory" ) - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.4.1.1. Must **not** be - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.4.1.1.1. The following properties are required -* value - -##### 9.1.5.5. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 4` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.5.1. If (c-l-a-s-s = "File" ) - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.5.1.1. Must **not** be - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.5.1.1.1. The following properties are required -* url -* tabular -* secondary-urls -* security-context -* globExplode -* autoFill -* autoPrefix - -##### 9.1.5.6. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 5` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.6.1. If (c-l-a-s-s = "ContentWithURIs" ) - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.6.1.1. Must **not** be - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.6.1.1.1. The following properties are required -* url -* secondary-urls -* security-context -* globExplode -* autoFill -* autoPrefix - -##### 9.1.5.7. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 6` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.7.1. If (c-l-a-s-s = "Value" ) - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.7.1.1. Must **not** be - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.7.1.1.1. The following properties are required -* tabular -* url -* secondary-urls -* preferred-name -* relative-dir -* security-context -* globExplode -* autoFill -* autoPrefix -* cacheable -* clonable - -###### 9.1.5.7.1.2. The following properties are required -* value - -##### 9.1.5.8. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > allOf > item 7` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.8.1. If (c-l-a-s-s = "ContentWithURIs" ) - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.8.1.1. Must **not** be - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.8.1.1.1. The following properties are required -* globExplode -* autoFill -* autoPrefix - - If(_complex condition_) - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.8.1.1.2. Must **not** be - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.8.1.1.2.1. The following properties are required -* value - - IfNot(_complex condition_) - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.8.1.1.3. Must **not** be - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -###### 9.1.5.8.1.1.3.1. The following properties are required -* url -* secondary-urls -* security-context - -###### 9.1.5.8.1.1.4. The following properties are required -* value - -###### 9.1.5.8.1.2. The following properties are required -* tabular - -##### 9.1.5.9. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > c-l-a-s-s` - -| | | -| ------------ | ------------------ | -| **Type** | `enum (of string)` | -| **Required** | Yes | - -Must be one of: -* "File" -* "Directory" -* "Value" -* "ContentWithURIs" - -##### 9.1.5.10. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > value` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** When 'c-l-a-s-s' is a single file or a value, the assigned value - -| One of(Option) | -| ----------------------------------------------------- | -| [item 0](#params_pattern1_pattern1_i4_value_oneOf_i0) | -| [item 1](#params_pattern1_pattern1_i4_value_oneOf_i1) | - -###### 9.1.5.10.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > value > oneOf > item 0` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -###### 9.1.5.10.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > value > oneOf > item 1` - -| | | -| ------------ | ----------------- | -| **Type** | `array of string` | -| **Required** | No | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | 1 | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| ----------------------------------------------------------------- | ----------- | -| [item 1 items](#params_pattern1_pattern1_i4_value_oneOf_i1_items) | - | - -###### 9.1.5.10.2.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > value > oneOf > item 1 > item 1 items - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -##### 9.1.5.11. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** When it is content with URIs, we are telling it is a tabular one with this key. URIs are fetched, and the absolute paths replace them in the generated content tab - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------------------------------------ | ------- | ---------------- | ---------- | ---------- | --------------------------------------------------------------------- | -| + [uri-columns](#params_pattern1_pattern1_i4_tabular_uri-columns ) | No | array of integer | No | - | The columns where URIs to be fetched are found | -| - [row-sep](#params_pattern1_pattern1_i4_tabular_row-sep ) | No | enum (of string) | No | - | The string used to split the tabulated content by rows | -| + [column-sep](#params_pattern1_pattern1_i4_tabular_column-sep ) | No | string | No | - | The regular expression used to split the tabulated content by columns | -| - [header-rows](#params_pattern1_pattern1_i4_tabular_header-rows ) | No | integer | No | - | How many header rows should be skipped? | - -###### 9.1.5.11.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular > uri-columns` - -| | | -| ------------ | ------------------ | -| **Type** | `array of integer` | -| **Required** | Yes | - -**Description:** The columns where URIs to be fetched are found - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | 1 | -| **Max items** | N/A | -| **Items unicity** | True | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| --------------------------------------------------------------------------- | ----------- | -| [uri-columns items](#params_pattern1_pattern1_i4_tabular_uri-columns_items) | - | - -###### 9.1.5.11.1.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular > uri-columns > uri-columns items - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | - -###### 9.1.5.11.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular > row-sep` - -| | | -| ------------ | ------------------ | -| **Type** | `enum (of string)` | -| **Required** | No | -| **Default** | `"\n"` | - -**Description:** The string used to split the tabulated content by rows - -Must be one of: -* "\n" -* "\r" -* "\t\n" - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -###### 9.1.5.11.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular > column-sep` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -**Description:** The regular expression used to split the tabulated content by columns - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -###### 9.1.5.11.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > tabular > header-rows` - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | -| **Default** | `0` | - -**Description:** How many header rows should be skipped? - -##### 9.1.5.12. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| **Defined in** | #/definitions/InputURI | - -**Description:** The URL(s) / URI(s) where this input is available - -| One of(Option) | -| ----------------------------------------------------------- | -| [PlainURI](#params_pattern1_pattern1_i4_url_oneOf_i0) | -| [PlaceholderURI](#params_pattern1_pattern1_i4_url_oneOf_i1) | -| [LicensedURI](#params_pattern1_pattern1_i4_url_oneOf_i2) | -| [item 3](#params_pattern1_pattern1_i4_url_oneOf_i3) | - -###### 9.1.5.12.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > PlainURI` - -| | | -| ---------------------- | ----------------------------- | -| **Type** | `string` | -| **Required** | No | -| **Same definition as** | [trs_endpoint](#trs_endpoint) | - -###### 9.1.5.12.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > PlaceholderURI` - -| | | -| -------------- | ---------------------------- | -| **Type** | `string` | -| **Required** | No | -| **Defined in** | #/definitions/PlaceholderURI | - -| Restrictions | | -| --------------------------------- | ----------------------------------------------------------------------------------- | -| **Min length** | 1 | -| **Must match regular expression** | ```$\{[^}]+\}``` [Test](https://regex101.com/?regex=%24%5C%7B%5B%5E%7D%5D%2B%5C%7D) | - -###### 9.1.5.12.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > LicensedURI` - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | -| **Defined in** | #/definitions/LicensedURI | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| --------------------------------------------------------------------------------- | ------- | --------------- | ---------- | ---------- | ----------------------- | -| + [uri](#params_pattern1_pattern1_i4_url_oneOf_i2_uri ) | No | Combination | No | - | The URI of the resource | -| - [licences](#params_pattern1_pattern1_i4_url_oneOf_i2_licences ) | No | array | No | - | - | -| - [attributions](#params_pattern1_pattern1_i4_url_oneOf_i2_attributions ) | No | array of object | No | - | - | -| - [security-context](#params_pattern1_pattern1_i4_url_oneOf_i2_security-context ) | No | string | No | - | - | - -###### 9.1.5.12.3.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > uri` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | Yes | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** The URI of the resource - -| Any of(Option) | -| ------------------------------------------------------------------------ | -| [PlainURI](#params_pattern1_pattern1_i4_url_oneOf_i2_uri_anyOf_i0) | -| [PlaceholderURI](#params_pattern1_pattern1_i4_url_oneOf_i2_uri_anyOf_i1) | - -###### 9.1.5.12.3.1.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > uri > anyOf > PlainURI` - -| | | -| ---------------------- | ----------------------------- | -| **Type** | `string` | -| **Required** | No | -| **Same definition as** | [trs_endpoint](#trs_endpoint) | - -###### 9.1.5.12.3.1.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > uri > anyOf > PlaceholderURI` - -| | | -| ---------------------- | ------------------------------------------------------------------------------------- | -| **Type** | `string` | -| **Required** | No | -| **Same definition as** | [params_pattern1_pattern1_i4_url_oneOf_i1](#params_pattern1_pattern1_i4_url_oneOf_i1) | - -###### 9.1.5.12.3.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > licences` - -| | | -| ------------ | ------- | -| **Type** | `array` | -| **Required** | No | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | N/A | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| -------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| [PlainURI](#params_pattern1_pattern1_i4_url_oneOf_i2_licences_items) | URL to the description of the licence of the data. And by default, no permission to use or distribute it | - -###### 9.1.5.12.3.2.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > licences > PlainURI - -| | | -| -------------- | --------------------------------------------- | -| **Type** | `string` | -| **Required** | No | -| **Default** | `"https://choosealicense.com/no-permission/"` | -| **Defined in** | #/definitions/PlainURI | - -**Description:** URL to the description of the licence of the data. And by default, no permission to use or distribute it - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -###### 9.1.5.12.3.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions` - -| | | -| ------------ | ----------------- | -| **Type** | `array of object` | -| **Required** | No | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | N/A | -| **Max items** | N/A | -| **Items unicity** | True | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| ---------------------------------------------------------------------------------- | ----------- | -| [attributions items](#params_pattern1_pattern1_i4_url_oneOf_i2_attributions_items) | - | - -###### 9.1.5.12.3.3.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions > attributions items - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------------------------------------------------ | ------- | ------------------------- | ---------- | -------------------------------------- | ------------------------------------------------------------------------------------------------------------- | -| + [name](#params_pattern1_pattern1_i4_url_oneOf_i2_attributions_items_name ) | No | string | No | - | Name of the author | -| + [pid](#params_pattern1_pattern1_i4_url_oneOf_i2_attributions_items_pid ) | No | string | No | Same as [trs_endpoint](#trs_endpoint ) | A unique way to represent this author, either through her/his ORCID or another permanent, representative link | -| + [roles](#params_pattern1_pattern1_i4_url_oneOf_i2_attributions_items_roles ) | No | array of enum (of string) | No | - | - | - -###### 9.1.5.12.3.3.1.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions > attributions items > name` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | Yes | - -**Description:** Name of the author - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -###### 9.1.5.12.3.3.1.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions > attributions items > pid` - -| | | -| ---------------------- | ----------------------------- | -| **Type** | `string` | -| **Required** | Yes | -| **Same definition as** | [trs_endpoint](#trs_endpoint) | - -**Description:** A unique way to represent this author, either through her/his ORCID or another permanent, representative link - -###### 9.1.5.12.3.3.1.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions > attributions items > roles` - -| | | -| ------------ | --------------------------- | -| **Type** | `array of enum (of string)` | -| **Required** | Yes | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | 1 | -| **Max items** | N/A | -| **Items unicity** | True | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| --------------------------------------------------------------------------------------- | ----------- | -| [roles items](#params_pattern1_pattern1_i4_url_oneOf_i2_attributions_items_roles_items) | - | - -###### 9.1.5.12.3.3.1.3.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > attributions > attributions items > roles > roles items - -| | | -| ------------ | ------------------ | -| **Type** | `enum (of string)` | -| **Required** | No | - -Must be one of: -* "conceptualization" -* "data-curation" -* "formal-analysis" -* "funding-acquisition" -* "investigation" -* "methodology" -* "project-administration" -* "resources" -* "software" -* "supervision" -* "validation" -* "visualization" -* "writing-original-draft" -* "writing-review-editing" - -###### 9.1.5.12.3.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 2 > security-context` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -| Restrictions | | -| --------------------------------- | --------------------------------------------------------------------------- | -| **Min length** | 1 | -| **Must match regular expression** | ```^[^:;]+$``` [Test](https://regex101.com/?regex=%5E%5B%5E%3A%3B%5D%2B%24) | - -###### 9.1.5.12.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3` - -| | | -| ------------ | ------- | -| **Type** | `array` | -| **Required** | No | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | 1 | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| --------------------------------------------------------------- | ----------- | -| [item 3 items](#params_pattern1_pattern1_i4_url_oneOf_i3_items) | - | - -###### 9.1.5.12.4.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| One of(Option) | -| -------------------------------------------------------------------------- | -| [LicensedURI](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i0) | -| [PlainURI](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i1) | -| [PlaceholderURI](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i2) | -| [item 3](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i3) | - -###### 9.1.5.12.4.1.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > LicensedURI` - -| | | -| ------------------------- | ------------------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | -| **Same definition as** | [params_pattern1_pattern1_i4_url_oneOf_i2](#params_pattern1_pattern1_i4_url_oneOf_i2) | - -###### 9.1.5.12.4.1.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > PlainURI` - -| | | -| ---------------------- | ----------------------------- | -| **Type** | `string` | -| **Required** | No | -| **Same definition as** | [trs_endpoint](#trs_endpoint) | - -###### 9.1.5.12.4.1.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > PlaceholderURI` - -| | | -| ---------------------- | ------------------------------------------------------------------------------------- | -| **Type** | `string` | -| **Required** | No | -| **Same definition as** | [params_pattern1_pattern1_i4_url_oneOf_i1](#params_pattern1_pattern1_i4_url_oneOf_i1) | - -###### 9.1.5.12.4.1.4. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > item 3` - -| | | -| ------------ | ------- | -| **Type** | `array` | -| **Required** | No | - -**Description:** This element is an array of alternate URLs, so any of them provide the very same resources - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | 2 | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| ------------------------------------------------------------------------------ | ----------- | -| [item 3 items](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i3_items) | - | - -###### 9.1.5.12.4.1.4.1. WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > item 3 > item 3 items - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| One of(Option) | -| ----------------------------------------------------------------------------------------- | -| [LicensedURI](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i3_items_oneOf_i0) | -| [PlainURI](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i3_items_oneOf_i1) | -| [PlaceholderURI](#params_pattern1_pattern1_i4_url_oneOf_i3_items_oneOf_i3_items_oneOf_i2) | - -###### 9.1.5.12.4.1.4.1.1. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > item 3 > item 3 items > oneOf > LicensedURI` - -| | | -| ------------------------- | ------------------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | -| **Same definition as** | [params_pattern1_pattern1_i4_url_oneOf_i2](#params_pattern1_pattern1_i4_url_oneOf_i2) | - -###### 9.1.5.12.4.1.4.1.2. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > item 3 > item 3 items > oneOf > PlainURI` - -| | | -| ---------------------- | ----------------------------- | -| **Type** | `string` | -| **Required** | No | -| **Same definition as** | [trs_endpoint](#trs_endpoint) | - -###### 9.1.5.12.4.1.4.1.3. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > url > oneOf > item 3 > item 3 items > oneOf > item 3 > item 3 items > oneOf > PlaceholderURI` - -| | | -| ---------------------- | ------------------------------------------------------------------------------------- | -| **Type** | `string` | -| **Required** | No | -| **Same definition as** | [params_pattern1_pattern1_i4_url_oneOf_i1](#params_pattern1_pattern1_i4_url_oneOf_i1) | - -##### 9.1.5.13. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > secondary-urls` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| **Same definition as** | [url](#params_pattern1_pattern1_i4_url) | - -**Description:** Secondary URLs / URIs are pointing to contents which will feed secondary inputs (CWL concept) - -##### 9.1.5.14. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > preferred-name` - -| | | -| ------------ | ------------------- | -| **Type** | `boolean or string` | -| **Required** | No | -| **Default** | `false` | - -**Description:** Preferred base name / relative path for this input, instead of the derived one from the URL - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -##### 9.1.5.15. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > relative-dir` - -| | | -| ------------ | ------------------- | -| **Type** | `boolean or string` | -| **Required** | No | -| **Default** | `false` | - -**Description:** Put contents fetched for this input in this relative directory. This option does not affect preferred-name - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -##### 9.1.5.16. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > security-context` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -**Description:** Use an explicitly named security context - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -##### 9.1.5.17. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > disclosable` - -| | | -| ------------ | --------- | -| **Type** | `boolean` | -| **Required** | No | -| **Default** | `true` | - -**Description:** Whether this input contents can be included in RO-Crates or exported - -##### 9.1.5.18. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > cacheable` - -| | | -| ------------ | --------- | -| **Type** | `boolean` | -| **Required** | No | -| **Default** | `true` | - -**Description:** Whether a copy of this input contents can be kept locally outside the working directory - -##### 9.1.5.19. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > clonable` - -| | | -| ------------ | --------- | -| **Type** | `boolean` | -| **Required** | No | -| **Default** | `true` | - -**Description:** Whether a copy of this input contents can be kept locally inside the working directory - -##### 9.1.5.20. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > globExplode` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -**Description:** When this is set, and the class is directory, it helps filtering in what it should be included - -##### 9.1.5.21. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > autoFill` - -| | | -| ------------ | --------- | -| **Type** | `boolean` | -| **Required** | No | -| **Default** | `false` | - -**Description:** When this key is true, the directory or file is considered an output one - -##### 9.1.5.22. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > item 4 > autoPrefix` - -| | | -| ------------ | --------- | -| **Type** | `boolean` | -| **Required** | No | -| **Default** | `false` | - -**Description:** When autoFill is true and this parameter is false, this directory is mapped to the parent output one for this execution. When both autoFill and this parameter are true, an output file or directory name is assigned, based on its complete param name - -#### 9.1.6. Property `WfExS-backend stage definition > params > ^(?!c-l-a-s-s)[^:;]+$ > oneOf > Params` - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | -| **Same definition as** | [params](#params) | - -## 10. Property `WfExS-backend stage definition > profile` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -**Description:** For engines which support profiles, like Nextflow or snakemake, if defined, the profile/s to enable - -| One of(Option) | -| --------------------------- | -| [item 0](#profile_oneOf_i0) | -| [item 1](#profile_oneOf_i1) | - -### 10.1. Property `WfExS-backend stage definition > profile > oneOf > item 0` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -| Restrictions | | -| --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Min length** | 1 | -| **Must match regular expression** | ```^[^, ]+[ ]*(,[ ]*[^, ]+[ ]*)*$``` [Test](https://regex101.com/?regex=%5E%5B%5E%2C+%09%5D%2B%5B+%09%5D%2A%28%2C%5B+%09%5D%2A%5B%5E%2C+%09%5D%2B%5B+%09%5D%2A%29%2A%24) | - -### 10.2. Property `WfExS-backend stage definition > profile > oneOf > item 1` - -| | | -| ------------ | ----------------- | -| **Type** | `array of string` | -| **Required** | No | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | 1 | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| --------------------------------------- | ----------- | -| [item 1 items](#profile_oneOf_i1_items) | - | - -#### 10.2.1. WfExS-backend stage definition > profile > oneOf > item 1 > item 1 items - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -| Restrictions | | -| --------------------------------- | ----------------------------------------------------------------------- | -| **Min length** | 1 | -| **Must match regular expression** | ```^[^,]+$``` [Test](https://regex101.com/?regex=%5E%5B%5E%2C%5D%2B%24) | - -## 11. Property `WfExS-backend stage definition > environment` - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------- | ------- | ------ | ---------- | ----------------------- | ---------------------------------------------------------------------------------------------------- | -| - [^[^=\0]+$](#environment_pattern1 ) | Yes | object | No | In #/definitions/EnvVar | The name of an environment variable. These names cannot contain either the equal or the character \0 | - -### 11.1. Pattern Property `WfExS-backend stage definition > environment > EnvVar` -> All properties whose name matches the regular expression -```^[^=\0]+$``` ([Test](https://regex101.com/?regex=%5E%5B%5E%3D%5C0%5D%2B%24)) -must respect the following conditions - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| **Defined in** | #/definitions/EnvVar | - -**Description:** The name of an environment variable. These names cannot contain either the equal or the character \0 - -| One of(Option) | -| -------------------------------------------- | -| [item 0](#environment_pattern1_pattern1_i0) | -| [DirFile](#environment_pattern1_pattern1_i1) | - -#### 11.1.1. Property `WfExS-backend stage definition > environment > ^[^=\0]+$ > oneOf > item 0` - -| | | -| ------------ | ------------------ | -| **Type** | `string or number` | -| **Required** | No | - -#### 11.1.2. Property `WfExS-backend stage definition > environment > ^[^=\0]+$ > oneOf > DirFile` - -| | | -| ------------------------- | ----------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | -| **Same definition as** | [params_pattern1_pattern1_i4](#params_pattern1_pattern1_i4) | - -## 12. Property `WfExS-backend stage definition > outputs` - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| -------------------------------- | ------- | ------ | ---------- | ---------- | ----------------- | -| - [^[^:;]+$](#outputs_pattern1 ) | Yes | object | No | - | - | - -### 12.1. Pattern Property `WfExS-backend stage definition > outputs > ^[^:;]+$` -> All properties whose name matches the regular expression -```^[^:;]+$``` ([Test](https://regex101.com/?regex=%5E%5B%5E%3A%3B%5D%2B%24)) -must respect the following conditions - -| | | -| ------------------------- | ------------------------------------------------------- | -| **Type** | `object` | -| **Required** | No | -| **Additional properties** | [[Not allowed]](# "Additional Properties not allowed.") | - -| Property | Pattern | Type | Deprecated | Definition | Title/Description | -| ------------------------------------------------------- | ------- | ---------------- | ---------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| + [c-l-a-s-s](#outputs_pattern1_c-l-a-s-s ) | No | enum (of string) | No | - | - | -| - [cardinality](#outputs_pattern1_cardinality ) | No | Combination | No | - | Output cardinality | -| - [preferredName](#outputs_pattern1_preferredName ) | No | string | No | - | Preferred name for this output, honored when either filledFrom or glob are used | -| - [fillFrom](#outputs_pattern1_fillFrom ) | No | string | No | - | Autofilled input from where to get the files and directories to be assigned to this output, useful in workflow models where outputs are not explicitly declared (Nextflow, Snakemake) | -| - [syntheticOutput](#outputs_pattern1_syntheticOutput ) | No | boolean | No | - | Is this output a synthetic one? The default value when it is not defined depends on the type of workflow. | -| - [glob](#outputs_pattern1_glob ) | No | string | No | - | Glob pattern to get the files and directories to be assigned to this output, useful in workflow models where outputs are not explicitly declared (Nextflow, Snakemake) | - -#### 12.1.1. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > c-l-a-s-s` - -| | | -| ------------ | ------------------ | -| **Type** | `enum (of string)` | -| **Required** | Yes | - -Must be one of: -* "File" -* "Directory" - -#### 12.1.2. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality` - -**Title:** Output cardinality - -| | | -| ------------------------- | ------------------------------------------------------------------------- | -| **Type** | `combining` | -| **Required** | No | -| **Additional properties** | [[Any type: allowed]](# "Additional Properties of any type are allowed.") | -| **Default** | `1` | - -**Description:** Expected cardinality of this output - -| One of(Option) | -| ------------------------------------------------ | -| [item 0](#outputs_pattern1_cardinality_oneOf_i0) | -| [item 1](#outputs_pattern1_cardinality_oneOf_i1) | -| [item 2](#outputs_pattern1_cardinality_oneOf_i2) | - -##### 12.1.2.1. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality > oneOf > item 0` - -| | | -| ------------ | ------------------ | -| **Type** | `enum (of string)` | -| **Required** | No | - -Must be one of: -* "1" -* "?" -* "*" -* "+" - -##### 12.1.2.2. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality > oneOf > item 1` - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | - -| Restrictions | | -| ------------ | ------ | -| **Minimum** | ≥ 0 | - -##### 12.1.2.3. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality > oneOf > item 2` - -| | | -| ------------ | ------- | -| **Type** | `array` | -| **Required** | No | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | 2 | -| **Max items** | 2 | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | See below | - -| Each item of this array must be | Description | -| ---------------------------------------------------------------- | ----------- | -| [item 2 item 0](#outputs_pattern1_cardinality_oneOf_i2_items_i0) | - | -| [item 2 item 1](#outputs_pattern1_cardinality_oneOf_i2_items_i1) | - | - -###### 12.1.2.3.1. WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality > oneOf > item 2 > item 2 item 0 - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | - -| Restrictions | | -| ------------ | ------ | -| **Minimum** | ≥ 0 | - -###### 12.1.2.3.2. WfExS-backend stage definition > outputs > ^[^:;]+$ > cardinality > oneOf > item 2 > item 2 item 1 - -| | | -| ------------ | --------- | -| **Type** | `integer` | -| **Required** | No | - -| Restrictions | | -| ------------ | ------ | -| **Minimum** | ≥ 1 | - -#### 12.1.3. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > preferredName` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -**Description:** Preferred name for this output, honored when either filledFrom or glob are used - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -#### 12.1.4. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > fillFrom` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -**Description:** Autofilled input from where to get the files and directories to be assigned to this output, useful in workflow models where outputs are not explicitly declared (Nextflow, Snakemake) - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -#### 12.1.5. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > syntheticOutput` - -| | | -| ------------ | --------- | -| **Type** | `boolean` | -| **Required** | No | - -**Description:** Is this output a synthetic one? The default value when it is not defined depends on the type of workflow. - -#### 12.1.6. Property `WfExS-backend stage definition > outputs > ^[^:;]+$ > glob` - -| | | -| ------------ | -------- | -| **Type** | `string` | -| **Required** | No | - -**Description:** Glob pattern to get the files and directories to be assigned to this output, useful in workflow models where outputs are not explicitly declared (Nextflow, Snakemake) - -| Restrictions | | -| -------------- | - | -| **Min length** | 1 | - -## 13. Property `WfExS-backend stage definition > default_actions` - -| | | -| ------------ | ------- | -| **Type** | `array` | -| **Required** | No | - -| | Array restrictions | -| -------------------- | ------------------ | -| **Min items** | N/A | -| **Max items** | N/A | -| **Items unicity** | False | -| **Additional items** | False | -| **Tuple validation** | N/A | - ----------------------------------------------------------------------------------------------------------------------------- -Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2024-09-17 at 12:33:29 +0000 diff --git a/development-docs/schemas/templates/md/base.md b/development-docs/schemas/templates/md/base.md deleted file mode 100644 index 92ada6ef..00000000 --- a/development-docs/schemas/templates/md/base.md +++ /dev/null @@ -1,17 +0,0 @@ -{% set depth = 0 %} -{{ schema.keywords.get("title").literal | default("Schema Docs") | md_heading(depth) }} -{% set contentBase %} -{% with schema=schema, skip_headers=False, depth=depth %} - {% include "content.md" %} -{% endwith %} -{% endset %} - -{{ md_get_toc() }} - -{{ contentBase }} - ----------------------------------------------------------------------------------------------------------------------------- -{% if config.with_footer -%} -Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans){% if config.footer_show_time %} on {{ get_local_time() }}{% endif %} - -{% endif -%} diff --git a/development-docs/schemas/templates/md/breadcrumbs.md b/development-docs/schemas/templates/md/breadcrumbs.md deleted file mode 100644 index 5991f388..00000000 --- a/development-docs/schemas/templates/md/breadcrumbs.md +++ /dev/null @@ -1,9 +0,0 @@ -{%- filter md_escape_for_table -%} -{%- if config.show_breadcrumbs -%} - {%- for node in schema.nodes_from_root -%} - {{ node.name_for_breadcrumbs }}{%- if not loop.last %} > {% endif -%} - {%- endfor -%} -{%- else -%} - {{ schema.name_for_breadcrumbs }} -{%- endif -%} -{%- endfilter -%} diff --git a/development-docs/schemas/templates/md/content.md b/development-docs/schemas/templates/md/content.md deleted file mode 100644 index 41812ed0..00000000 --- a/development-docs/schemas/templates/md/content.md +++ /dev/null @@ -1,94 +0,0 @@ -{# - content is a template and not a macro in md - because macro parameters are not through context - when rendering a template from the macro and it caused - serious problems when using recursive calls - mandatory context parameters: - schema -#} -{# context parameters default values #} -{% set skip_headers = skip_headers or False %} -{% set depth = depth or 0 %} -{# end context parameters #} - -{% set keys = schema.keywords %} -{%- if not skip_headers %} - -{% if schema.title and schema.title | length > 0 %} -**Title:** {{ schema.title }} -{% endif %} - -{{ schema | md_type_info_table | md_generate_table }} - -{% set description = (schema | get_description) %} -{% include "section_description.md" %} -{% endif %} - -{# Display examples #} -{% set examples = schema.examples %} -{% if examples %} - {% include "section_examples.md" %} -{% endif %} - -{% if schema.should_be_a_link(config) %} -{% elif schema.refers_to -%} - {%- with schema=schema.refers_to_merged, skip_headers=True, depth=depth -%} - {% include "content.md" %} - {% endwith %} -{% else %} - {# Properties, pattern properties, additional properties #} - {% if schema.is_object %} - {{- schema | md_properties_table | md_generate_table -}} - {% endif %} - - {# Combining: allOf, anyOf, oneOf, not #} - {% if schema.kw_all_of %} - {% with operator="allOf", title="All of(Requirement)", current_node=schema.kw_all_of, skip_required=True %} - {% include "tabbed_section.md" %} - {% endwith %} - {% endif %} - {% if schema.kw_any_of %} - {% with operator="anyOf", title="Any of(Option)", current_node=schema.kw_any_of, skip_required=True %} - {% include "tabbed_section.md" %} - {% endwith %} - {% endif %} - {% if schema.kw_one_of %} - {% with operator="oneOf", title="One of(Option)",current_node=schema.kw_one_of, skip_required=True %} - {% include "tabbed_section.md" %} - {% endwith %} - {% endif %} - {% if schema.kw_not %} - {% include "section_not.md" %} - {% endif %} - - {# Enum and const #} - {% if schema.kw_enum -%} - {% include "section_one_of.md" %} - {%- endif %} - {%- if schema.kw_const -%} - Specific value: `{{ schema.kw_const.raw | python_to_json }}` - {%- endif -%} - - {# Conditional subschema, or if-then-else section #} - {% if schema.has_conditional %} - {% with skip_headers=False, depth=depth+1 %} - {% include "section_conditional_subschema.md" %} - {% endwith %} - {% endif %} - - {# Required properties that are not defined under "properties". They will only be listed #} - {% include "section_undocumented_required_properties.md" %} - - {# Show the requested type(s) #} - {{- schema | md_restrictions_table | md_generate_table -}} - - {# Show array restrictions #} - {% if schema.type_name.startswith("array") %} - {% include "section_array.md" %} - {% endif %} - - {# details of Properties, pattern properties, additional properties #} - {% if schema.is_object %} - {% include "section_properties_details.md" %} - {% endif %} -{% endif %} diff --git a/development-docs/schemas/templates/md/section_array.md b/development-docs/schemas/templates/md/section_array.md deleted file mode 100644 index c9e27490..00000000 --- a/development-docs/schemas/templates/md/section_array.md +++ /dev/null @@ -1,39 +0,0 @@ -{{ schema | md_array_restrictions | md_generate_table }} - -{% if schema.array_items_def or schema.tuple_validation_items %} -{{ schema | md_array_items_restrictions | md_generate_table }} -{% endif %} - -{% if schema.array_items_def %} -{% filter md_heading(depth+1) %} -{% with schema=schema.array_items_def %}{%- include "breadcrumbs.md" %}{% endwith %} -{% endfilter %} -{% with schema=schema.array_items_def, skip_headers=False, depth=depth+1, skip_required=True %} - {% include "content.md" %} -{% endwith %} -{% endif %} - -{% if schema.tuple_validation_items %} -{% for item in schema.tuple_validation_items %} - {% filter md_heading(depth+1) %} - {% with schema=item %}{%- include "breadcrumbs.md" %}{% endwith %} - {% endfilter %} - {% with schema=item, skip_headers=False, depth=depth+1, skip_required=True %} - {% include "content.md" %} - {% endwith %} -{% endfor %} -{% endif %} - -{% if schema.kw_contains and schema.kw_contains.literal != {} %} -{{ "At least one of the items must be" | md_heading(depth+1) }} -{% with schema=schema.kw_contains, skip_headers=False, depth=depth+1, skip_required=True %} - {% include "content.md" %} -{% endwith %} -{% endif %} - -{% if schema.array_additional_items_def %} -{{ "Additional items must be" | md_heading(depth+1) }} -{% with schema=schema.array_additional_items_def, skip_headers=False, depth=depth+1, skip_required=True %} - {% include "content.md" %} -{% endwith %} -{% endif %} diff --git a/development-docs/schemas/templates/md/section_conditional_subschema.md b/development-docs/schemas/templates/md/section_conditional_subschema.md deleted file mode 100644 index d864dc12..00000000 --- a/development-docs/schemas/templates/md/section_conditional_subschema.md +++ /dev/null @@ -1,48 +0,0 @@ -{% if schema.kw_if %} - {% set first_property = schema.kw_if | get_first_property %} - - {% if schema.kw_then %} - {% if first_property is not none %} - {%- filter md_heading(depth) -%}If ( - {{- first_property.property_name | md_escape_for_table -}} - {{- " = " -}} - {% if first_property.kw_const is not none %} - {{- first_property.kw_const.literal | python_to_json -}} - {% elif first_property.kw_enum is not none %} - {% with schema=first_property %} - {% include "section_one_of.md" %} - {% endwith %} - {% else %} - {{- "(unimplemented rendering)" -}} - {% endif %} - ){%- endfilter -%} - {% else %} - If(_complex condition_) - {% endif %} - {% with schema=schema.kw_then, skip_headers=False, depth=depth %} - {% include "content.md" %} - {% endwith %} - {% endif %} - {% if schema.kw_else %} - {% if first_property is not none %} - {%- filter md_heading(depth) -%}Else (i.e. {{ " " }} - {{- first_property.property_name | md_escape_for_table -}} - {{- " != " -}} - {% if first_property.kw_const is not none %} - {{- first_property.kw_const.literal | python_to_json -}} - {% elif first_property.kw_enum is not none %} - {% with schema=first_property %} - {% include "section_one_of.md" %} - {% endwith %} - {% else %} - {{- "(unimplemented rendering)" -}} - {% endif %} - ){%- endfilter -%} - {% else %} - IfNot(_complex condition_) - {% endif %} - {% with schema=schema.kw_else, skip_headers=False, depth=depth %} - {% include "content.md" %} - {% endwith %} - {% endif %} -{% endif %} \ No newline at end of file diff --git a/development-docs/schemas/templates/md/section_description.md b/development-docs/schemas/templates/md/section_description.md deleted file mode 100644 index 20514706..00000000 --- a/development-docs/schemas/templates/md/section_description.md +++ /dev/null @@ -1,4 +0,0 @@ -{# Display description #} -{% if description %} -**Description:**{{ " " }}{{ description }} -{% endif %} \ No newline at end of file diff --git a/development-docs/schemas/templates/md/section_examples.md b/development-docs/schemas/templates/md/section_examples.md deleted file mode 100644 index d52018d1..00000000 --- a/development-docs/schemas/templates/md/section_examples.md +++ /dev/null @@ -1,16 +0,0 @@ -**Example{% if examples|length > 1 %}s{% endif %}:**{{ " " }} - -{% for example in examples %} - {%- if loop.first %}{{ "\n" }}{% endif -%} - {% set example_id = schema.html_id ~ "_ex" ~ loop.index %} - {%- if not examples_as_yaml -%} - {{- "" }}```json - {{- "\n" }}{{ example }} - {{- "\n" }}``` - {%- else -%} - {{- "" }}```yaml - {{- "\n" }}{{ example | yaml_example }} - {{- "\n" }}``` - {%- endif -%} - {{ "\n" }} -{% endfor %} diff --git a/development-docs/schemas/templates/md/section_not.md b/development-docs/schemas/templates/md/section_not.md deleted file mode 100644 index 45a4c3c9..00000000 --- a/development-docs/schemas/templates/md/section_not.md +++ /dev/null @@ -1,4 +0,0 @@ -{{ "Must **not** be" | md_heading(depth+1) }} -{% with schema=schema.kw_not, skip_headers=False, depth=depth+1, skip_required=True %} - {% include "content.md" %} -{% endwith %} \ No newline at end of file diff --git a/development-docs/schemas/templates/md/section_one_of.md b/development-docs/schemas/templates/md/section_one_of.md deleted file mode 100644 index a7c1ad27..00000000 --- a/development-docs/schemas/templates/md/section_one_of.md +++ /dev/null @@ -1,4 +0,0 @@ -Must be one of: -{% for enum_choice in schema.kw_enum.array_items %} -* {{ enum_choice.literal | python_to_json }} -{% endfor %} \ No newline at end of file diff --git a/development-docs/schemas/templates/md/section_properties_details.md b/development-docs/schemas/templates/md/section_properties_details.md deleted file mode 100644 index f5554d1c..00000000 --- a/development-docs/schemas/templates/md/section_properties_details.md +++ /dev/null @@ -1,32 +0,0 @@ -{% for sub_property in schema.iterate_properties %} - {%- if sub_property.is_additional_properties and not sub_property.is_additional_properties_schema -%} - {% continue %} - {% endif %} - - {% set html_id = sub_property.html_id %} - - {% set description = sub_property | get_description %} - - {% filter md_heading(depth + 1, html_id) -%} - {%- filter replace('\n', '') -%} - {%- if not skip_required and sub_property.property_name -%} - {{ md_badge("Required", "blue", fallback=False) if sub_property.is_required_property else md_badge("Optional", "yellow", fallback=False) -}} - {%- endif -%} - {%- if sub_property is deprecated -%}~~{%- endif -%} - {%- if sub_property.is_pattern_property %} Pattern{% endif %} Property `{% with schema=sub_property %}{%- include "breadcrumbs.md" %}{% endwith %}` - {%- if sub_property is deprecated -%}~~{%- endif -%} - {%- endfilter %} - {%- endfilter %} - - {% if sub_property.is_pattern_property %} -> All properties whose name matches the regular expression -```{{ sub_property.property_name }}``` ([Test](https://regex101.com/?regex={{ sub_property.property_name | urlencode }})) -must respect the following conditions - {% endif %} - - - {% with schema=sub_property, skip_headers=False, depth=depth+1 %} - {% include "content.md" %} - {% endwith %} - -{% endfor %} diff --git a/development-docs/schemas/templates/md/section_undocumented_required_properties.md b/development-docs/schemas/templates/md/section_undocumented_required_properties.md deleted file mode 100644 index 1756ef93..00000000 --- a/development-docs/schemas/templates/md/section_undocumented_required_properties.md +++ /dev/null @@ -1,7 +0,0 @@ -{% set undocumented_required_properties = schema | get_undocumented_required_properties %} -{% if undocumented_required_properties%} -{{ "The following properties are required" | md_heading(depth+1) }} -{% for required_property in undocumented_required_properties %} -* {{ required_property }} -{% endfor %} -{% endif %} \ No newline at end of file diff --git a/development-docs/schemas/templates/md/tabbed_section.md b/development-docs/schemas/templates/md/tabbed_section.md deleted file mode 100644 index 3f43eb4e..00000000 --- a/development-docs/schemas/templates/md/tabbed_section.md +++ /dev/null @@ -1,11 +0,0 @@ - -{{ current_node | md_array_items(title) | md_generate_table }} - -{% for node in current_node.array_items %} - {% filter md_heading(depth+1, node.html_id) -%} - {% if node.is_pattern_property %}Pattern{% endif %} Property `{% with schema=node %}{%- include "breadcrumbs.md" %}{% endwith %}` - {%- endfilter %} - {% with schema=node, skip_headers=False, depth=depth+1 %} - {% include "content.md" %} - {% endwith %} -{% endfor %} \ No newline at end of file diff --git a/development-scripts/regenerate_schema_docs_html.bash b/development-scripts/regenerate_schema_docs_html.bash deleted file mode 100755 index c121ccc7..00000000 --- a/development-scripts/regenerate_schema_docs_html.bash +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/bash - -set -e - -# Getting the installation directory -wfexsDir="$(dirname "$0")"/.. -wfexsDir="$(readlink -f "${wfexsDir}")" - -if [ $# -ge 2 ] ; then - schemas_path="$1" - doc_schemas_path="$2" - if [ $# -gt 2 ] ; then - case "$3" in - force) - doRebuild=1 - ;; - esac - fi -else - schemas_path="wfexs_backend/schemas" - doc_schemas_path="development-docs/schemas" -fi - -git_date() { - local filename="$1" - - git log -1 --format=%ct "$filename" 2> /dev/null -} - -for schema in "${wfexsDir}"/"${schemas_path}"/*.json ; do - doregen= - destfile="${wfexsDir}"/"${doc_schemas_path}"/"$(basename "$schema" .json)"_schema.html - if [ -n "$doRebuild" ] ; then - rm -f "$destfile" - fi - schemadate="$(git_date "$schema")" - destfiledate="$(git_date "$destfile")" - - if [ -z "$destfiledate" ] ; then - doregen=1 - elif [ "$schemadate" -gt "$destfiledate" ] ; then - doregen=1 - fi - - if [ -n "$doregen" ] ; then - generate-schema-doc --config template_name=js --config no_minify --config examples_as_yaml --config description_is_markdown --config no_collapse_long_descriptions "$schema" "$destfile" - fi -done diff --git a/development-scripts/regenerate_schema_docs_md.bash b/development-scripts/regenerate_schema_docs_md.bash deleted file mode 100755 index ce409240..00000000 --- a/development-scripts/regenerate_schema_docs_md.bash +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/bash - -set -e - -# Getting the installation directory -wfexsDir="$(dirname "$0")"/.. -wfexsDir="$(readlink -f "${wfexsDir}")" - -if [ $# -ge 2 ] ; then - schemas_path="$1" - doc_schemas_path="$2" - if [ $# -gt 2 ] ; then - case "$3" in - force) - doRebuild=1 - ;; - esac - fi -else - schemas_path="wfexs_backend/schemas" - doc_schemas_path="development-docs/schemas" -fi - -git_date() { - local filename="$1" - - git log -1 --format=%ct "$filename" 2> /dev/null -} - -for schema in "${wfexsDir}"/"${schemas_path}"/*.json ; do - doregen=${default_do_regen:-} - destfile="${wfexsDir}"/"${doc_schemas_path}"/"$(basename "$schema" .json)"_schema.md - if [ -n "$doRebuild" ] ; then - rm -f "$destfile" - fi - schemadate="$(git_date "$schema")" - destfiledate="$(git_date "$destfile")" - - if [ -z "$destfiledate" ] ; then - doregen=1 - elif [ "$schemadate" -gt "$destfiledate" ] ; then - doregen=1 - fi - - if [ -n "$doregen" ] ; then - generate-schema-doc --config custom_template_path="${wfexsDir}/${doc_schemas_path}/templates/md/base.md" --config examples_as_yaml --config description_is_markdown --config no_collapse_long_descriptions "$schema" "$destfile" -# generate-schema-doc --config template_name=md --config examples_as_yaml --config description_is_markdown --config no_collapse_long_descriptions "$schema" "$destfile" - fi -done From 469324f39fc0b20545dd9af6c013ab5cff277612 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20M=C2=AA=20Fern=C3=A1ndez?= Date: Fri, 20 Sep 2024 15:18:43 +0200 Subject: [PATCH 2/2] Added new GitHub CI workflow which is only run when a new tag is applied. This workflow creates a pull request against readthedocs_merge branch, in order to update the version of WfExS being documented. --- .github/workflows/update-documented-wfexs.yml | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 .github/workflows/update-documented-wfexs.yml diff --git a/.github/workflows/update-documented-wfexs.yml b/.github/workflows/update-documented-wfexs.yml new file mode 100644 index 00000000..dd0e72ea --- /dev/null +++ b/.github/workflows/update-documented-wfexs.yml @@ -0,0 +1,35 @@ +name: Create a pull request against readthedocs_merge branch updating the tag being pulled +on: + workflow_dispatch: + push: + tags: + # Push events to every tag not containing / + # based on https://stackoverflow.com/a/61892639 + - '[1-9]*' + +jobs: + update_wfexs_requirement_at_readthedocs_merge: + runs-on: ubuntu-latest + steps: + - name: Documentation branch checkout + uses: actions/checkout@v4 + with: + ref: readthedocs_merge + - name: Write requirement + run: | + echo "wfexs_backend @ git+${{ github.server_url }}/${{ github.repository }}.git@${{ github.ref_name }}" > docs/source/requirement-wfexs.txt + - name: Create Pull Request + id: cpr + uses: peter-evans/create-pull-request@v7 + with: + title: Updated WfExS-backend version being documented to ${{ github.ref_name }} + add-paths: | + docs/source/requirement-wfexs.txt + branch: create-pull-request/patch-documented-wfexs-version + delete-branch: true + commit-message: "[create-pull-request] Automatically commit updated contents (changed referred WfExS version to ${{ github.ref_name }})" + - name: Check outputs + if: ${{ steps.cpr.outputs.pull-request-number }} + run: | + echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}" + echo "Pull Request URL - ${{ steps.cpr.outputs.pull-request-url }}"