1. 16 May, 2007 1 commit
  2. 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
  3. 09 May, 2007 1 commit
  4. 07 May, 2007 1 commit
    • Leigh Stoller's avatar
      Mostly this commit is the switch from SVN archives to ZIP archives. · 55d1bb6e
      Leigh Stoller authored
      Other stuff leaked in too ...
      
      I did separate out a lot of tbsetup/libArchive into db/Archive, and
      whats left in libArchive.pm will eventually move over into the
      Template library.
      
      Note that I have dropped archiving of plain experiments; this is not
      really owrth it outside the workbench context, and it just wastes
      space and makes a lot if stuff painful in the web interface.
      55d1bb6e
  5. 26 Apr, 2007 2 commits
  6. 25 Apr, 2007 1 commit
  7. 17 Apr, 2007 2 commits
  8. 20 Mar, 2007 1 commit
  9. 13 Mar, 2007 2 commits
  10. 08 Mar, 2007 1 commit
  11. 07 Mar, 2007 3 commits
  12. 06 Mar, 2007 4 commits
  13. 14 Feb, 2007 1 commit
  14. 13 Feb, 2007 1 commit
  15. 07 Feb, 2007 1 commit
    • David Johnson's avatar
      Python interface to db is now most of the way up to speed with · 5da05762
      David Johnson authored
      libdb.pm.in.  There's a nasty little hack to deal with forks, because the
      underlying python mysql db module does not help us deal with them.
      Basically, there is no way (and I mean no way!) to close a connection in
      the child without actually sending a disconnect to the server... so the
      parent's connection gets killed too.  The only way around this is to hack
      the Python C API wrapper that the mysql python module is built on.  For
      now, we just close off both connections before a fork via a TBDBPreFork(),
      and restore them implicitly on the first query after the fork.  It sucks,
      but it's the best we can do until hacking the mysql module.
      
      Anyway, the big fix is that testbed-ops no longer gets spammed with
      DBQuery failures; they are retried just like in libdb.pm.in.
      5da05762
  16. 23 Jan, 2007 1 commit
  17. 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
  18. 16 Jan, 2007 4 commits
    • Leigh Stoller's avatar
      10b59ad2
    • Leigh Stoller's avatar
      Make rule not quite clever enough. · 34d921d1
      Leigh Stoller authored
      34d921d1
    • Leigh Stoller's avatar
      Move the bulk (or guts) of newuser and newproject from the web · 16aaa101
      Leigh Stoller authored
      interface to the backend. There are new scripts that can be called
      from the command line:
      
      	newuser xmlfile
      	newproj xmlfile
      
      They both run from small xmlfiles that are generated by the web
      interface from the form data. I also moved user verification to the
      backend so that we do not have duplicated email functions, but that
      was a small change.
      
      Upon error, the xmlfile is saved and sent to tbops so that we can
      rerun the command by hand, rather then force user to fill out form
      again. I also do a better job of putting the form back up intact when
      there are internal errors.
      
      If the user provides an initial public key, that is put into the xml
      file as well and addpubkey is called from newuser instead of the web
      interface. A more general change to addpukey is that it is now
      *always* called as "nobody". This script was a morass of confusion
      cause of having to call it as nobody before the user actually
      exists. In fact, another of my ongoing projects is to reduce the
      number of scripts called as a particular user, but thats a story for
      another day. Anyway, the script is always called as nobody, but we
      pass along the implied user in the environment so that it can do
      permission checks.
      16aaa101
    • Leigh Stoller's avatar
      35193718
  19. 12 Jan, 2007 2 commits
  20. 11 Jan, 2007 1 commit
  21. 10 Jan, 2007 2 commits
  22. 09 Jan, 2007 2 commits
  23. 05 Jan, 2007 2 commits
    • Leigh Stoller's avatar
      63b87a12
    • Leigh Stoller's avatar
      Several fixes/changes: · 54705b2b
      Leigh Stoller authored
      * The unix group and gid are actuallt part of the group structure, not
        the project. So, when we load a project, load its default group as
        well, and have the routines for the name/gid hand off to the group.
      
      * Change Lookup() to allow either a new idx or an old pid by looking
        at the format of the token. This will make it easier to transition
        to the new order of things.
      
      * Part of the uncommitted uid changes is the addition of head_idx to
        replace head_uid. This code change is okay to commit now, since for
        the time being idx will shadow uid in all tables.
      54705b2b
  24. 03 Jan, 2007 1 commit
    • Leigh Stoller's avatar
      Move most of the password changing code to the backend, as I just did · 32983db4
      Leigh Stoller authored
      for email changes. Currently, the hash is passed in on the command
      line from the web interface, and there is no method for invoking it on
      the command line and providing a text password, but that is an easy
      change now that the bulk of the code is in the backend instead of the
      web interface.
      
      Note that this change took longer cause we allow inactive,frozen, and
      wikionly users to change their password, but since they do not have
      accounts (yet) the operation is invoked as user "nobody" and tbacct
      about to me made aware of that possibility.
      
      Also add equivalent auditing email message that goes to the user when
      password is changed.
      
      Also more cleanup and conversion to objects.
      32983db4
  25. 13 Dec, 2006 1 commit