1. 22 May, 2017 1 commit
  2. 17 May, 2017 1 commit
  3. 16 May, 2017 3 commits
  4. 12 May, 2017 1 commit
    • Leigh Stoller's avatar
      Resurrect the original images listing page. · d6227c77
      Leigh Stoller authored
      1. We want to use this Emulab portal so users can see what images are
         available. Its not quite right for the Cloudlab portal yet, not
         showing it there yet.
      
      2. Default node now is to show just project/system images. The My Disk
         Images link is a separate page that deals with the connection between
         profiles and images. Needs to think about how to combine these, along
         with the Classic images list. Messy.
      
      3. Add to the Storage menu.
      d6227c77
  5. 11 May, 2017 1 commit
  6. 06 May, 2017 1 commit
  7. 05 May, 2017 1 commit
  8. 04 May, 2017 1 commit
  9. 03 May, 2017 3 commits
  10. 02 May, 2017 1 commit
    • Leigh Stoller's avatar
      Speed up the instantiate page response time, it was taking forever! · af8cc34f
      Leigh Stoller authored
      1. Okay, 10-15 seconds for me, which is the same as forever.
      
      2. Do not sort in PHP, sort in javascript, let the client burn those
         cycles instead of poor overworked boss.
      
      3. Store global lastused/usecount in the apt_profiles table so that we
         do not have to compute it every time for profile.
      
      4. Compute the user's lastused/usecount for each profile in a single
         query and create local array. Cuts out 100s of queries.
      af8cc34f
  11. 01 May, 2017 3 commits
  12. 28 Apr, 2017 2 commits
    • Leigh Stoller's avatar
      Changes on the manage profile page: · 9cca2ea0
      Leigh Stoller authored
      As per Jon's suggestion at the meeting, do not show the text boxes until
      there is a script or rspec to work with. In fact, do not show any of the
      rest of the page until the user provides something.
      
      Also suggested by Jon, is to now use a read-only textarea when the text
      is not writable, do what we do on the show-profile page instead; show
      the rendered text inside a plain scrollable div.
      
      I also messed with the button labels, try it you'll like it.
      9cca2ea0
    • Leigh Stoller's avatar
      Name a couple of tabs. · d1b9c911
      Leigh Stoller authored
      d1b9c911
  13. 24 Apr, 2017 1 commit
  14. 17 Apr, 2017 5 commits
    • Leigh Stoller's avatar
      rspecs are so passe ... · 7c38809d
      Leigh Stoller authored
      Redo the rspectogenilib converter with the goal of supporting both
      translation *and* regression testing. A new library is responsible for
      taking the output of libXML and creating a data structure representing
      the rspec. While this is being done, we look for any constructs or
      attributes we cannot handle with geni-lib and report that as an error;
      we are not going to convert an rspec unless we can do it correctly. and
      completely.
      
      Regression testing is done with another part of this library, that knows
      how to compare each element of two rspecs. Basically start at the root
      and compare all the way down, failing if the two "parses" of the XML are
      not equal at any level.
      
      rspectogenilib now has an option that does regression testing by running
      the new geni-lib and comparing the resulting rspec against the original.
      
      On the UI side, there is a new button on existing rspec based
      profiles (currently only for admin and studs) called "Convert to
      geni-lib" that runs the converter to convert the profile to geni-lib.
      The user does not have to accept the new script of course.
      
      However, a converted profile is marked in the database, and the user can
      still use Jacks on it, we just run rspectogenilib geni-lib again on the
      new rspec. If the user edits the geni-lib, we switch back to normal
      geni-lib (clear the flag) when the new version is saved, and Jacks is
      once again read-only. This is explained in the UI, and is one of the
      things people need to give comment on.
      
      There is also a mode on the Create Profile page for converting new rspec
      based profiles to geni-lib, but that is fully turned off for now, we can
      get to that later.
      7c38809d
    • Leigh Stoller's avatar
      Make the message modal static. · 49fc81f5
      Leigh Stoller authored
      49fc81f5
    • Leigh Stoller's avatar
      Minor UI tweak to previous revision. · 582fe18f
      Leigh Stoller authored
      582fe18f
    • Leigh Stoller's avatar
    • Leigh Stoller's avatar
      Separate user vs admin lockdown, previously they were intertwined. · 8e88917e
      Leigh Stoller authored
      User lockdown is as before, user can override that on the terminate
      page. Admin lockdown is like Classic lockdown; the flag must be cleared
      before the experiment can be terminated, there is no override on the
      termination page.
      
      UI changes on the status and admin extend page for the additional
      flag (instead of a single lockdown, there are now two).
      8e88917e
  15. 03 Apr, 2017 1 commit
  16. 30 Mar, 2017 2 commits
  17. 27 Mar, 2017 2 commits
  18. 24 Mar, 2017 1 commit
    • Leigh Stoller's avatar
      Profile changes: · 33b569e8
      Leigh Stoller authored
      1. Finally, ajaxify the manage profile page. I never got around to doing
         this, and it made doing the thing I really wanted to do easier,
      
      2. Add a checkbox modal to ask the user if any accounts have been added,
         when doing initial clone of an experiment. We already did this with
         snapshot on the status page, but as above, it was going to be
         annoying to add to this page without reworking it.
      
      3. Improvements to repo-based profiles; when a push hook is executed, we
         were already updating the Repository Panel and the branch/tag list,
         but I wasn't updating the source code in the web page. Now we do that.
      33b569e8
  19. 20 Mar, 2017 2 commits
    • Leigh Stoller's avatar
      48d9fd9f
    • Leigh Stoller's avatar
      Support for push webhooks for repo-based profiles: · 10e12b53
      Leigh Stoller authored
      We are running another apache server on boss, on port 51369, which
      invokes a backend perl script that maps the URL path argument to the
      profile, and then calls out to manage_profile to pull from the
      repository and update the profile to reflect the new HEAD branch.
      Using mod_rewrite in the apache config to restrict URLs to exactly
      the one URL that is accepted, modulo the value of the secret token.
      
      I had to refactor a bunch of code in manage_profile to make it easier to
      add a new entrypoint for modification from a git repo. This needed to be
      done for a long time, I had never cleaned up the original profile
      creation code.
      
      On the edit profile web page, there is a new row in the Repository panel
      providing the Push URL, and an explanatory help modal.
      
      There is a new slow polling timer that looks for a change to the repo
      hash and causes the web page to update in place from the repo, as when a
      push hook is invoked and changes the repo.
      10e12b53
  20. 14 Mar, 2017 1 commit
  21. 13 Mar, 2017 1 commit
    • Leigh Stoller's avatar
      Tweaks: · b21f4953
      Leigh Stoller authored
      1. Fix for deleting profiles from image deletion; failing to find all
         the profiles to delete.
      
      2. More wording changes.
      
      3. List profile versions and links to them.
      b21f4953
  22. 10 Mar, 2017 2 commits
  23. 09 Mar, 2017 2 commits
  24. 06 Mar, 2017 1 commit