organizations:
  - name: 'your-organization'                                                                                   # required
    full-name: 'Your organization LLC'                                                                          # required
    description: 'Organization created E2E with seqerakit CLI scripting'                                        # optional
    location: 'Global'                                                                                          # optional
    website: 'https://yourdomain.com/'                                                                          # optional
    overwrite: True                                                                                             # optional  

teams:
  - name: 'pipelines-team'                                                                                      # required
    organization: 'your-organization'                                                                           # required
    description: 'Pipelines team @ Your organization'                                                           # optional
    members:                                                                                                    # optional
      - 'user1@domain.com'
      - 'user2@domain.com'
      - 'user3@domain.com'
    overwrite: True                                                                                             # optional

workspaces:
  - name: 'workspace-1'                                                                                         # required
    full-name: 'Workspace one'                                                                                  # required
    organization: 'your-organization'                                                                           # required
    description: 'Workspace created E2E with seqerakit CLI scripting'                                           # optional
    visibility: 'PRIVATE'                                                                                       # optional
    overwrite: True                                                                                             # optional

participants:
  - name: 'pipelines-team'                                                                                      # required
    type: 'TEAM'                                                                                                # required  
    workspace: 'your-organization/workspace-1'                                                                  # required
    role: 'ADMIN'                                                                                               # required
    overwrite: True                                                                                             # optional
  - name: 'user@domain.com'                                                                                     # required
    type: 'MEMBER'                                                                                              # required
    workspace: 'your-organization/workspace-1'                                                                  # required
    role: 'LAUNCH'                                                                                              # required
    overwrite: True                                                                                             # optional

credentials:
  - type: 'github'                                                                                              # required
    name: 'github-credentials'                                                                                  # required
    workspace: 'your-organization/workspace-1'                                                                  # required
    username: 'user1'                                                                                           # required
    password: '$TOWER_GITHUB_PASSWORD'                                                                          # required
    overwrite: True                                                                                             # optional  
  - type: 'container-reg'                                                                                       # required
    name: 'dockerhub-credentials'                                                                               # required
    workspace: 'your-organization/workspace-1'                                                                  # required
    username: 'user1'                                                                                           # required
    password: '$DOCKERHUB_PASSWORD'                                                                             # required  
    registry: 'docker.io'                                                                                       # required
    overwrite: True                                                                                             # optional
  - type: 'aws'                                                                                                 # required
    name: 'aws-credentials'                                                                                     # required
    workspace: 'your-organization/workspace-1'                                                                  # required
    access-key: '$AWS_ACCESS_KEY_ID'                                                                            # required
    secret-key: '$AWS_SECRET_ACCESS_KEY'                                                                        # required
    assume-role-arn: '$AWS_ASSUME_ROLE_ARN'                                                                     # required
    overwrite: True                                                                                             # optional

secrets:
  - name: 'SENTIEON_LICENSE_BASE64'                                                                             # required
    workspace: 'your-organization/workspace-1'                                                                  # required
    value: '$SENTIEON_LICENSE_BASE64'                                                                           # required
    overwrite: True                                                                                             # optional

compute-envs:
# To create a compute environment with options specified through YAML (AWS Example)
  - type: aws-batch                                                                                             # required
    config-mode: forge                                                                                          # required for AWS and Azure
    name: 'your-aws-compute-environment'                                                                        # required
    workspace: 'your-organization/workspace-1'                                                                  # required
    credentials: 'your-aws-credentials'                                                                         # required
    region: 'eu-west-1'                                                                                         # required 
    work-dir: 's3://your-bucket'                                                                                # required
    provisioning-model: 'SPOT'                                                                                  # optional
    fusion-v2: False                                                                                            # optional
    wave: False                                                                                                 # optional
    fargate: False                                                                                              # optional
    fast-storage: False                                                                                         # optional
    instance-types: 'c6i,r6i,m6i'                                                                               # optional, comma-separated list
    no-ebs-auto-scale: True                                                                                     # optional                   
    max-cpus: 500                                                                                               # required
    labels: 'label1,label2'                                                                                     # optional, comma-separated list
    vpc-id: 'vpc-1234567890'                                                                                    # optional            
    subnets: 'subnet-1234567890,subnet-1234567891'                                                              # optional, comma-separated list
    security-groups: 'sg-1234567890,sg-1234567891'                                                              # optional, comma-separated list
    allow-buckets: 's3://your-bucket,s3://your-other-bucket'                                                    # optional, comma-separated list
    wait: 'AVAILABLE'                                                                                           # optional                     
    overwrite: False                                                                                            # optional

