1. 10 May, 2016 5 commits
  2. 09 May, 2016 8 commits
  3. 08 May, 2016 12 commits
  4. 07 May, 2016 3 commits
  5. 06 May, 2016 9 commits
  6. 05 May, 2016 3 commits
    • David Johnson's avatar
      Uh, actually grant the flow caps in the service master. · 0284f0f1
      David Johnson authored
      (Now this example actually works... a sleep deprivation bug :).)
      0284f0f1
    • David Johnson's avatar
      Add a broker object. · fca7d556
      David Johnson authored
      This object exposes register(service,RP) and lookup(service) -> RP
      methods.  It allows a master wfa in a service tenant to register the
      name of the service it provides, and an RP that it created that it will
      receive caps on.  Another master (say the hospital master in our case)
      can lookup that service, get its RP, and send it caps.
      
      Right now, a broker is automatically created for each netdomain; wfas
      cannot create brokers.  Further, only master wfas receive brokers.  The
      current protocol for master wfas is the controller sends them rp0; send
      them their own node cap on rp0; sends them the broker cap on rp0; then
      sends them any nodes in their ownerdomain (i.e. their tenant).  I
      updated ping_master.py to know a broker cap is coming.
      
      I added the main_tenant_master.py and service_tenant_master.py scripts;
      service_tenant_master.py creates a service tenant RP and registers it
      with the broker.  The main_tenant_master.py receives node caps; looks up
      the service RP at the broker; and then feeds it all the node caps it has
      received.
      
      I also updated ovs-ns-net.sh to take the DOMAIN (net domain,
      i.e. openstack l2 shared capnet network) and ODOMAIN
      (owner domain, i.e. openstack tenant), so that this can be tested using
      that script.
      fca7d556
    • Josh Kunz's avatar
      Fix the membrane object to match the new spec · 1df2dd94
      Josh Kunz authored
      TODO:
      * Make RPs wrap and unwrap as appropriate
      * Make `reset` do the right thing when given wrapped RPs
      * Make "internal/external" distinction when creating membranes
        * Add method to create "external" membranes
      * Glue this into dispatch
      1df2dd94