ceph/paddles — pull request #38 by zmc (2014-03-28 21:02:40+00:00)
Title: Add Nodes to paddles

This will be the basis for inventory management (e.g. locking) in paddles, replacing teuthology's old server. It gets us cool things like:
```
$ curl http://127.0.0.1:8080/nodes/job_stats/
{
plana86.front.sepia.ceph.com: {
unknown: 2,
pass: 9
},
<...>
}

$ curl http://127.0.0.1:8080/nodes/plana72.front.sepia.ceph.com/job_stats
{
fail: 32,
unknown: 5,
running: 0,
dead: 0,
pass: 76
}

$ curl http://127.0.0.1:8080/nodes/plana72.front.sepia.ceph.com/
{
is_vm: false,
locked: true,
locked_since: "2014-03-27 23:49:34",
locked_by: "scheduled_ubuntu@yw",
up: true,
name: "plana72.front.sepia.ceph.com",
mac_address: "78:2b:cb:5b:ff:78",
machine_type: "plana",
vm_host: null,
distro: "ubuntu",
arch: "x86_64",
ssh_pub_key: ,
description: null
}

$ curl http://127.0.0.1:8080/nodes/?locked=true&machine_type=plana
[
{
is_vm: false,
locked: true,
locked_since: "2014-03-28 16:02:07",
locked_by: "scheduled_teuthology@teuthology",
up: true,
name: "plana53.front.sepia.ceph.com",
mac_address: "78:2b:cb:5e:d0:05",
machine_type: "plana",
vm_host: null,
distro: "ubuntu",
arch: "x86_64",
ssh_pub_key: ,
description: null
},
<...>
]
```