1. 12 Nov, 2014 1 commit
  2. 28 Oct, 2014 1 commit
  3. 08 Oct, 2014 1 commit
  4. 02 Oct, 2014 2 commits
  5. 30 Sep, 2014 1 commit
  6. 19 Aug, 2014 1 commit
  7. 14 Aug, 2014 1 commit
  8. 31 Jul, 2014 1 commit
  9. 29 Jul, 2014 1 commit
  10. 22 Jul, 2014 1 commit
  11. 16 Jul, 2014 1 commit
  12. 12 Jul, 2014 1 commit
  13. 11 Jul, 2014 1 commit
  14. 10 Jul, 2014 1 commit
  15. 09 Jul, 2014 1 commit
  16. 01 Jul, 2014 1 commit
  17. 16 Dec, 2013 1 commit
  18. 06 Nov, 2013 1 commit
  19. 11 Jul, 2013 1 commit
  20. 04 Jul, 2013 1 commit
  21. 31 May, 2013 1 commit
    • Leigh B Stoller's avatar
      Do not default XEN guest images to "packages". Lets make the default · 3b352486
      Leigh B Stoller authored
      a single slice image, since we can now pull the kernel (ramdisk) out
      from the guest filesystem (using pygrub for linux, or just mounting
      BSD filesystems). This is a lot faster and easier to deal with. I
      added an option to the newimage page so that people can set this, but
      in general we need a better way to guess that we need it. Always set
      for EC2 images.
      3b352486
  22. 14 May, 2013 1 commit
    • Leigh B Stoller's avatar
      Add prototype EC2 image import plumbing. · 980aa180
      Leigh B Stoller authored
      To create a new descriptor that will be an import from EC2 (and thus
      run under XEN), add ?ec2=1 to newimage_ez.php3. Eventually will link
      it in someplace. The form will create a XEN based VM, but instead of
      node to snapshot from, provide user@host for the EC2 instance.
      
      On the image snapshot page, instead of node use user@host for the EC2
      instance.
      
      The backend script (create_image) will call over to ops and invoke
      Srikanth's code. I have called that script ec2import-image.pl. See
      create_image for how arguments are passed to the script.
      980aa180
  23. 14 Jan, 2013 1 commit
    • Leigh B Stoller's avatar
      Add creator_urn to images table so we can track actual creator · 23ad8819
      Leigh B Stoller authored
      when created via the ProtoGeni interface; we run everything as
      GeniUser and so lose that info. We want to know this for history
      information and so we can manage permissions on image deletion
      effectively.
      
      Also add updater, updater_idx, and updater_urn to track last change
      to the image.
      
      CAVEAT: For system images, we do not actually overwrite the image, but
      store it out in /proj/$pid/images and then sometime later maybe we
      copy it back to boss. This wrecks the tracking info quite effectively
      since the image may never be copied back. Needs more thought.
      23ad8819
  24. 03 Oct, 2012 1 commit
  25. 24 Sep, 2012 1 commit
    • Eric Eide's avatar
      Replace license symbols with {{{ }}}-enclosed license blocks. · 6df609a9
      Eric Eide authored
      This commit is intended to makes the license status of Emulab and
      ProtoGENI source files more clear.  It replaces license symbols like
      "EMULAB-COPYRIGHT" and "GENIPUBLIC-COPYRIGHT" with {{{ }}}-delimited
      blocks that contain actual license statements.
      
      This change was driven by the fact that today, most people acquire and
      track Emulab and ProtoGENI sources via git.
      
      Before the Emulab source code was kept in git, the Flux Research Group
      at the University of Utah would roll distributions by making tar
      files.  As part of that process, the Flux Group would replace the
      license symbols in the source files with actual license statements.
      
      When the Flux Group moved to git, people outside of the group started
      to see the source files with the "unexpanded" symbols.  This meant
      that people acquired source files without actual license statements in
      them.  All the relevant files had Utah *copyright* statements in them,
      but without the expanded *license* statements, the licensing status of
      the source files was unclear.
      
      This commit is intended to clear up that confusion.
      
      Most Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the Affero GNU General Public License, version 3
      (AGPLv3).
      
      Most Utah-copyrighted files related to ProtoGENI are distributed under
      the terms of the GENI Public License, which is a BSD-like open-source
      license.
      
      Some Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the GNU Lesser General Public License, version 2.1
      (LGPL).
      6df609a9
  26. 30 Aug, 2012 1 commit
    • Leigh B Stoller's avatar
      More bits and pieces for exporting images from one Emulab to another. · 4c444cd5
      Leigh B Stoller authored
      image_metadata.php will return an Emulab style image descriptor in XML
      format. A remote emulab, given an image URL, will grab this XML
      description and use it to create a local descriptor. Inside the
      descriptor is an additional URL that is used to download ndz file.
      
      The dumpdescriptor script is now web accessible, and takes a new -e
      (export) option that adds the extra URL and other bits that are needed
      to import the descriptor and the image.
      
      On the Show Image page, show the metadata URL, which is suitable for
      using in an NS file or an rspec (when that code is committed).
      4c444cd5
  27. 15 May, 2012 1 commit
  28. 22 Dec, 2011 1 commit
  29. 13 Oct, 2011 1 commit
  30. 10 Oct, 2011 1 commit
    • Leigh B Stoller's avatar
      Add support for sharing images between projects. New table called · 646b64f6
      Leigh B Stoller authored
      image_permissions stores access info for images. You can share an
      image with a user or a group (project), and you can specify write
      access to allow updating the image in place. Note that write access
      does not allow the descriptor to be modified, only the image itself.
      Well, that is how it will be after Mike changes mfrisbeed.
      
      The front end script to modify permissions is grantimage:
      
      	boss> grantimage -u stoller -w tbres,myimage
      	boss> grantimage -u stoller -w tbres,myimage
      
      which grants write access to stoller. Or:
      
      	boss> grantimage -g testbed,testbed tbres,myimage
      
      which grants access to the testbed project. Notice that you can
      specify subgroups this way.
      
      	boss> grantimage -l tbres,myimage
      
      will give you a list of current permissions. To revoke, just add -r
      option:
      
      	boss> grantimage -g testbed,testbed -r tbres,myimage
      
      Who is allowed to grant access to an image? 1) An adminstrator of
      course, 2) the image creator, and 3) any group_root in the group that
      the image belongs to. Being granted access to use an image does not
      confer permission to grant access to others.
      
      One last task; while the web interface displays the permissions, there
      is no web interface to modify the permissions; users will still have
      to ask us for now.
      646b64f6
  31. 18 Jan, 2011 1 commit
  32. 16 Nov, 2010 1 commit
    • Kevin Atkinson's avatar
      Add support for all node "tb-set-tarfiles". · a0d0c95e
      Kevin Atkinson authored
      "tb-set-tarfiles" is like "tb-set-node-tarfiles" except that it
      distributes the tarfile to all nodes rather than just one and that it
      uses frisbee to distribute the file.
      
      These changes involved 1) refactoring frisbee info from images table
      into a new table, frisbee_blobs, 2) a new experiment_blobs table, and
      3) a new tmcd command so the node knows how to get the files from the
      server.
      
      The changes where designed to be general purpose enough to eventually
      support:
        1) Distributing arbitrary files (not just tarfiles) to nodes
        2) Perform arbitrary actions on those files
        3) Use arbitrary methods to get the files
      
      As such the tmcd line is as follows:
        URL=* ACTION=*
      
      where URL is currently:
        frisbee.mcast://<ADDR>/<FILE>
      for example
        frisbee.mcast://234.16.184.192:18092/users/kevina/home-dir.tar.gz
      and when we get around to using a master Frisbee server it could be
        frisbee://*
      or it could be a file://, http://, etc.
      
      and ACTION is currently:
        unpack:<LOCATION>
      for example
        unpackt:/users
      with future syntax to be determined.
      a0d0c95e
  33. 19 Nov, 2007 1 commit
  34. 24 Oct, 2007 1 commit
  35. 19 Oct, 2007 1 commit
    • Russ Fish's avatar
      Move newimageid_ez page form logic to a backend Perl script. · 9a586d0b
      Russ Fish authored
           www/newimageid_ez.php3 - The reworked PHP page.  Calls Image::NewImageId with ez=1.
           www/newimageid.php3 - Call Image::NewImageId with ez=0.
           www/imageid_defs.php - Re-use the Image::NewImageId class method, adding an 'ez' arg.
           backend/{newimageid_ez,GNUmakefile}.in configure configure.in - New backend script.
               After checks, calls OSinfo->Create and Image->Create with the same XML args array.
           db/Image.pm.in - Re-use the Image->Create method, adding an imageid over-ride arg.
           db/OSinfo.pm.in - Filter out extraneous db slot args from XML in the Create method.
           db/libdb.pm.in - Add TB_{OS,IMAGE}ID_* constants from dbdefs.php3 .
           sql/database-fill.sql - Add OS entries to the table_regex 'images' pattern set.
      9a586d0b
  36. 12 Oct, 2007 1 commit
    • Russ Fish's avatar
      Move newimageid page form logic to a backend Perl script. · 3f5e4ef8
      Russ Fish authored
           www/newimageid.php3 - The reworked PHP page.
           www/imageid_defs.php - Add an Image::NewImageId class method
                                  bridging to the script via XML.
           backend/{newimageid,GNUmakefile}.in configure configure.in - New backend script.
           db/Image.pm.in - Add a Create class method for script arg checking.
           sql/database-fill.sql - Add to the table_regex 'images' checking patterns.
      3f5e4ef8
  37. 03 Oct, 2007 1 commit
    • Russ Fish's avatar
      Move editimageid page form logic to a backend Perl script. · 9dcf6297
      Russ Fish authored
           www/editimageid.php3 - The reworked PHP page.
           www/imageid_defs.php - Add an Experiment::EditImageid class method
                                  bridging to the script via XML.
           backend/{editimageid,GNUmakefile}.in configure configure.in - New backend script.
           db/Image.pm.in - Add an EditImageid worker class method for script arg checking.
           sql/database-fill.sql - Add to the table_regex 'images' checking patterns.
      9dcf6297
  38. 21 Aug, 2007 1 commit
    • Leigh B. Stoller's avatar
      Another round of widearea node hacking for CMU. These changes add · 99346dc0
      Leigh B. Stoller authored
      widearea reloading support.
      
      * New slot in the images table to store an access key which remote
        sites must provide in order to download an image (via https).
      
      * tmcd returns a different kind of ADDRESS field from doloadinfo.
        Instead of the multicast stuff, return a URL that points to boss'
        web server. The URL is of the form:
      
         https://www.myemulab.net/spewimage.php?imageid=10013&access_key=abcdef
      
        which as you can see is fully specified; the client does not need
        to know anything else.
      
      * New webpage and backend scripts appropriately called "spewimage"
        which also includes support for the http HEAD request (from wget) to
        avoid downloading images that are already on the node. I just
        learned about this HEAD request stuff today ... but otherwise these
        operate as expected, spewing the image if the access key is provided.
      
      * Changes to rc.frisbee to deal with remote loading. In addition to
        URL support, I also added support for simple paths, the intent being
        that we will probably distribute images offline (say, at night) so
        that when a node reboots it doesn't actually have to wait 60 minutes
        for an image to download. I have not added any server side support
        for this yet though. Maybe later this week.
      
      * Other bits and pieces and fixes to make this work.
      99346dc0
  39. 24 Apr, 2007 1 commit