1. 08 Dec, 2015 1 commit
  2. 01 Dec, 2015 1 commit
    • Leigh B Stoller's avatar
      Add cancel support. The idea is that a DeleteSlice() with our internal · 5bd9ad1a
      Leigh B Stoller authored
      cancel option, will stop a CreateSliver() in its tracks. We stop the
      monitor, then cleanup the slice. I also added an optimization for tearing
      down large numbers of VMs on shared nodes, previously we were doing them
      one at a time. Note that only the Portal is going to use this option, since
      it loosely depends on code in the XEN clientside (described in another
      commit).
      5bd9ad1a
  3. 10 Nov, 2015 1 commit
  4. 15 Oct, 2015 1 commit
  5. 12 Oct, 2015 2 commits
  6. 06 Oct, 2015 2 commits
  7. 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
  8. 14 Sep, 2015 1 commit
  9. 31 Aug, 2015 1 commit
  10. 21 Aug, 2015 1 commit
  11. 29 Jul, 2015 1 commit
  12. 13 Jul, 2015 1 commit
  13. 07 Jul, 2015 1 commit
  14. 25 Jun, 2015 1 commit
    • Leigh B Stoller's avatar
      Add new options to CreateSliver/Provision; supply an x509 certificate and · 8be26639
      Leigh B Stoller authored
      private key.
      
      The goal is to distribute an experiment wide certificate and private
      key. At the moment this is just a self signed x509 certificate and the
      accompanying rsa key. In PEM format. The same cert/key will be distributed
      across multiple aggregates.
      
      An openssh key pair can be trivially derived from the private key. Or the
      public part can be derived from the certificate. A quick google will show
      show.
      
      Initially, you will need to run tmcc directly to get them, using the
      geni_certificate and geni_key commands.
      8be26639
  15. 19 Jun, 2015 1 commit
    • 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
  16. 22 May, 2015 1 commit
  17. 15 May, 2015 2 commits
    • Leigh B Stoller's avatar
      Minor bug fix. · e3885710
      Leigh B Stoller authored
      e3885710
    • Leigh B Stoller's avatar
      Directory based image paths. · 3a21f39e
      Leigh B Stoller authored
      Soon, we will have images with both full images and deltas, for the same
      image version. To make this possible, the image path will now be a
      directory instead of a file, and all of the versions (ndz,sig,sha1,delta)
      files will reside in the directory.
      
      A new config variable IMAGEDIRECTORIES turns this on, there is also a check
      for the ImageDiretories feature. This is applied only when a brand new
      image is created; a clone version of the image inherits the path it started
      with. Yes, you can have a mix of directory based and file based image
      descriptors.
      
      When it is time to convert all images over, there is a script called
      imagetodir that will go through all image descriptors, create the
      directory, move/rename all the files, and update the descriptors.
      Ultimately, we will not support file based image paths.
      
      I also added versioning to the image metadata descriptors so that going
      forward, old clients can handle a descriptor from a new server.
      3a21f39e
  18. 30 Apr, 2015 1 commit
    • Leigh B Stoller's avatar
      Add an object definition to GeniHRN. I am getting tired of parsing URNs and · 4a27b0ce
      Leigh B Stoller authored
      picking pieces out, so I added this:
      
        my $foo = GeniHRN->new("urn:publicid:IDN+emulab.net:testbed+slice+myexp3");
      
      and provides:
      
        $foo->domain();
        $foo->type();
        $foo->id();
        $foo->urn();
      
      and has a stringify method that returns the urn, so that existing code all
      works.
      
      The problem though is the XML::RPC and Frontier libraries provide no hooks
      to catch this, and rather then using a stringification, they both convert
      all blessed references into structs, and so anyplace that puts a urn into
      something to go out on the wire, has to be changed to force to the string.
      
      Damn, how disappointing! So all the code is here but basically disabled
      until I find time to go through all the code.
      4a27b0ce
  19. 27 Apr, 2015 1 commit
  20. 24 Apr, 2015 1 commit
  21. 14 Apr, 2015 1 commit
  22. 01 Apr, 2015 1 commit
  23. 31 Mar, 2015 1 commit
  24. 27 Mar, 2015 1 commit
  25. 19 Mar, 2015 2 commits
  26. 18 Mar, 2015 1 commit
  27. 16 Mar, 2015 2 commits
  28. 13 Mar, 2015 1 commit
  29. 10 Mar, 2015 1 commit
  30. 06 Mar, 2015 1 commit
  31. 05 Mar, 2015 1 commit
  32. 12 Feb, 2015 1 commit
  33. 04 Feb, 2015 1 commit
  34. 28 Jan, 2015 1 commit
  35. 27 Jan, 2015 1 commit
    • Leigh B Stoller's avatar
      Two co-mingled sets of changes: · 85cb063b
      Leigh B Stoller authored
      1) Implement the latest dataset read/write access settings from frontend to
         backend. Also updates for simultaneous read-only usage.
      
      2) New configure options: PROTOGENI_LOCALUSER and PROTOGENI_GENIWEBLOGIN.
      
         The first changes the way that projects and users are treated at the
         CM. When set, we create real accounts (marked as nonlocal) for users and
         also create real projects (also marked as nonlocal). Users are added to
         those projects according to their credentials. The underlying experiment
         is thus owned by the user and in the project, although all the work is
         still done by the geniuser pseudo user. The advantage of this approach
         is that we can use standard emulab access checks to control access to
         objects like datasets. Maybe images too at some point.
      
         NOTE: Users are not removed from projects once they are added; we are
         going to need to deal with this, perhaps by adding an expiration stamp
         to the groups_membership tables, and using the credential expiration to
         mark it.
      
         The second new configure option turns on the web login via the geni
         trusted signer. So, if I create a sliver on a backend cluster when both
         options are set, I can use the trusted signer to log into my newly
         created account on the cluster, and see it (via the emulab classic web
         interface).
      
         All this is in flux, might end up being a bogus approach in the end.
      85cb063b