Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Jeffrey Massung
    @massung
    If there's an example somewhere launching one of the community pipelines, that would be helpful
    Paolo Di Tommaso
    @pditommaso
    something like this
    launch: 
      computeEnvId: "4woukvRfAz0cGCvZPtncho"
      configProfiles: null
      configText: null
      dateCreated: "2021-08-31T15:57:24.747Z"
      entryName: null
      id: null
      mainScript: null
      paramsText: null
      pipeline: "https://github.com/pditommaso/hello"
      postRunScript: null
      preRunScript: null
      pullLatest: null
      revision: null
      schemaName: null
      stubRun: null
      workDir: "/home/ubuntu/nf-work"
    Jeffrey Massung
    @massung
    I expected that to be the quick launch. I was assuming (perhaps incorrectly?) that if I set up a pipeline in the launchpad, I could setup all the defaults there and launch it with the API - perhaps only overriding a couple things (like paramsText)?
    Paolo Di Tommaso
    @pditommaso
    correct
    if you want to launch a pre-configured pipeline, that id is the lauch associated with that pipeline
    but likely it's easier using the action API
    Screenshot 2021-08-31 at 18.20.26.png
    Jeffrey Massung
    @massung
    Thanks. I hope you don't mind one more question... Is there any supported, conventional way to support N pipelines in a single GitHub repo as opposed to one repo per pipeline (trying to make it easier for several people)? Aside from overriding the mainScript entry point, I haven't really found a nice way, and other things don't appear to play nicely with that.
    Jeffrey Massung
    @massung

    if you want to launch a pre-configured pipeline, that id is the lauch associated with that pipeline

    I think I'm missing something incredibly obvious, but I'm not seeing an ID anywhere for the pipeline. I see them for the workspaces, compute environments, etc. But not for the pipelines.

    Lasse Folkersen
    @lassefolkersen
    Hi nf-tower community. I'm having trouble with something as simple as the input-fastq file writing. I followed AWS-batch instructions, and have two small test files in an amazon S3 bucket: s3://lasses-tower-bucket/test1/ - the input field tells me I should just be able to write that (It can also be used to specify the path to a directory on mapping step with a single germline sample only. it says).. but that won't work. Logs say No FASTQ files found in --input directory 's3://lasses-tower-bucket/test1/'
    Jeffrey Massung
    @massung
    https://tower.nf/openapi/index.html appears to be down. Also, it appears as though my personal access token can't be used to access API end-points for an organization I own? Is there something I'm missing (like passing the organization w/ the request in a header or perhaps a setting in the organization I need to enable)?
    Kevin
    @klkeys

    has anybody else come across a recent AWS ECS/Batch failure with NF Tower?

    I think that it’s related to this email to my org from 23 Aug 2021:

    Hello,
    Your action is required to avoid potential service interruption once Amazon ECS API request validation improvements take effect on September 24, 2021. We have identified the following API requests to Amazon ECS from your account that could be impacted by these changes:
    DescribeContainerInstances
    With these improvements, Amazon ECS APIs will validate that the Service and Cluster name parameters in the API match the Cluster and Service name in the ARN.

    a recent launch into our Tower Forge infrastructure on AWS yielded this notice from AWS:

    Hello,
    On Wed, 1 Sep 2021 08:57:30 GMT, all EC2 instances in your Batch compute environment “arn:aws:batch:us-west-2:478885234993:compute-environment/TowerForge-2y3V6L8gnk6kM09yoB0vmS-head“ were scaled down. The compute environment is now in an INVALID state due to a misconfiguration preventing the EC2 instances from joining the underlying ECS Cluster. While in this state, the compute environment will not scale up or run any jobs. Batch will continue to monitor your compute environments and will move any compute environment whose instances do not join the cluster to INVALID.
    To fix this issue, please review and update/recreate the compute environment configuration. Common compute environment misconfigurations which can prevent instances from joining the cluster include: a VPC/Subnet configuration preventing communication to ECS, incorrect Instance Profile policy preventing authorization to ECS, or a bad custom Amazon Machine Image or LaunchTemplate configuration affecting the ECS agent.

    Kevin
    @klkeys
    something about a new longer ARN maybe? does the Tower Forge launch template account for this?
    Kevin
    @klkeys
    FWIW, I didn’t know what else to do, so I played “did you reboot the computer” by disabling and reenabling the ECS compute environment and suddenly things work again :eyes: I’m still curious to know what caused this error
    Paolo Di Tommaso
    @pditommaso
    never seen this before, if it's happening again worth investigating with AWS supprot what's the root cause
    Jeffrey Massung
    @massung
    Is there a way - from within a process block to determine if -with-tower was passed along or not?
    Jeffrey Massung
    @massung
    To be more precise, I guess I care whether or not it's being run locally. I'd like to use the containerOptions only if running locally
    Moritz E. Beber
    @Midnighter
    How about managing that with a profile?
    1 reply
    Paolo Di Tommaso
    @pditommaso
    indeed, that info is not exposed, pipeline should depend on tower execution
    Julianus Pfeuffer
    @jpfeuffer
    Hi! Is it currently possible to setup e.g. a SLURM compute environment in Tower if the head node is behind an SSH gateway/tunnel?
    (disclaimer: also shortly asked on nf-core Slack)
    James Fellows Yates
    @jfy133:matrix.org
    [m]

    I tried looking in the Nextflow documentation nor searching here, but I didn't see anything along these lines: is there some hidden/secret flag or something that allows you turn on/off sending run 'tracking' to an organisation (vs. your own personal account?)

    In other words: generally I want to monitor my runs in a workspace shared with other people in my department, but sometimes if I'm running a 'sensitive' project, I want to keep a given run so that I can monitor in my personal workspace. Is there such a functioanlity to switch this in on and off per run?

    1 reply
    Julianus Pfeuffer
    @jpfeuffer
    Another question that I have is if nf-tower (SLURM connector) can start the orchestrating nextflow job directly on the head node? I have two different clusters where the admins specifically want me to run long-running orchestrating jobs on the node directly.
    Paolo Di Tommaso
    @pditommaso
    nope, tower does not allow running in the login node
    Thomas Sandmann
    @thomas_sandmann_twitter
    Hi! I am using AWS S3 for the result directory - but the target bucket is owned by another AWS account. The bucket is set up to accept the files from the AWS account that runs nextflow, and the objects are written without a problem. But the objects are still owned by the nextflow account, e.g. not the owner of the destination bucket. It seems that AWS S3 support automatically assigning object ownership to the bucket owner (see: bucket-owner-full-control ) by specifying the "bucket-owner-full-control" ACL in the request. For example, in the AWS CLI this could be done by including the "--acl bucket-owner-full-control" command line argument. Is it possible to configure nextflow's s3 backend to include this option? Or perhaps there is an even better solution to deliver files into S3 buckets in another account? Many thanks!
    1 reply
    Marc Serret
    @MarcSerretCRG
    Hi everyone. I'm using the nf-tower API to retrieve the workflows to get the status (/workflow endpoint). My question is what determines the lenght of the response, the date range. Thanks you
    Paolo Di Tommaso
    @pditommaso
    the number of returned records is controlled via the max params. There's no data filter at this stage
    Marc Serret
    @MarcSerretCRG
    I see, thanks you
    G Fedewa
    @harper357
    I am having trouble launching pipelines when I select my organizations workspace. In other words, when I select a pipeline from my Launchpad, I select a different Workspace. It gives me the error "Http failure response for https://tower.nf/api/workflow/launch?workspaceId=<>: 403 Forbidden". Is there some setting I need to change/add to let me launch pipelines in different workspaces?
    Ido Tamir
    @idot
    Hello, since yesterday i get Unexpected response code 400 for request https://api.tower.nf/trace/create . I am now desperately trying to not use tower: I unset TOWER_ACCESS_TOKEN and don't use -with-tower ( version 21.04.1) but its always the same error
    Ido Tamir
    @idot
    Now it started and I get Unexpected response code 400 for request https://api.tower.nf/trace/MDfCwae87pju7/progress
    Error ID: 1e1h4Ib3Fd14YYvCOdQHLP
    Ido Tamir
    @idot
    Starting again I get Unexpected response code 400 for request https://api.tower.nf/trace/create and the workflow does not run at all
    Ido Tamir
    @idot
    tower seems to work again
    Ido Tamir
    @idot
    tower was active because i had it in ~/.nextflow/config
    Jeffrey Massung
    @massung

    I have a workflow I’m building for which some of the early processes take considerable CPU/memory to run, so I’m forced to run workflow on AWS (no biggie). So far, I’ve been slowly adding steps and relaunching the same pipeline with resume and it’s all working great.

    However, the time spent provisioning EC2 instances for later processes that don’t require much CPU/memory is frustrating. I could (in theory) just run those processes locally while I build out the rest of the workflow.

    Is it possible for me to do something like copy the work/scratch directory from S3 to my local work/ directory and -resume the workflow running locally? I’ve tried the naive way of doing it, but it won’t detect that the workflow has already successfully run some of the processes. Are there any logs/files I can just manually edit - or pass something on the CLI - to get it to do so?

    Paolo Di Tommaso
    @pditommaso
    Ec2 provisioning time is something we can do little
    however, best practice for building NF pipelines consists of doing in your local computer with a small test dataset and then deploy on AWS
    this is crucial for testing and troubleshooting
    Combiz Khozoie
    @combiz
    Hi, is there a way to obtain a tabulated version of the nf-tower cloud cost estimates for all tasks? It's possible to see the 'cost' field when clicking on a single task; however, we need to aggregate the predicted costs for hundreds of tasks.
    Paolo Di Tommaso
    @pditommaso
    Hi, currently it's only possible via workflow/tasks API endpoint
    Combiz Khozoie
    @combiz
    Perfect, thanks
    Combiz Khozoie
    @combiz
    Does this endpoint paginate the results? I seem to obtain only the first 10 tasks. (https://tower.nf/openapi/index.html#get-/workflow/-workflowId-/tasks)
    Combiz Khozoie
    @combiz
    Filed an issue.. seqeralabs/nf-tower#325
    rmeinl
    @rmeinl
    Hey! I'm looking to run a workflow in nf-tower that accesses a Postgres DB. When I run it locally I store the credentials in the nextflow config. Is there a way to securely store them somewhere in nf-tower to initiate my workflow?
    Danilo Imparato
    @daniloimparato

    Hi all!

    Super hyped to be trying tower. The user experience has been impressive so far. 🚀

    However, I could not get even a single workflow to execute on the Google Life Sciences backend.

    I have set up this very minimal example below. Can someone please enlighten me what might be wrong?

    #!/usr/bin/env nextflow
    
    nextflow.enable.dsl=2
    
    process echo_remote_file_content {
    
      container = "docker.io/taniguti/wf-cas9:latest"   // this does not work :(
      // container = "docker.io/docker/whalesay:latest" // this works!! both images are public
    
      input: path remote_file
    
      output: stdout emit: cat
    
      script: "cat $remote_file"
    }
    
    workflow {
      echo_remote_file_content(params.remote_file)
      println echo_remote_file_content.out.cat.view()
    }

    This is the error report:

    Error executing process > 'echo_remote_file_content'
    
    Caused by:
      Process `echo_remote_file_content` terminated with an error exit status (9)
    
    Command executed:
      cat str.txt
    
    Command exit status:
      9
    
    Command output:
      (empty)
    
    Command error:
      Execution failed: generic::failed_precondition: while running "nf-6f1c929e312542a7ee1699175d05f753-main": unexpected exit status 1 was not ignored
    
    Work dir:
      gs://sensitive-bucket-name/scratch/1uc7mIoqwEIZV0/6f/1c929e312542a7ee1699175d05f753
    
    Tip: view the complete command output by changing to the process work dir and entering the command `cat .command.out`