1. 24 May, 2011 1 commit
  2. 19 May, 2011 1 commit
  3. 16 May, 2011 1 commit
  4. 13 May, 2011 1 commit
  5. 11 May, 2011 1 commit
  6. 20 Apr, 2011 1 commit
    • Leigh B Stoller's avatar
      Changes our ssh key/account handling in RedeemTicket() and · 03c2107c
      Leigh B Stoller authored
      CreateSliver(), to handle multiple accounts.  This somewhat reflects
      the Geni AM API for keys, which allows the client to specify multiple
      users, each with a set of ssh keys.
      
      The keys argument to the CM now looks like the following (note that
      the old format is still accepted and will be for a while).
      
      [{'urn'   => 'urn:blabla'
        'login' => 'dopey',
        'keys'  => [ list of keys like before ]},
       {'login' => "leebee",
        'keys'  => [ list of keys ... ]}];
      
      Key Points:
      
      1. You can supply a urn or a login or both. Typically, it is going to
         be the result of getkeys() at the PG SA, and so it will include
         both.
      
      2. If a login is provided, use that. Otherwise use the id from the urn.
      
      3. No matter what, verify that the token is valid for Emulab an uid
         (standard 8 char unix login that is good on just about any unix
         variant), and transform it if not.
      
      4. For now, getkeys() at the SA will continue to return the old format
         (unless you supply version=2 argument) since we do not want to
         default to a keylist that most CMs will barf on.
      
      5. I have modified the AM code to transform the Geni AM version of the
         "users" argument into the above structure. Bottom line here, is
         that users of the AM interface will not actually need to do
         anything, although now multiple users are actually supported
         instead of ignored.
      
      Still to be done are the changes to the login services structure in
      the manifest. We have yet to settle on what these changes will look
      like, but since people generally supply valid login ids, you probably
      will not need this, since no transformation will take place.
      03c2107c
  7. 17 Apr, 2011 2 commits
  8. 12 Apr, 2011 1 commit
  9. 07 Apr, 2011 3 commits
  10. 05 Apr, 2011 1 commit
  11. 31 Mar, 2011 1 commit
  12. 30 Mar, 2011 1 commit
    • Leigh B Stoller's avatar
      Assorted changes to make sure that the uid we grab from the user URN · 56fef67b
      Leigh B Stoller authored
      is a valid Emulab user id (as for creating accounts on nodes) and for
      inserting into the Emulab DB.
      
      If the uid is not valid for us, make up a new one from a hash of the
      certificate. This will give us a (typically) unique but always
      consistent uid to use.
      
      Also add the uid to the services/login section of the manifest so that
      the client always knows what uid to use when logging in.
      56fef67b
  13. 21 Mar, 2011 1 commit
    • Leigh B Stoller's avatar
      First attempt at fixing deadlock when stitching. This happens if both · 3cdbe5f7
      Leigh B Stoller authored
      sides try to stitch at the same time. One side has to back off and let
      the other proceed. The problem is with the slice locking, which had to
      be changed to allow one side to drop the lock so the other side could
      proceed. I ended up doing this with an additional stitching lock, used
      only when stitching.
      3cdbe5f7
  14. 01 Mar, 2011 1 commit
  15. 16 Feb, 2011 2 commits
  16. 15 Feb, 2011 1 commit
  17. 14 Feb, 2011 1 commit
  18. 08 Feb, 2011 1 commit
  19. 04 Feb, 2011 1 commit
  20. 19 Jan, 2011 1 commit
  21. 13 Jan, 2011 2 commits
  22. 06 Jan, 2011 1 commit
  23. 14 Dec, 2010 1 commit
  24. 13 Dec, 2010 2 commits
  25. 07 Dec, 2010 1 commit
  26. 29 Nov, 2010 1 commit
  27. 16 Nov, 2010 1 commit
  28. 09 Nov, 2010 1 commit
    • Leigh B Stoller's avatar
      Create the slice experiments in a subgroup of GeniSlices, named by the · 17d66134
      Leigh B Stoller authored
      SA of the caller. This means we call out to the Emulab newgroup script
      to create a group if it does not exist. We also have to reset the
      groups of the GeniUser once we know the SA. 
      
      Other small changes:
      
      * Minor module shuffling.
      * Use GetSiteVar() from emutil instead of libdb
      * Get rid of obsolete code referring to the old reservation holding
        experiment.
      * Cleanup logfiles in the workdir.
      * Capture output from the mapper and reformat error logging to make it
        more apparent to the caller what went wrong.
      * Change call to GeniSliver::Node->Create(); pass in the node object.
      17d66134
  29. 22 Oct, 2010 2 commits
  30. 21 Oct, 2010 1 commit
  31. 20 Oct, 2010 1 commit
  32. 19 Oct, 2010 1 commit
  33. 15 Oct, 2010 1 commit