1. 03 Nov, 2006 4 commits
    • Leigh B. Stoller's avatar
      Flyspray #117: Just for Mike, clean up the header links so they are · 181608c7
      Leigh B. Stoller authored
      consistent and easy to use.
      181608c7
    • Leigh B. Stoller's avatar
      Bug fix; the metadata_type was not getting picked up from the DB, and · 2bc1d50b
      Leigh B. Stoller authored
      so the rules for checking the values based on the type were not being
      applied. This allowed Eric to select a TID that was not valid later
      when it was used as an eid.
      2bc1d50b
    • Leigh B. Stoller's avatar
      Just for Eric, add tooltip mouseovers for the parameter (names) in the · dd05c488
      Leigh B. Stoller authored
      instantiate and start run page. Hover over the parameter name ...
      dd05c488
    • Leigh B. Stoller's avatar
      Big set of changes intended to solve a couple of problems with long · ff9061d4
      Leigh B. Stoller authored
      term archiving of firstclass objects like users, projects, and of
      course templates.
      
      * Projects, Users, and Groups are now uniquely identified inside the
        DB by a index value that will not be reused. If necessary, this
        could easily be a globally unique identifier, but without federation
        there is no reason to do that yet.
      
      * Currently, pid, gid, and uid still need to be locally unique until
        all of the changes are in place (which is going to take a fairly
        long time since the entire system operates in terms of those, except
        for the few places that I had to change to get the ball rolling).
      
      * We currently archive deleted users to the deleted_users table (their
        user_stats are kept forever since they are indexed by the new index
        column). Eventually do the same with projects (not sure about
        groups) but since we rarely if ever delete a project, there is no
        rush on this one.
      
      * At the same time, I have started a large reorg of the code, to move
        all of the user, group, project code into modules, both in php and
        perl, turning them into first class "objects" (as far as that goes
        in php and perl). Eventually, the number of query statements
        scattered around the code will be manageable, or so I hope.
      
      * Another related part of this reorg is to make it easier to move the
        new user/project/group code in the perl backend so that it can be
        made available via the xmlrpc interface (without duplication of the
        code).
      ff9061d4
  2. 31 Oct, 2006 1 commit
    • Leigh B. Stoller's avatar
      Flyspray #120: Fix several problems that were causing log output from · 88ef17c4
      Leigh B. Stoller authored
      various template operations to get lost. Also fixed the code in
      mungelog.js that was supposed to handle bailing out if there was no
      response from the server in a reasonable amount of time; if that code
      had been working, no one would have even noticed all the other problems!
      
      Also some cleanup in parts of mungelog.js and showlogfile_sup.php3;
      slowly migrating parts of this to emulab_sup.js since we use some of
      the same code in other places.
      88ef17c4
  3. 30 Oct, 2006 2 commits
  4. 29 Oct, 2006 1 commit
  5. 27 Oct, 2006 2 commits
  6. 26 Oct, 2006 4 commits
    • Leigh B. Stoller's avatar
    • Leigh B. Stoller's avatar
    • Kevin Atkinson's avatar
      Various tblog changes: · 95a3a6a7
      Kevin Atkinson authored
        Make an attempt to discover what the error was before an swap-* was
        canceled, if any.  Both the main error (canceled) and the other error
        are stored in the error table.  To support this a new column in the
        error table is added "rank".  The primary error has a rank 0 while the
        other error has a rank 1.
      
        Make an attempt to determine when an error is a "me too" error or the
        real cause of the problem.  "Me too" errors are errors which are
        generally reported when the callie script determined that the caller
        script fails.  The caller script should have reported the error, but
        in some cases the error didn't make it into the database.  Thus if a
        "me too" is reported as the cause of a "swap-*" more info is needed to
        determine the true cause.  When a "me too" error is reported it is
        followed by a "..." on it's own line.  It is also recorded in the
        errors table under the new column "need_more_info".
      
        Add inferred column to the errors table.  This is the same value as
        the inferred variable in tblog_find_error.
      
        Add revision column to errors table to make it easy to tell which
        algorithm was used to determine the error.
      95a3a6a7
    • Leigh B. Stoller's avatar
      Add a "Report Bug, Request Feature" link to the bottom of the page, · 5d07c9fc
      Leigh B. Stoller authored
      across from the Contact link.
      
      Yep, want to encourage more use of flyspray for reporting bugs and
      requesting features. Maybe not possible but lets try!
      5d07c9fc
  7. 25 Oct, 2006 4 commits
  8. 24 Oct, 2006 4 commits
  9. 23 Oct, 2006 1 commit
  10. 20 Oct, 2006 1 commit
    • Mike Hibler's avatar
      Wow, this should make me look important! · afa5e919
      Mike Hibler authored
      Two-day boondoggle to support "/scratch", an optional large, shared filesystem
      for users.  To do this, I needed to find all the instances where /proj is used
      and behave accordingly.  The boondoggle part was the decision to gather up all
      the hardwired instances of shared directory names ("/proj", "/users", etc.)
      so that they are set in a common place (via unexposed configure variables).
      This is a boondoggle because:
      
      1. I didn't change the client-side scripts.  They need a different mechanism
         (e.g., tmcd) to get the info, configure is the wrong way.
      
      2. Even if I had done #1 it is likely--no, certain--that something would
         fail if you tried to rename "/proj" to be "/mike".  These names are just
         too ingrained.
      
      3. We may not even use "/scratch" as it turns out.
      
      Note, I also didn't fix any of the .html documentation.  Anyway, it is done.
      To maintain my illusion in the future you should:
      
      1. Have perl scripts include "use libtestbed" and use the defined PROJROOT(),
         et.al. functions where possible.  If not possible, make sure they run
         through configure and use @PROJROOT_DIR@, etc.
      
      2. Use the configure method for python, C, php and other languages.
      
      3. There are perl (TBValidUserDir) and php (VALIDUSERPATH) functions which
         you should call to determine if an NS, template parameter, tarball or
         other file are in "an acceptable location."  Use these functions where
         possible.  They know about the optional "scratch" filesystem.  Note that
         the perl function is over-engineered to handles cases that don't occur
         in nature.
      afa5e919
  11. 18 Oct, 2006 2 commits
  12. 12 Oct, 2006 3 commits
    • Mike Hibler's avatar
      Same harmless typo, different file. · 2bab9559
      Mike Hibler authored
      Yes, I grepped for it everywhere this time!
      2bab9559
    • Mike Hibler's avatar
      Fix harmless typo · b1bfd91c
      Mike Hibler authored
      b1bfd91c
    • Leigh B. Stoller's avatar
      By popular demand, give user a choice of where to get the next set of · bb996961
      Leigh B. Stoller authored
      (initial) parameters for a new run. Three choices right now; from the
      template itself, from the instance, or from the previous run. On the
      web interface this is presented as three buttons. On ops, it is the
      the -y option, which takes one of template,instance,lastrun as its
      argument (you can of course combine the -y option with an XML file to
      override specific params).
      
      At present, there is no default. Lets give it a chance to sink in
      before I pick something that will annoy 50% of the people 75% of the
      time.
      bb996961
  13. 09 Oct, 2006 2 commits
  14. 08 Oct, 2006 1 commit
  15. 06 Oct, 2006 1 commit
  16. 05 Oct, 2006 1 commit
    • Leigh B. Stoller's avatar
      More work on "recording" template events. · e9607a77
      Leigh B. Stoller authored
      * New version of template_record just for ops, since so much is
        different about ops, not bothering to maintain a single version.
      
      * Various fixes to how the recorded events are stored and reconstituted.
        The big fix is to wrap them in a sequence to that they get fired
        properly (waiting for completion of previous event in recording).
      
      * New buttons to Pause and Continue event time, which is used when
        adding recorded events. This allows users to pause time while they
        "think" so when an event is recorded, the thinking time is not actually
        in the timeline. Eventually hope to figure this out automatically, but
        that will take some real, uh, thinking.
      
      * Add a new event editor (linked off the template page) that allows
        you to delete and change the recordings. Note that you can only edit
        the events at the template level; you cannot edit the events of an
        instance (swapped in experiment), and you can only edit the recorded
        events, not any other events. Not sure its useful to be able to do
        either of these yet, but probably not too hard to add at some point.
      e9607a77
  17. 02 Oct, 2006 1 commit
  18. 29 Sep, 2006 1 commit
    • Leigh B. Stoller's avatar
      Minor changes to per-experiment DB stuff. · dc8e62a3
      Leigh B. Stoller authored
      * Create a per-experiment DB user for the per-experiment DB; the user
        name is equal to the DB name.
      
      * Add a dpdbpassword field to the experiments table; this is the
        randomly generated password for the DB user mentioned above.
      
      * For Templates, use the above user/password in the environment,
        instead of the swapper uid/password.
      
      * Add experiment dbname/dbpassword to the Show Experiment page.
      dc8e62a3
  19. 28 Sep, 2006 1 commit
  20. 27 Sep, 2006 2 commits
  21. 21 Sep, 2006 1 commit