Commit graph

423 commits

Author SHA1 Message Date
Scott Schneider
1839ff467a Tweaks to views and CSS to move statistics to header 2014-07-16 11:59:57 -07:00
Scott Schneider
d6b6f83fc7 Support batch (multiple VM) requests
This PR allows a single API request to return multiple VM objects.  It
supports the following formats:

- POST <json> /vm/
  eg. 'curl -d '{"debian-7-i386":"3","debian-7-x86_64":"1"}' --url vmpooler/vm

- POST /vm/<pool>+<pool>+<pool>...
  eg. 'curl -d --url vmpooler/vm/debian-7-i386+debian-7-i386+debian-7-i386+debian-7-x86_64

Both commands listed above will return a JSON hash of 3 debian-7-i386 VMs and
1 debian-7-x86_64 VM:

  {
    "ok": true,
    "debian-7-i386": {
      "hostname": [
        "v49pwwk5yzg6oad",
        "ylghlgote5uso54",
        "wt0c4xovvulo7ge"
      ]
    },
    "debian-7-x86_64": {
      "hostname": "v3dkrulttp360fm"
    }
  }
2014-06-09 15:15:05 -07:00
Scott Schneider
4b3b05ee37 Add textured backgrounds to SVG area pathes 2014-03-11 12:49:42 -07:00
Scott Schneider
3af680f860 Allow a configurable Graphite namespace (prefix) 2014-03-06 10:53:27 -08:00
Scott Schneider
60eead6455 Centralize external Gem loading 2014-03-05 13:19:43 -08:00
Scott Schneider
60cc1ef178 Reworked into a single namespaced Ruby application 2014-03-05 12:57:25 -08:00
Scott Schneider
da31179e68 Changing project name to 'vmpooler'
All instances of 'vmware-host-pooler' and 'vmware_host_pool' changed to
'vmpooler'.
2014-02-19 14:08:46 -08:00
Scott Schneider
087be6014d Store 'clone' timestamps in Redis database
Using redis keys to store clone timestamps will allow for a global TTL
for VMs in the 'pending' pool; failed clones should be cleaned up and
retried after a set period of time (eg. 15m).
2014-02-04 15:05:24 -08:00
Scott Schneider
bbe67ab8a3 Rework vCenter VM retrieval method
Previous, the propertyCollector method was used to find VMs within
vCenter.  This method was ineffecient, as it would retrieve a list of
the entire vCenter inventory and then parse for the specified VM.  This
has been replaced with a fetch via searchIndex.FindByDnsName, which
returns only the requested VM object.
2014-02-04 09:42:28 -08:00
Scott Schneider
dc906164c1 Reinitialize if connection is reset 2013-11-25 11:33:59 -08:00
Scott Schneider
73c61ec26b Spacing 2013-11-21 15:33:41 -08:00
Scott Schneider
f9e2c30e29 Remove unused find_customization method 2013-11-21 14:44:15 -08:00
Scott Schneider
3239ea29bd Send graphite data from within a thread
...so that if it fails, it doesn't kill our whole processing thread
2013-11-13 13:31:17 -08:00
Scott Schneider
8423084be3 Not using this library 2013-11-12 15:14:18 -08:00
Scott Schneider
77fe40b59b Send metrics to graphite (if configured) 2013-11-12 15:03:34 -08:00
Scott Schneider
57975a489f Log to a (configurable) file 2013-11-08 10:48:51 -08:00
Scott Schneider
bf0150de4b Remove unused snapshot functions 2013-10-31 11:56:57 -07:00
Scott Schneider
882fc36521 Don't use .fog for vSphere credentials 2013-10-01 16:41:15 -07:00
Scott Schneider
5838315609 Adding rudimentary logging 2013-10-01 16:34:32 -07:00
Scott Schneider
fe5f2dc28a chmod 755 require_relative.rb 2013-10-01 16:03:20 -07:00
Scott Schneider
bdee20cf21 Syntax (spacing) 2013-10-01 15:44:11 -07:00
Scott Schneider
6fdeed596e Support 'require_relative' in rubies less than v1.9.2 2013-10-01 12:05:31 -07:00
Scott Schneider
4c858d012a Initial 2013-09-24 11:27:46 -07:00