1. 04 May, 2016 1 commit
  2. 06 Apr, 2016 1 commit
  3. 08 Mar, 2016 1 commit
  4. 25 Feb, 2016 1 commit
  5. 22 Feb, 2016 1 commit
  6. 27 Jan, 2016 1 commit
    • Leigh B Stoller's avatar
      Anytime the state for a slice or sliver changes, inject a geni style event · bc8afd40
      Leigh B Stoller authored
      into the local event stream. These events are different then normal emulab
      events in that the SITE is set to the URN of the aggregate, and there is
      json representation of the slice/sliver status. There are other fields as
      well that are not in normal emulab events. These events can mix okay with
      emulab events on the local boss, nothing will care about them. But they
      will get forwarded to pubsubd at the portal if CLUSTER_PORTAL is set in the
      defs file.
      bc8afd40
  7. 06 Jan, 2016 2 commits
    • Leigh B Stoller's avatar
      Nuts, my approach for catching early linktest errors is not going to work · 1f145671
      Leigh B Stoller authored
      all the time, so bail on that and fallback to reporting errors solely
      though the spew log(s).
      1f145671
    • Leigh B Stoller's avatar
      Export linktest via the CM API. · 58640e2c
      Leigh B Stoller authored
      * Three actions are exported; start, stop, and status. The last is cause we
        have to poll to determine when linktest has actually finished or stopped.
        I hate all this polling.
      
      * For start, linktest can be performed synchronously, which is fine on a
        small experiment, but in general you want to use the async option and
        check back later. When using async, we return the spewlog URL to the
        caller so that linktest can be monitored.
      
      * A couple of minor changes to linktest itself for using a spew log.
      
      * Some simple test rspecs and a linktest.py driver.
      58640e2c
  8. 15 Dec, 2015 1 commit
  9. 08 Dec, 2015 1 commit
  10. 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
  11. 10 Nov, 2015 1 commit
  12. 15 Oct, 2015 1 commit
  13. 12 Oct, 2015 2 commits
  14. 06 Oct, 2015 2 commits
  15. 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
  16. 14 Sep, 2015 1 commit
  17. 31 Aug, 2015 1 commit
  18. 21 Aug, 2015 1 commit
  19. 29 Jul, 2015 1 commit
  20. 13 Jul, 2015 1 commit
  21. 07 Jul, 2015 1 commit
  22. 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
  23. 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
  24. 22 May, 2015 1 commit
  25. 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
  26. 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
  27. 27 Apr, 2015 1 commit
  28. 24 Apr, 2015 1 commit
  29. 14 Apr, 2015 1 commit
  30. 01 Apr, 2015 1 commit
  31. 31 Mar, 2015 1 commit
  32. 27 Mar, 2015 1 commit
  33. 19 Mar, 2015 2 commits
  34. 18 Mar, 2015 1 commit
  35. 16 Mar, 2015 1 commit