unlhcc/HCCGo

Git Clone to Cluster Button

Closed this issue · 10 comments

Takes a URL and clones the git repository to the current cluster. Possibly a part of an options page?

Adding TODO List:

  • Read in job submit files from the repo's package.json file.
  • Fade out the tutorial while loading it's repo data.
  • Fix progress bar on tutorials page, not updating correctly.
  • Add text, probably in markdown like beta_notice.md, to the side bar of the Tutorials page.
  • HTML escape everything we read in from the repo's package.json, for safety.
  • Interpret $WORK from package.json and convert it to their work directory. 32c509d
  • Add support for tags from the package.json c433a8b
  • Update the package.json to include modules
  • User message stating where the files for the tutorial were loaded

@caseylargent What about this idea:

  • Make a new view, call it Tutorials.
  • In the middle of the screen, have a ng-repeat (copy from the cluster landing page) to show the different git repos to clone.
  • Pull the data from a tutorials.json in the data directory. The tutorials.json will be an array of tutorials, with metadata like Description, Git repo, Name, list of topics...
  • (Bonus points) When the user clicks a tutorial, have it redirect them to the job submission page, with an example submission already filled out.

If you do point 4, the original repo has existing submit files that you could parse into the submission form.

I have the beginning of a tutorials page on my repo, branch add_tutorials. @caseylargent please start there.

image

@caseylargent I've done a bunch of this work this weekend. When you work on this, start from my add_tutorials branch.

Here is the diff, so far:
djw8605/HCCGo@master...djw8605:add_tutorials

And a screenshot of the tutorials page:
image

Some items of note:

  • loading a tutorial more than once duplicates the submit file
  • is it possible to have the load module lines appear in the modules field as opposed to commands?
  • some way to display tutorial text would be helpful (such as the README.md file or just a link to the github pages for the repo)
  • user message stating where the files for the tutorial were loaded

I've added a few of these items to the checklist above.

For the tutorial text, the "Description" is configured in the package.json. Also, below the description, the Github link goes to the Repo, where the README.md is on the front page.

@caseylargent I fixed a few things. Be sure to pull before you start working on it again.

Also, the tutorial should be faded while it's getting the package.json, not while it's installing the tutorial.

@CarrieBrown Here is the tutorial page with your text:
image

That looks great!