1. 05 Jan, 2010 3 commits
  2. 29 Dec, 2009 3 commits
  3. 28 Dec, 2009 2 commits
  4. 23 Dec, 2009 6 commits
    • Robert Ricci's avatar
      Bugfix: tell getopt not to ingore case · ab749191
      Robert Ricci authored
    • Leigh B. Stoller's avatar
      A couple of changes that attempt to cut short the waiting when · 28ac96a5
      Leigh B. Stoller authored
      a node has failed.
      * In the main wait loop, I check the eventstate for the node, for
        TBFAILED or PXEFAILED. Neither of these should happen after the
        reboot, so it makes sense to quit waiting if they do.
      * I added an event handler to libosload, specifically to watch for
        nodes entering RELOADSETUP or RELOADING, after the reboot. Because
        of the race with reboot, this was best done with a handler instead
        of polling the DB state like case #1 above. The idea is that a node
        should hit one of these two states within a fairly short time (I
        currently have it set to 5 minutes). If not, something is wrong and
        the loop bails on that node. ÊWhat happens after is subject to the
        normal waiting times.
      I believe that these two tests will catch a lot of cases where osload
      is waiting on something that will never finish.
    • Robert Ricci's avatar
      Add a -T option that lets you test on a branch other than master · d26eab09
      Robert Ricci authored
      Fix a problem with the -h flag - I was forgetting to exit()
    • Robert Ricci's avatar
      Add an option for 'extra' command line args to be passed to 'git show' · 1c8d87dd
      Robert Ricci authored
      so that I can add '-p' (show patch) to my public repository.
      Also, fixed up an existing config option that had a character
      illegal for 'git config' (underscores are not allowed).
    • Ryan Jackson's avatar
      Fixes for git-cvspush and modified cvsexportcommit · efded17a
      Ryan Jackson authored
      Make git-diff-tree generate more context (8 lines).
      Also, keep track of the last commit successfully pushed to CVS and start
      there when doing a cvspush if the local repo is up to date.  This should
      prevent duplicate commits and allow new commits to be pushed before the
      central Git repo is updated from CVS.
    • Leigh B. Stoller's avatar
      Minor fix to previous commit. · f9f745ec
      Leigh B. Stoller authored
  5. 22 Dec, 2009 13 commits
  6. 21 Dec, 2009 8 commits
    • Leigh B. Stoller's avatar
      New approach to dealing with nodes that fail to boot is os_setup, and · 5cf6aad2
      Leigh B. Stoller authored
      land in hwdown.
      Currently, if a node fails to boot in os_setup and the node is running
      a system image, it is moved into hwdown. 99% of the time this is
      wasted work; the node did not fail for hardware reasons, but for some
      other reason that is transient.
      The new approach is to move the node into another holding experiment,
      emulab-ops/hwcheckup. The daemon watches that experiment, and nodes
      that land in it are freshly reloaded with the default image and
      rebooted. If the node reboots okay after reload, it is released back
      into the free pool. If it fails any part of the reload/reboot, it is
      officially moved into hwdown.
      Another possible use; if you have a suspect node, you go wiggle some
      hardware, and instead of releasing it into the free pool, you move it
      into hwcheckup, to see if it reloads/reboots. If not, it lands in
      hwdown again. Then you break out the hammer.
      Most of the changes in Node.pm, libdb.pm, and os_setup are
      organizational changes to make the code cleaner.
    • Robert Ricci's avatar
      Change the mail and branch matching code due to a conversation I had · 46157519
      Robert Ricci authored
      with Eric this afternoon.
    • Ryan Jackson's avatar
      More readme cleanup · bd235551
      Ryan Jackson authored
    • Ryan Jackson's avatar
      Add helper scripts to make exporting to CVS easier · facfd08e
      Ryan Jackson authored
      - git-cvsexportcommit.mod is the same as the standard
        git-cvsexportcommit script, except it doesn't fail if you try applying
        a patch to the sandbox that has already been applied (i.e., you do a
        cvspush before the upstream git repo has been updated).
      - git-cvspush uses the above script to export each commit between the
        upstream branch head and your local branch head to CVS. To use it,
        run the following command inside your git repo:
        git config branch.<branch>.cvsdir <sandbox>
        where '<branch>' is your local git branch name and '<sandbox>' is
        the CVS sandbox where you've checked out that branch.  Set up an
        alias for it with this:
        git config --global alias.cvspush "!git-cvspush"
        and run 'git cvspush <branch>' (where '<branch>' is the branch to push
        or the current one if not specified) when you're ready to push pending
        commits to CVS.
    • Robert Ricci's avatar
      New script: gitmail . Will be used to send out mail about git pushes · bcd94a3b
      Robert Ricci authored
      to mailing lists, etc.
    • Ryan Jackson's avatar
      Cleanup of old TODOs · e0798882
      Ryan Jackson authored
    • Mike Hibler's avatar
      Another random thought. · d68056a7
      Mike Hibler authored
    • Leigh B. Stoller's avatar
      Add -j option when creating system experiments, so that they get · 4c05ab13
      Leigh B. Stoller authored
      marked as active instead of new.
      Add another system experiment, hwcheckup for automated testing of
      nodes that have failed during a swapin.
  7. 18 Dec, 2009 5 commits
    • Leigh B. Stoller's avatar
      Changes to support the SPP nodes. My approach was a little odd. · fd015646
      Leigh B. Stoller authored
      What I did was create node table entries for the three SPP nodes.
      These are designated as local, shared nodes, reserved to a holding
      experiment. This allowed me to use all of the existing shared node
      pool support, albeit with a couple of tweaks in libvtop that I will
      not bother to mention since they are hideous (another thing I need to
      The virtual nodes that are created on the spp nodes are figments; they
      will never be setup, booted or torn down. They exist simply as place
      holders in the DB, in order hold the reserved bandwidth on the network
      interfaces. In other words, you can create as many of these imaginary
      spp nodes (in different slices if you like) as there are interfaces on
      the spp node. Or you can create a single spp imaginary node with all
      of the interfaces. You get the idea; its the reserved bandwidth that
      drives the allocation.
      There are also some minor spp specific changes in vnode_setup.in to
      avoid trying to generalize things. I will return to this later as
      See this wiki page for info and sample rspecs:
    • Leigh B. Stoller's avatar
      Minor change to SetExpiration() to make sure we cache it in the · 8622930d
      Leigh B. Stoller authored
      proper format (datetime, not int).
    • Leigh B. Stoller's avatar
      Change to Lan->Lookup(). I am not sure why, but Lookup was ignoring · 70d5ea50
      Leigh B. Stoller authored
      lan entrys with a "link" set. These are lans that point to another
      lan, as happens when an emulated link points to the underlying vlan
      entry. This is sorta annoying when you want to look up the emulated
      link! So, new option to Lookup() to allow this, cause I cannot
      remember why I did it originally, and do not want to beak anything.
    • Mike Hibler's avatar
    • Mike Hibler's avatar
      Purge Elvin references. · 131f3b21
      Mike Hibler authored