# To create a compute environment from a JSON configuration file (AWS Example)
  - name: 'your-aws-compute-environment'                                                                        # required
    workspace: 'your-organization/workspace-1'                                                                  # required
    credentials: 'your-aws-credentials'                                                                         # required
    wait: 'AVAILABLE'                                                                                           # optional
    file-path: './compute-envs/your_aws_compute_environment.json'                                               # required
    overwrite: True                                                                                             # optional

datasets:
  - name: 'rnaseq_samples'                                                                                      # required
    description: 'Samplesheet to run the nf-core/rnaseq pipeline end-to-end'                                    # optional
    header: true                                                                                                # optional
    workspace: 'your-organization/workspace-1'                                                                  # required
    file-path: 'path/to/rnaseq_samples.csv'                                                                     # required
    overwrite: True                                                                                             # optional

pipelines:
# To create a pipeline with options specified through YAML
  - name: 'nf-core-rnaseq'                                                                                      # required
    url: 'https://github.com/nf-core/rnaseq'                                                                    # required
    workspace: 'your-organization/workspace-1'                                                                  # required
    description: 'RNA sequencing analysis pipeline with gene/isoform counts and extensive quality control.'     # optional
    compute-env: 'your-aws-compute-environment'                                                                 # required
    work-dir: 's3://your-bucket/pipeline/working/directory'                                                     # optional
    profile: 'test'                                                                                             # optional
    revision: '3.12.0'                                                                                          # required
    params:                                                                                                     # optional
      outdir: 's3://your-bucket/nf-core-rnaseq/results'                 
    config: 'path/to/nextflow.config'                                                                           # optional
    pre-run: 'path/to/pipeline/pre_run.txt'                                                                     # optional
    overwrite: True                                                                                             # optional 

# To create a pipeline from a JSON configuration file
  - name: 'nf-core-sarek'                                                                                       # required
    workspace: 'your-organization/workspace-1'                                                                  # required
    compute-env: 'your-aws-compute-environment'                                                                 # required
    file-path: 'path/to/nf-core-sarek_pipeline.json'                                                            # required
    overwrite: True                                                                                             # optional

launch:
# To launch a preconfigured pipeline from your workspace Launchpad
  - name: 'nf-core-rnaseq-launchpad'                                                                            # required
    workspace: 'your-organization/workspace-1'                                                                  # required
    pipeline: 'nf-core-rnaseq'                                                                                  # required
    compute-env: 'your-aws-compute-environment'                                                                 # optional (defaults to workspace primary compute environment)

# To launch an unsaved pipeline, include the pipeline repository URL and launch details
  - name: 'nf-core-rnaseq-remote'                                                                               # required
    workspace: 'your-organization/workspace-1'                                                                  # required
    pipeline: 'https://github.com/nf-core/rnaseq'                                                               # required
    compute-env: 'your-aws-compute-environment'                                                                 # optional (defaults to workspace primary compute environment)
    work-dir: 's3://your-bucket/pipeline/working/directory'                                                     # optional 
    profile: 'test'                                                                                             # optional
    revision: '3.12.0'                                                                                          # optional
    params-file: 'path/to/pipelines/nf_core_rnaseq_params.yml'                                                  # optional
    config: 'path/to/pipelines/nextflow.config'                                                                 # optional  
    pre-run: 'path/to/pipelines/pre_run.txt'                                                                    # optional  
