1. 26 Nov, 2007 1 commit
  2. 21 Sep, 2007 1 commit
    • Leigh Stoller's avatar
      Two somewhat related template changes. · 217de8ab
      Leigh Stoller authored
      * Reorg the CVS repo so that records and setup are toplevel modules in
        the repo, instead of directories in a single module named by the
        guid (which is redundant and annoying).
      
      * Some changes to the spewlog stuff. It used to handle only
        experiments, but I really wanted it to handle template create and
        modify. Took a bunch of small changes to a lot of places to make
        this work correctly, but it was worth it.
      
        There are some changes I made that I can retrofit to the other spew
        pages to make it look a little nicer at the top of the page, to use
        less space.
      217de8ab
  3. 19 Sep, 2007 1 commit
  4. 11 Sep, 2007 3 commits
  5. 29 Aug, 2007 1 commit
  6. 06 Aug, 2007 1 commit
  7. 30 Jul, 2007 1 commit
  8. 27 Jul, 2007 1 commit
  9. 18 Jul, 2007 1 commit
  10. 16 Jul, 2007 2 commits
    • Leigh Stoller's avatar
      Generate a info.xml file in the records/run directory that describes · 055b8769
      Leigh Stoller authored
      the run. Includes the bindings for the run and the metadata name/value
      pairs. This is the same data that is dumped by template export, so
      at this point template_export has been completely superceded by the
      CVS repo.
      055b8769
    • Leigh Stoller's avatar
      The CVS repo will now have two subdirs, one called "setup" which is · 1aaa383c
      Leigh Stoller authored
      where the current stuff goes (datastore, nsfile, etc.). The other
      subdir is called "records" and will be populated with stuff that we
      currently put into the archive (the contents of the experiment
      directory).
      
      There is a record for each run, currently named XXX,YY where XXX is
      the instance ID and YY is the run number. I plan to add an XML file to
      map these to the symbolic names, but these are not required to be
      unique, which is why the directories are not named with them.
      1aaa383c
  11. 18 May, 2007 1 commit
  12. 17 May, 2007 1 commit
  13. 15 May, 2007 1 commit
    • Leigh Stoller's avatar
      Checkpoint changes that have been discussed in the last few weeks: · c4f53202
      Leigh Stoller authored
      * Records are now "help open" when a run is stopped. When the next run
        is started, a check is made to see if the files
        (/project/$pid/exp/$eid) have changed, and if so a new version of the
        archive is committed before the next run is started.
      
      * Change the way swapmod is handled within an instance. A new option
        on the ShowExp page called Modify Resources. The intent is to allow
        an instance to be modified without having to start and stop runs,
        which tends to clutter things up, according to our user base. So, if
        you are within a run, that run is reset (reused) after the swapmod is
        finished. You can do this as many times as you like. If you are
        between runs (last operation was a stoprun), do the swapmod and then
        "speculatively" start a new run. Subsequent modifies reuse the that
        run again, as above.
      
        I think this is what Kevin was after ... there are some UI issues
        that may need to be resolved, will wait to hear what people have to
        say.
      
      * Revising a record is now supported. Export, change in place, and
        then use the Revise link on the ShowRun page. Currently this has to
        happen from the export directory on ops, but eventually allow an
        upload (to correspond to downloaded exports)
      
      * Check to see if export already exists, and give warning. Added a
        checkbox that allows user to overwrite the export.
      
      * A bunch of minor UI changes to the various template pages.
      c4f53202
  14. 25 Apr, 2007 1 commit
  15. 21 Feb, 2007 1 commit
  16. 14 Feb, 2007 2 commits
  17. 07 Feb, 2007 1 commit
  18. 18 Jan, 2007 1 commit
    • Leigh Stoller's avatar
      Change how the archive stuff is presented in the template instance and · 808f43ec
      Leigh Stoller authored
      run display pages.
      
      * Add new code to archive_control and libarchive to create tags (in
        optional subdirs) of the tags directory. These tags are simply tags
        on the current trunk at the time.
      
      * Change to template instantiate and start/top run code to create a
        "runs" directory. Within the runs directory are subdirs named for
        each runid, and within this directory are start and stop run tags.
        Eventually add some other tags when doing swapmods, but do not have
        that figured out yet.
      
      * Change the viewcvs code to add an "embedded" view of an archive.
        This is just an alternate view that has no header/footer goo, but
        only the actual svn contents. The main reason for this change is
        that the header and footers take up a huge amount of space and
        contribute nothing. Smaller means its easier to add to the instance
        and run show pages.
      
      * Add the above mentioned embedded archive view to the instance and
        run show pages. On the instance page you see the directory of all
        runids, and on the show run page you see the subdir for that run.
      808f43ec
  19. 08 Dec, 2006 1 commit
    • Leigh Stoller's avatar
      As discussed in meetings and email ... this commit changes what is · b898a8cc
      Leigh Stoller authored
      archived.  Rather then a special "archive" directory in the experiment
      directory, we know archive the entire experiment directory.
      
      This change should be backwards compatable, but let me know if not.
      
      Note that the nsdata directory is gone; the nsfile comes from the
      tbdata, but I know place a copy in nsfile.ns so that the name is well
      known.
      b898a8cc
  20. 31 Oct, 2006 1 commit
    • Leigh Stoller's avatar
      Flyspray #120: Fix several problems that were causing log output from · 88ef17c4
      Leigh 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
  21. 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
  22. 18 Oct, 2006 1 commit
  23. 13 Oct, 2006 1 commit
  24. 12 Oct, 2006 1 commit
    • Leigh Stoller's avatar
      By popular demand, give user a choice of where to get the next set of · bb996961
      Leigh 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
  25. 09 Oct, 2006 1 commit
  26. 08 Oct, 2006 1 commit
  27. 05 Oct, 2006 2 commits
    • Leigh Stoller's avatar
      More work on "recording" template events. · e9607a77
      Leigh 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
    • Leigh Stoller's avatar
  28. 04 Oct, 2006 2 commits
  29. 02 Oct, 2006 1 commit
  30. 27 Sep, 2006 2 commits
  31. 26 Sep, 2006 1 commit
    • Leigh Stoller's avatar
      * A bit more support for swapmod from Start Run. Mostly bookkeeping · a8631011
      Leigh Stoller authored
        info so we have a record of it.
      
      * First attempt at dealing with nodes that do not respond to the
        synchronous events that are sent from start and stop run. Rather
        then failing, attempt to figure out which nodes are actually dead,
        and save some state in the DB associated with the run. The current
        method for figuring out which nodes are dead is the node_status
        table, since the event scheduler is the only thing that knows what
        nodes did not respond. Will probably revisit this very soon.
      
      * Bug fixes of course.
      
      * Start implementing a Run object so replace some of the code in the
        Instance object.
      a8631011
  32. 20 Sep, 2006 1 commit
    • Leigh Stoller's avatar
      By popular demand, you can now force a swap modify to be done when · b9161642
      Leigh Stoller authored
      doing a Start Run. On the web page, there is a new checkbox, and
      on ops, template_startrun takes a new -m option.
      
      Caveat: You cannot specify a new NS file, yet. The original file is
      reparsed, and the idea is that a change in the template parameters
      will result in a change to the topology. I will add the ability to
      specify a new NS file in the next revision of this change.
      
      If you really really want to change the NS file, go to
      /proj/$pid/exp/$eid/archive/nsdata and edit nsfile.ns ...
      
      In addtion, DATASTORE is now defined while parsing the NS file. This
      turned to be quite the headache!
      b9161642
  33. 19 Sep, 2006 1 commit