Story #2754

Optimize Workbench "run pipeline" workflow for easy use case

Added by Tom Clegg over 6 years ago. Updated over 6 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
-
Start date:
05/20/2014
Due date:
% Done:

100%

Estimated time:
(Total: 18.50 h)
Story points:
1.0

Description

Selecting a template
  • Separate lists of "my pipeline templates" and "shared with me". (Open "shared" tab by default if I have none of my own.)
  • Javascript-searchable table similar to "show folder" page
  • "Show pipeline template" page similar to "show folder" page. Instead of "contents" panel, show a list of my+shared pipeline instances that have used this template. Add "Run" button.
Selecting inputs
  • On "new pipeline instance" page, default to a friendly form view optimized (for now) for selecting a single input collection.
    • Any script_parameter without a "description" field does not get exposed at all
    • If you have exactly one collection in your "current selection", and the pipeline requires exactly one parameter that is a collection, default to your selected collection.
    • When a collection is selected, you get a preview of that collection -- at least the first few filenames, with sizes (this lets you compare with the input description which will say something like "input should have fastq or fastq.gz files")
    • Click "advanced" button/tab to switch to what is now the current view, with all parameters exposed
Nice to have:
  • Option to switch to "grid" view, using cards (sample code is currently commented out on the "show folder" page)

Subtasks

Task #2792: New simplified pipeline instance formResolvedTom Clegg

Task #2841: Review 2754-easy-run-pipelineResolvedTom Clegg

Task #2788: New pipeline templates index pageResolvedTom Clegg

Task #2869: Review 2754-pipeline-template-descriptionResolvedTom Clegg

Task #2868: If no pipelines have been run, encourage user to view list of templates.ResolvedTom Clegg

Associated revisions

Revision b28565c8
Added by Tom Clegg over 6 years ago

2754: Merge branch '2754-easy-run-pipeline' refs #2754

Revision a01f0a9b
Added by Tom Clegg over 6 years ago

2754: Merge branch '2754-pipeline-template-description' refs #2754

History

#1 Updated by Tom Clegg over 6 years ago

  • Description updated (diff)
  • Story points set to 3.0

#2 Updated by Tom Clegg over 6 years ago

  • Description updated (diff)

#3 Updated by Tom Clegg over 6 years ago

  • Description updated (diff)

#4 Updated by Tom Clegg over 6 years ago

  • Assigned To set to Tom Clegg

#5 Updated by Peter Amstutz over 6 years ago

Impressions of 89096c0 (these are all subjective):

  1. The rounded, padded box around the instructions ("Provide a value...") looks a lot like the rounded, padded input fields, despite being a different color. Perhaps less styling would be better here?
  2. "Input for XXX component" seems wordy. How about just the component name with a "label" style?
  3. With the input field full-width, the text should be right-justified
  4. The instructions should go above the field, not below
  5. If we're going to style input field with a big, rounded, padded box, can we use the inline x-editable style instead of the popup?
  6. The note about the components tab at the bottom should be active, e.g. "Click on the components tab to..." instead of passive.

#6 Updated by Tom Clegg over 6 years ago

Peter Amstutz wrote:

  1. The rounded, padded box around the instructions ("Provide a value...") looks a lot like the rounded, padded input fields, despite being a different color. Perhaps less styling would be better here?

Lose "alert" style, gain italics. Better, I think?

  1. "Input for XXX component" seems wordy. How about just the component name with a "label" style?

The word "input" is the name of the script parameter. In the case of "input" it sounds redundant. Now, if a "title" is provided in the pipeline description, use that instead of generic "{paramname} for {componentname} component".

  1. With the input field full-width, the text should be right-justified

Which text? I'm not picturing this...

  1. The instructions should go above the field, not below

I'm deferring to Bootstrap here, which suggests "bold short label above, longer description/help below". Perhaps giving the pipeline template control over both labels via "title" and "description" helps here too?

  1. If we're going to style input field with a big, rounded, padded box, can we use the inline x-editable style instead of the popup?

Sort of. I tried this, but even with a select box we get the "size changes when you click" bug we've run into before with inline mode. Also, you have to click twice: once to go from "static form input" to "x-editable select box" mode, then again to make the thing actually drop down. Rather than get bogged down in this, I'd like to leave it here and make our next move "pop up a full-featured select dialog that lets me search the entire system".

  1. The note about the components tab at the bottom should be active, e.g. "Click on the components tab to..." instead of passive.

Fixed.

Also made the form 60% instead of 100% content area width. (Better?)

d61f277 (and screenshot attached)

#7 Updated by Peter Amstutz over 6 years ago

  1. Italics are definitely better
  2. Having an custom title is good. For the default title, I we should just be explicit, e.g. "#{cname} / #{component[:script]} / #{pname.to_s.humanize}" makes totally clear the component, script and parameter that you're setting
  3. I meant the text with the field itself, when you're not editing it, should be right justified. But since you shrunk the field down to 60% width I'm fine with it either way
  4. OK, Bootstrap style is valid, I think my issue was mostly with the title text
  5. We really ought to be able to tweak the x-editable inline editing style to not change the height of the box; however I agree that the next move for picking collections should be full-featured selection dialog

Change the default title pattern (#2) (or not, if you're really attached or have a better idea); otherwise LGTM.

#8 Updated by Tom Clegg over 6 years ago

Peter Amstutz wrote:

  1. Having an custom title is good. For the default title, I we should just be explicit, e.g. "#{cname} / #{component[:script]} / #{pname.to_s.humanize}" makes totally clear the component, script and parameter that you're setting

See attached. (I also added the words component, script, parameter because otherwise you get enigmas like "bwa-aln / bwa-aln / input".)

140944b

#9 Updated by Brett Smith over 6 years ago

Reviewing 2754-pipeline-template-description at fe84c84827af6092784408629e4cde0663fe6af8

This branch does not include the associated migration. Please add and push. The rest of the code looks good to me, but I'd like to be able to test it. :)

#10 Updated by Tom Clegg over 6 years ago

Whoops. Added, now at 5805fc3

#11 Updated by Brett Smith over 6 years ago

Tom Clegg wrote:

Whoops. Added, now at 5805fc3

Thanks. I think this is good to merge.

#12 Updated by Tom Clegg over 6 years ago

  • Target version changed from 2014-05-28 Pipeline Factory to 2014-06-17 Curating and Crunch

#13 Updated by Tom Clegg over 6 years ago

  • Story points changed from 3.0 to 1.0

#14 Updated by Tom Clegg over 6 years ago

  • Status changed from New to Resolved

Also available in: Atom PDF