Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GUI browse URL improvements #2449

Merged
merged 4 commits into from
Nov 3, 2017
Merged

Conversation

hjoliver
Copy link
Member

A user reminded me that browsing suite and task URLs from the GUI does not work if (a) the GUI is not running on the suite host account; and (b) the GUI account does not have non-interactive ssh access to the suite host account. Reason: the GUI simply invokes the cylc doc / cylc browse command, which parses the suite definition - which can't be done from a remote account with no non-interactive ssh access to the suite host account.

Main change in this PR:

  • store suite and task URLs in the daemon state summary, for use by the GUI

Also:

  • allow use of string templates to replace suite and task names in URLs (was our old-style pseudo environment variable syntax, retained as well for back-compatibility)
  • tidy some associated GUI code a little
  • User Guide: document exact requirements for remote access to suite-parsing and file-retrieval commands, including via the GUI; and clarify the same for suite client commands

@hjoliver hjoliver added the bug Something is wrong :( label Oct 17, 2017
@hjoliver hjoliver added this to the next release milestone Oct 17, 2017
@hjoliver hjoliver self-assigned this Oct 17, 2017
@hjoliver
Copy link
Member Author

hjoliver commented Oct 17, 2017

@matthewrmshin - in light of recent emails - I should add to the documentation on this PR, about the effect of a shared filesystem between GUI host and suite daemon host. My new section on the GUI and ssh is for the non-shared case.

@matthewrmshin
Copy link
Contributor

In the future, we should modify the GUI so that all relevant commands are accessed though the API of the running suite (with the exception for suites running on $USER@localhost?) so we don't have to rely on non-interactive SSH.

@hjoliver
Copy link
Member Author

Yes and no - some of the current GUI functionality could not easily be done that way, e.g. edit the suite definition! (But we could decide that's not what the GUI is for, I guess). The other concern is, do we want huge suite or job logs being served up by the suite daemon?

@matthewrmshin
Copy link
Contributor

Not easy, but possible. Imagine a work flow like this:

  • GUI downloads the content of the suite.rc from suite.
  • GUI starts an editor for the content.
  • On change, GUI uploads the content of the file to the suite.
  • Suite runs reload with the uploaded content.

On large files, I am not sure what the impact would be on the suite, but I would imagine that it is no different from how Rose Bush serves log files via cherrypy.

@hjoliver
Copy link
Member Author

Fair enough, it certainly is possible. For the future web GUI, we should either do that or drop these functions of the current GUI.

@hjoliver
Copy link
Member Author

hjoliver commented Oct 24, 2017

Still TO DO: #2449 (comment)

Copy link
Contributor

@matthewrmshin matthewrmshin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks OK in general. Worth adding some doc strings to new and modified methods in cylc.gui.app_gcylc.

@hjoliver
Copy link
Member Author

hjoliver commented Nov 3, 2017

Updated docs for the shared filesystem case, added some doc strings, and rebased to master. Hopefully this is good to go now.

@oliver-sanders oliver-sanders merged commit 97a7a5d into cylc:master Nov 3, 2017
@hjoliver hjoliver deleted the cylc-browse-fix branch November 3, 2017 10:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something is wrong :(
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants