1. 08 Dec, 2015 1 commit
  2. 07 Dec, 2015 1 commit
  3. 16 Nov, 2015 1 commit
  4. 06 Nov, 2015 1 commit
  5. 05 Nov, 2015 1 commit
  6. 02 Nov, 2015 1 commit
  7. 28 Oct, 2015 1 commit
  8. 27 Oct, 2015 1 commit
  9. 21 Oct, 2015 1 commit
  10. 13 Oct, 2015 1 commit
  11. 12 Oct, 2015 1 commit
  12. 09 Oct, 2015 1 commit
    • Leigh B Stoller's avatar
      Change how all geni images are imported by url; always import as geniuser · 0c653722
      Leigh B Stoller authored
      and always import into the GeniSlices project. Previously, images were
      being imported into the project of the slice experiment, by the geniuser.
      
      When PROTOGENI_LOCALUSER is turned off, this change does not affect
      anything, since it is still geniuser doing the import, and all imported
      images are consider global and thus cross-project usable. So where we stick
      the image is not really important, but putting all geni imported images in
      one place is more convenient (sure makes it easier to find them). But more
      important, this change is backwards compatible with existing imports. 
      
      Later, if the source image is updated, and a new user (in another project)
      uses that image, the update (pulling the updated image scross) is done by
      geniuser (who is the leader of all geni holding projects), who has write
      access to the image whatever project it is in. 
      
      What about when PROTOGENI_LOCALUSER is turned on? There are actually two
      sub cases here.
      
      1. The user is using an aggregate in a different domain then their SA. Say,
         when a Cloudlab Portal user is creating an experiment at the Clemson
         cluster (which has PROTOGENI_LOCALUSER=1). In this case, clemson does
         not know anything about the user anyway, and so its pretty much like the
         case described above since everything is done by the geniuser in holding
         projects owned by the geniuser.
      
      2. The user is using the same aggregate as their SA. Say, when a Cloudlab
         Portal user is creating an experiment at the Emulab cluster. In this
         case Emulab knows the user and project, and everything is done as that
         user in the actual project (there is no geni holding project).
      
         If we import the image into that project as the actual user, we are okay
         at first; as above, all images are global and cross-project, so anyone
         can use it. But what if the source image changes and then a different
         user in a different project tries to use it? The backend is going to try
         to import the new version, but that fails cause the current user does
         not have write access to the image.
      
         Hence the real reason for this change; if always import into GeniSlices
         as geniuser, we do not get into this permission problem.
      0c653722
  13. 06 Oct, 2015 1 commit
  14. 24 Sep, 2015 1 commit
    • Leigh B Stoller's avatar
      Add AddNodes and DeleteNodes, which are convenience functions for the HPC · c3339c9d
      Leigh B Stoller authored
      folks.
      
      AddNodes($slice_urn, $credentials, $nodes):
      
      The "nodes" argument is a hash that looks like:
      
        {"node45" : {"diskimage" : "urn...",
                     "startup"   : "/bin/echo",
                     "tarballs"  : ["tarball1", "tarball2", ...],
                     "lans"      : ["lan1", "lan2", ...]
                     "node"      : "pc189"},
         "nodeXX" : {...}}
      
      DeleteNodes($slice_urn, $credentials, $nodes):
      
      The "nodes" argument is a list like:
      
        ["node45", ...]
      
      Any node can be deleted, but it is not yet clear what happens if all the
      nodes of a lan are removed. I probably need to do some work there, but
      David can start with this.
      c3339c9d
  15. 22 Sep, 2015 1 commit
  16. 18 Sep, 2015 1 commit
  17. 17 Sep, 2015 1 commit
  18. 14 Sep, 2015 2 commits
  19. 10 Sep, 2015 1 commit
  20. 08 Sep, 2015 2 commits
  21. 21 Aug, 2015 2 commits
  22. 04 Aug, 2015 1 commit
    • Leigh B Stoller's avatar
      Several changes: · 9da1d6bb
      Leigh B Stoller authored
      1. Do not pass -u option (update mode) to the mapper call in GetTicket, if
         not actually an update. This will now cause the mapper to pass the -F
         option to assign, so that fixnode (by the user rspec) will not override
         normal constraint checking.
      
      2. MAINSITE: Add d820-explicit desire so we can actually use the shared
         node pool.
      
      3. Add checks for out of memory errors from assign, and pass that back for
         the caller.
      9da1d6bb
  23. 28 Jul, 2015 1 commit
  24. 13 Jul, 2015 1 commit
  25. 07 Jul, 2015 1 commit
  26. 23 Jun, 2015 1 commit
  27. 19 Jun, 2015 2 commits
    • Leigh B Stoller's avatar
      New support for importing image backed datasets from other clusters. This · 613d90dd
      Leigh B Stoller authored
      is just like importing images (by using a url instead of a urn), which
      makes sense since image backed datasets are just images with a flag set.
      
      Key differences:
      
      1. You cannot snapshot a new version of the dataset on a cluster it has
         been imported to. The snapshot has to be done where the dataset was
         created initially. This is slightly inconvenient and will perhaps
         confuse users, but it is far less confusing that then datasets getting
         out of sync.
      
      2. No image versioning of datasets. We can add that later if we want to.
      613d90dd
    • Leigh B Stoller's avatar
      Support for stitch to Lan: · 6c1560d0
      Leigh B Stoller authored
      1. A trivial change in GeniCM; only look at the first two interfaces in the
         link if it references an external node. We already depend on the fact
         that the first two interfaces are in the same order as the two stitch
         points in the stitching section, so as long as we ignore external nodes
         after the second interface, setting up the virtual state for a lan works
         just peachy.
      
      2. libvtop_test: a bit less trivial, mostly cause of vlan tag pre
         reservation when stitching. When we encapsulate a lan we build another
         lans table entry that is linked. There is no need to do this when the
         encapsulation is vlan, and in fact I had changed links a long time ago
         to not do this, for the exact same reason. Lans are little bit more
         complicated but I think I got it.
      6c1560d0
  28. 29 May, 2015 2 commits
  29. 28 May, 2015 1 commit
  30. 17 Apr, 2015 1 commit
  31. 16 Apr, 2015 1 commit
  32. 14 Apr, 2015 1 commit
  33. 13 Apr, 2015 1 commit
  34. 06 Apr, 2015 1 commit
  35. 01 Apr, 2015 1 commit