1. 15 Nov, 2012 1 commit
  2. 25 Oct, 2012 1 commit
  3. 19 Oct, 2012 2 commits
  4. 26 Sep, 2012 1 commit
    • Jonathon Duerig's avatar
      Various fixes for AM API v3. · c49a1df9
      Jonathon Duerig authored
      All incoming rspecs are now validated with rspeclint.
      Multiple Create calls are now permitted.
      Slivers now have URNs at allocation time.
      Delete now returns a list of ex-slivers.
      Advertisement now specifies an operational state machine.
      Other minor fixes.
      c49a1df9
  5. 24 Sep, 2012 1 commit
    • Eric Eide's avatar
      Replace license symbols with {{{ }}}-enclosed license blocks. · 6df609a9
      Eric Eide authored
      This commit is intended to makes the license status of Emulab and
      ProtoGENI source files more clear.  It replaces license symbols like
      "EMULAB-COPYRIGHT" and "GENIPUBLIC-COPYRIGHT" with {{{ }}}-delimited
      blocks that contain actual license statements.
      
      This change was driven by the fact that today, most people acquire and
      track Emulab and ProtoGENI sources via git.
      
      Before the Emulab source code was kept in git, the Flux Research Group
      at the University of Utah would roll distributions by making tar
      files.  As part of that process, the Flux Group would replace the
      license symbols in the source files with actual license statements.
      
      When the Flux Group moved to git, people outside of the group started
      to see the source files with the "unexpanded" symbols.  This meant
      that people acquired source files without actual license statements in
      them.  All the relevant files had Utah *copyright* statements in them,
      but without the expanded *license* statements, the licensing status of
      the source files was unclear.
      
      This commit is intended to clear up that confusion.
      
      Most Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the Affero GNU General Public License, version 3
      (AGPLv3).
      
      Most Utah-copyrighted files related to ProtoGENI are distributed under
      the terms of the GENI Public License, which is a BSD-like open-source
      license.
      
      Some Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the GNU Lesser General Public License, version 2.1
      (LGPL).
      6df609a9
  6. 30 Aug, 2012 1 commit
  7. 28 Aug, 2012 1 commit
  8. 27 Aug, 2012 1 commit
    • Leigh Stoller's avatar
      Add support for experimental networks on the control network. · df048b11
      Leigh Stoller authored
      So what if your testbed has a control network but no experimental
      network? In the past you were SOL, but with this commit you can now
      create links and lans on the control network that look just like
      an experimental network link/lan.
      
      To make this work, ptopgen sports a new option (-C) that will put the
      control network links and wires and switches into the ptop file.
      
      libvtop generally operates as normal, but need to arrange for the
      physical ports to be put into dual tag/trunk mode, where the native
      vlan is the Control network. This is done with by setting attributes
      on the lan table entry that indicate dual and what to use for the
      native vlan. snmpit looks for these attributes.
      
      There are a couple of places that use the stack name (Control or
      Experiment) to determine if a vlan is control or experimental. This is
      not longer truu, and so need to use an attribute in the lan table
      entry. 
      
      The last bit of the puzzle is that snmpit has to be careful when
      disabling trunking on these ports. When this happens, all vlans are
      cleard from the ports (by the device layer), including the Control
      network itself, which would make the node unreachable. I had to add
      some special cases to watch for that, and return the ports to the
      control network.
      
      To turn this on, create a ControlNetVlans and enable it. The mapper
      looks for this and passes the -C argument to ptopgen.
      
      Nothing special in the NS file, except you have to turn on vlan
      encapsulation; tb-set-vlan-emulation vlan
      
      No delay nodes, but linkdelays work okay. Works for openvz containers
      as well.
      df048b11
  9. 24 Aug, 2012 1 commit
  10. 16 Aug, 2012 1 commit
  11. 01 Aug, 2012 1 commit
    • Leigh Stoller's avatar
      This commit adds some simple support for using the Infiniband on the · 997b21b5
      Leigh Stoller authored
      Probe Cluster. The problem is that the IFB is a shared network that
      every node attaches to, which can looks like an ethernet device that
      can ifconfig'ed. In other words, one big lan.
      
      But we still want the user to be able to create a lan so that they can
      interact with it in thei NS file like any other network.
      
      The NS syntax is:
      
      	set lan2 [$ns make-lan "node1 node2 node3" * 0ms]
      	tb-set-switch-fabric $lan2 "infiniband"
      
      The switch fabric tells the backend to do IP assignment for the
      specific global network. Yes, I tried to be a little but general
      purpose. Lets see how this actually turns out.
      
      This first commit treats the fabric as a single big lan on the same
      subnet.
      
      NOTE 1: Since the unroutable IP space is kinda small, but the Probe
      Cluster is really big, we can easily run out of bits if we tried to do
      assignment on virtual topos. Instead, fabrics get their IP allocation
      at swapin time, and the allocations are deleted when the experiment is
      swapped out. The rationale is that the number of swapped in
      experiments is much much smaller then the number of possible topos
      that can be loaded into the DB. Still might run out, but less likely.
      
      The primary impact of above is that IP assignments can change from
      one swap to another, but this is easy to deal with if the user is
      scripting their experiment; the IP allocation is available via the
      XMLRPC interface.
      
      NOTE 2: The current code allocates from a single big network, which
      makes it easy for users to mess each other up if they start doing
      things by hand. Ultimately, we want each lan in each experinent to use
      their own subnet, but that is going to take more work, so lets do it
      in the second phase.
      
      The definition of "network fabrics" is in the new network_fabrics
      tables. As an example for probe:
      
      	INSERT INTO `network_fabrics` set
      		idx=NULL,
      		name='ifband',
      		created=now(),
      		ipalloc=1, ipalloc_onenet=1,
      		ipalloc_subnet='192.168.0.0',ipalloc_netmask='255.255.0.0'
      997b21b5
  12. 30 Jul, 2012 3 commits
  13. 06 Jul, 2012 1 commit
  14. 02 Jul, 2012 1 commit
  15. 29 Jun, 2012 2 commits
  16. 11 Jun, 2012 1 commit
  17. 28 Feb, 2012 1 commit
  18. 24 Feb, 2012 1 commit
  19. 13 Feb, 2012 1 commit
  20. 26 Jan, 2012 1 commit
  21. 02 Dec, 2011 1 commit
    • Leigh Stoller's avatar
      Minor changes so that we can allow the subos map to be used for · fb5fb526
      Leigh Stoller authored
      determining the jailosid for "static" images like OPENVZ-STD. For
      example:
      
      	tb-set-hardware $n1 d710-vm
      	tb-set-node-os $n1 OPENVZ-STD FEDORA15-64-OVZ-STD
      
      The main point is that OPENVZ-STD is a placeholder with no associated
      image. It exists to tell the mapper and osload what to do. This is
      accomplished with nextosid. The new approach makes things consistent
      with subos stuff.
      fb5fb526
  22. 30 Nov, 2011 1 commit
  23. 24 Oct, 2011 1 commit
  24. 10 Oct, 2011 1 commit
  25. 08 Oct, 2011 2 commits
    • Mike Hibler's avatar
      Revert "Adjust the set of unix gids used for a download server." · baba7478
      Mike Hibler authored
      This reverts commit fc89eb38.
      
      Checked in a bunch of crap that was unrelated.
      baba7478
    • Mike Hibler's avatar
      Adjust the set of unix gids used for a download server. · fc89eb38
      Mike Hibler authored
      When downloading an image, start the frisbeed process with the minimum set of
      gids necessary to access the image. This includes the unix gid of the
      project that the image is in and, optionally, the unix gid of the project
      subgroup if the image is part of one.
      
      Previously, we just use the gid set of the uid of the swapper of the
      experiment. Not only was this excessive, but it might also not include the
      gids needed in the case of a "global" image that is not in the world-readable
      /usr/testbed/images directory.
      fc89eb38
  26. 07 Oct, 2011 1 commit
  27. 26 Sep, 2011 1 commit
  28. 20 Sep, 2011 2 commits
  29. 10 Aug, 2011 1 commit
    • Jonathon Duerig's avatar
      Fix subnode bug. · 78aacb3f
      Jonathon Duerig authored
      This only affects cases where -a and -p are both being used and there is a node of a type not allowed in the specified project with subnodes.
      78aacb3f
  30. 17 Jun, 2011 3 commits
  31. 25 May, 2011 2 commits