Project

General

Profile

Idea #3112

Updated by Tom Clegg over 9 years ago

Finding it 
 * Modal, always in DOM, menu items under "help" dropdown cause it to open 
 * Menu items: "Show version / debugging info", "Report a problem" 
 ** First existing help links, then separator, then this new stuff 

 Content 
 * Render as a bootstrap form with static form inputs (plus hidden ones, so they actually get submitted) 
 * Show workbench source_version (get this from application.yml) 
 * Show workbench @arvados_v1_base@ config 
 * Show apiserver source_version (get this from discovery doc, which gets it from apiserver's application.yml) 
 * Show apiserver discovery document generatedAt timestamp 
 * Current page URI (with overflow=ellipsis) -- populate when showing modal, using @window.location@ 
 * If current page is an error page: 
 ** Current error message 
 ** Current api_response[:error_token] 
 * Your user_uuid 
 * Support email address (from workbench config) 
 * If "report a problem" is how we got here, also reveal: 
 ** "Found a problem? Tell us what happened:" + textarea + "Report bug" button 
 ** "Cancel" button 
 * else reveal a "Close" button 

 Error page 
 * (Make sure the modal still works if current_user is nil) 
 * Add a "More info / report problem..." button to the error page that brings up the "report" modal 

 Submit 
 * AJAX 
 ** Disable "Report bug" button and change its text to "Sending..." during AJAX call 
 ** When AJAX succeeds, replace form with an info panel "Thanks for reporting!" and reveal the "Close" (close dialog) button 
 ** If AJAX fails, say something that acknowledges the irony like "Well, this is pretty embarrassing. I couldn't even submit your bug report! We really want this to work, though -- please do try again." 
 ** (I think there's something out there like "data-disable-with" that can do all the button text changing for us.) 
 * Send email message from workbench (no API call) 
 * Also log the submitted info to stderr 

 Add configs 
 * apiserver source_version (and include this in the discovery doc as @sourceVersion@) 
 * workbench source_version 

 Default in application.default.yml can be something like this, but we also want to know whether there are local modifications (i.e., does `git status -s` report anything?). If there are local modifications, abbreviate the commit sha1 to 20 characters and append "-modified" 
 <pre> 
 common: 
   source_version: <%= `git show --format=%h` %> 
 </pre> 

Back