Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-3035

Create Cyverse App to create and index Bedgraph

    Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Story Points:
      4
    • Sprint:
      Fall 9 2021 Dec 13 - Dec 24, Spring 1 2022 Jan 3 - Jan 14, Spring 2 2022 Jan 18 - Jan 28, Spring 3 2022 Jan 31 - Feb 11

      Description

      Use case scenario:

      A user has uploaded or created a BAM file with RNA-Seq data. They would like to create a bedgraph file representing a scaled RNA-Seq coverage graph. However, for the bedgraph to be useful, the file needs to be sorted, compressed, and tabix-indexed. Currently, we have a BioViz CyVerse app that creates a bedgraph file using a tool from the deepTools suite, but the bedgraph file is not compressed or tabix-indexed. Rather than just create the "plain" bedgraph file, let's also create the bedgraph file and then sort, compress, and tabix-index it. This will be much more useful to a user than simply the plain-text, uncompressed, unindexed file.

      This will probably require created a docker image where the docker "run" command is actually running a script that we write that does all of the above. Note that you can potentially obtain the original docker image with deepTools and use that to further provision it with tabix/samtools. Also, be sure to save the docker provisioning file (the docker file).

      Create a Cyverse analyses app that does two things:

      • creates a scaled coverage graph using bamCoverage (from the deepTools suite)
      • sorts and tabix-indexes the resulting bedgraph file (the output from bamCoverage)

      References:

      bamCoverage documentation
      How to index a bedgraph
      tabix and bgzip in Samtools
      Deploying apps in CyVerse
      Tool integration in DE

      Some examples of scripts that do all of the above can be found in our code repositories in various places. Remind [~aloraine] to provide links to the most relevant repositories and scripts.

        Attachments

          Issue Links

            Activity

            Hide
            ann.loraine Ann Loraine added a comment -

            I am a little confused about the -v option.

            In order to use the image to create coverage graph output file, you first must run the docker image with -v option mapping the directory containing your *.bam file (or files) to the directory /app within the image?

            Karthik Raveendran: Is that correct?

            Show
            ann.loraine Ann Loraine added a comment - I am a little confused about the -v option. In order to use the image to create coverage graph output file, you first must run the docker image with -v option mapping the directory containing your *.bam file (or files) to the directory /app within the image? Karthik Raveendran : Is that correct?
            Hide
            ann.loraine Ann Loraine added a comment -

            The tag "latest" is not useful because when a new docker image is created, it cannot have the same tag. Please research the proper way to indicate docker image versions using tags. Kindly review how we have managed tags and versioning for the IGB docker image used to build IGB in bitbucket. Our build infrastructure depends on the tags being properly versioned to ensure that each version of IGB can be properly built, using the correct software for that version. The same must be done here.

            Show
            ann.loraine Ann Loraine added a comment - The tag "latest" is not useful because when a new docker image is created, it cannot have the same tag. Please research the proper way to indicate docker image versions using tags. Kindly review how we have managed tags and versioning for the IGB docker image used to build IGB in bitbucket. Our build infrastructure depends on the tags being properly versioned to ensure that each version of IGB can be properly built, using the correct software for that version. The same must be done here.
            Hide
            karthik Karthik Raveendran added a comment - - edited

            Yes. The output files will also appear in that host directory. I will fix the tags today as well based on IGB docker image

            Show
            karthik Karthik Raveendran added a comment - - edited Yes. The output files will also appear in that host directory. I will fix the tags today as well based on IGB docker image
            Hide
            ann.loraine Ann Loraine added a comment - - edited

            Karthik Raveendran and [~aloraine] discussed the recent progress:

            • KR has deployed the docker image from lorainelab docker hub account into his private cyverse account space
            • He has tried to run the image but is not getting any output; it looks like the problem has to do with parameter passing, maybe?
            • KR will contact the CyVerse Team to ask about:

            Questions:

            • How do I get access to the condor stderr and stdout ?
            • How do I add metadata tags to my app even while it's in my private account and not yet widely available, i.e., "published"
            Show
            ann.loraine Ann Loraine added a comment - - edited Karthik Raveendran and [~aloraine] discussed the recent progress: KR has deployed the docker image from lorainelab docker hub account into his private cyverse account space He has tried to run the image but is not getting any output; it looks like the problem has to do with parameter passing, maybe? KR will contact the CyVerse Team to ask about: Questions: How do I get access to the condor stderr and stdout ? How do I add metadata tags to my app even while it's in my private account and not yet widely available, i.e., "published"
            Hide
            ann.loraine Ann Loraine added a comment -

            Moving this Closed and we will make new tickets for the next steps.

            Show
            ann.loraine Ann Loraine added a comment - Moving this Closed and we will make new tickets for the next steps.

              People

              • Assignee:
                karthik Karthik Raveendran
                Reporter:
                karthik Karthik Raveendran
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: