terra_tsv_to_table
pipes/WDL/workflows/terra_tsv_to_table.wdl

WORKFLOW terra_tsv_to_table

File Path pipes/WDL/workflows/terra_tsv_to_table.wdl
WDL Version 1.0
Type workflow

Imports

Namespace Path
terra ../tasks/tasks_terra.wdl
utils ../tasks/tasks_utils.wdl

Workflow: terra_tsv_to_table

Upload tsv files to Terra data table: insert-or-update on existing rows/columns

Author: Broad Viral Genomics
viral-ngs@broadinstitute.org

Inputs

Name Type Description Default
tsv_files Array[File?]+ - -
2 optional inputs with default values

Calls

This workflow calls the following tasks or subworkflows:

CALL TASKS check_terra_env

No explicit input mappings

CALL TASKS cat_except_headers

Input Mappings (2)
Input Value
infiles select_all(tsv_files)
out_filename "terra_upload.tsv"

CALL TASKS upload_entities_tsv

Input Mappings (3)
Input Value
tsv_file cat_except_headers.out_tsv
workspace_name check_terra_env.workspace_name
terra_project check_terra_env.workspace_namespace

Images

Container images used by tasks in this workflow:

🐳 Parameterized Image
⚙️ Parameterized

Configured via input:
docker

Used by 1 task:
  • check_terra_env
🐳 ubuntu

ubuntu

Used by 1 task:
  • cat_except_headers
🐳 Parameterized Image
⚙️ Parameterized

Configured via input:
docker

Used by 1 task:
  • upload_entities_tsv
← Back to Index

terra_tsv_to_table - Workflow Graph

🖱️ Scroll to zoom • Drag to pan • Double-click to reset • ESC to close

terra_tsv_to_table - WDL Source Code

version 1.0

#DX_SKIP_WORKFLOW

import "../tasks/tasks_terra.wdl" as terra
import "../tasks/tasks_utils.wdl" as utils

workflow terra_tsv_to_table {
    meta {
        description: "Upload tsv files to Terra data table: insert-or-update on existing rows/columns"
        author: "Broad Viral Genomics"
        email:  "viral-ngs@broadinstitute.org"
    }

    input {
        Array[File?]+ tsv_files
    }

    call terra.check_terra_env

    call utils.cat_except_headers {
        input:
            infiles = select_all(tsv_files),
            out_filename = "terra_upload.tsv"
    }

    call terra.upload_entities_tsv {
        input:
            tsv_file         = cat_except_headers.out_tsv,
            workspace_name   = check_terra_env.workspace_name,
            terra_project    = check_terra_env.workspace_namespace
    }
}