)]}'
{
  "log": [
    {
      "commit": "cdb85aa5ac734698889c05010b26d0459d9667ff",
      "tree": "a1ed7d8be184e427e8dd069d26afb0dc988ed072",
      "parents": [
        "93048c2934db8efa983036dc6e931b5606fedd3f"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu May 02 15:09:45 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu May 02 15:09:45 2013 -0400"
      },
      "message": "default dns server should be 8.8.4.4\n"
    },
    {
      "commit": "93048c2934db8efa983036dc6e931b5606fedd3f",
      "tree": "084b5609b0b02ed317798a062e7eae6e2a67f698",
      "parents": [
        "6072206079cb0cc3c33fb7bce93f9c7424effc46"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu May 02 11:20:26 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu May 02 11:20:26 2013 -0400"
      },
      "message": "slices, slice memberships and site privileges work when openstack is disabled or unavailable\n"
    },
    {
      "commit": "6072206079cb0cc3c33fb7bce93f9c7424effc46",
      "tree": "9de3ca0cf682c6a005651993fa37884f99a80394",
      "parents": [
        "d685bfa5ed612efda76048802ad5bbb3d53d4e53"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu May 02 10:57:04 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu May 02 10:57:04 2013 -0400"
      },
      "message": "sites work when openstack is disabled or unavailable\n"
    },
    {
      "commit": "d685bfa5ed612efda76048802ad5bbb3d53d4e53",
      "tree": "4f15e003882c7022fe0db7feb13139f72c563413",
      "parents": [
        "d1cd5dfcc6df38e882a0d518d10b3856ffd432f9"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu May 02 10:09:51 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu May 02 10:10:03 2013 -0400"
      },
      "message": "keys and users work when openstack is disabled or unavailable\n"
    },
    {
      "commit": "02755d4e646bc1c13889b19cd0fe827c0dbef966",
      "tree": "36a58c994bbd397573177d0aadbcc25dc707c514",
      "parents": [
        "5cd13204975f86b9968020e313a356626ab6cd16"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu May 02 00:00:10 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu May 02 00:00:10 2013 -0400"
      },
      "message": "RoleAdmin and Role model work when openstack is disable\n"
    },
    {
      "commit": "36538abfa8c2ba6c6e64274d416d8bfa7c8ecf3b",
      "tree": "d7506c0a51c79a6a8931128730594fbce43ebff1",
      "parents": [
        "79748614aac46debf940cc3a558d8816d9f683bd"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed May 01 17:24:46 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed May 01 17:24:46 2013 -0400"
      },
      "message": "dont overwrite /root/.ssh/authorized_keys with empty file\n"
    },
    {
      "commit": "6ada7bf3154b69e772102b7e0b118161b07fa264",
      "tree": "9f75686a0f56c7f4affd1646f14d4ea5c7a066bd",
      "parents": [
        "ea4de1a217286044ec4eb1742fb01f8b3dba4881"
      ],
      "author": {
        "name": "smbaker",
        "email": "smbaker@fc8-storktest.lan",
        "time": "Tue Apr 30 18:15:48 2013 -0700"
      },
      "committer": {
        "name": "smbaker",
        "email": "smbaker@fc8-storktest.lan",
        "time": "Tue Apr 30 18:15:48 2013 -0700"
      },
      "message": "added methods for updating and deleting instance metadata\n"
    },
    {
      "commit": "ea4de1a217286044ec4eb1742fb01f8b3dba4881",
      "tree": "34a89e7b869a6cdc38b3a9590a9528ad0540a87f",
      "parents": [
        "ab05c3bd615fd557169ced0cc83c5ee27943ae35"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 30 19:07:45 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 30 19:07:45 2013 -0400"
      },
      "message": "fix bugs\n"
    },
    {
      "commit": "ab05c3bd615fd557169ced0cc83c5ee27943ae35",
      "tree": "eeeb7c8bbf14501af7eaea3b75237d2a6fd29d59",
      "parents": [
        "0eb8b7eb296eb946cb964d916317f098c3f7a93a"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 30 18:30:21 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 30 18:30:21 2013 -0400"
      },
      "message": "removing refrences to flavor\n"
    },
    {
      "commit": "e7e304f5d307805fae1869a2b18cf174727c0262",
      "tree": "947b886c7d981e5567546a7cee0dd3fdd2ce913f",
      "parents": [
        "3811937cf1348f21e52cc79838bf11b1da184209"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 30 18:18:03 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 30 18:18:03 2013 -0400"
      },
      "message": "remove refrences to flavor. use m1.small as the default flavor\n"
    },
    {
      "commit": "bd3b26e14ce377819e2bd4182ba927d3c95edce1",
      "tree": "414dd82ca803ba67b9a48e19edf534d5e10b5c8e",
      "parents": [
        "ffab0f262c544cc1a8c6c4f4d56e061d13a860fd"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 30 17:43:48 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 30 17:43:48 2013 -0400"
      },
      "message": "initial checkin\n"
    },
    {
      "commit": "ffab0f262c544cc1a8c6c4f4d56e061d13a860fd",
      "tree": "2d9a0bca717f338b47dc5c074f9ad0126f14c35d",
      "parents": [
        "0dc2f560e90f02971034779b796f3e0318fd5fe2"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 29 19:42:20 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 29 19:42:20 2013 -0400"
      },
      "message": "update credentials to use name of slice/tenant of sliver\n"
    },
    {
      "commit": "0dc2f560e90f02971034779b796f3e0318fd5fe2",
      "tree": "4bde37368ee3f2a7275d968eb4bb27e03325a288",
      "parents": [
        "5d0ce61ef2d155d8c282f74d6e103c1a0f6d9bb2"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 29 19:41:39 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 29 19:41:39 2013 -0400"
      },
      "message": "give admin user the admin role to every tenant created by OpenStackDriver\n"
    },
    {
      "commit": "0c0e05d33859e34cf1b0cd6644ed6c884db44692",
      "tree": "f50add3186dc841a0a9cf9521a72d6c658adf625",
      "parents": [
        "c1665b13b4cdd40641525996899ca46bbd3993b5"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 29 17:52:37 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 29 17:52:37 2013 -0400"
      },
      "message": "remove call to remove_gateway_router()\n"
    },
    {
      "commit": "c1665b13b4cdd40641525996899ca46bbd3993b5",
      "tree": "449875f5c5e64bd6171d9399a1efb5892f2a9bd3",
      "parents": [
        "9bcbe4f97aefc3e4679bafe1f37ac5e049f56621"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 29 16:45:14 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 29 16:45:14 2013 -0400"
      },
      "message": "fix bug in delete_network_ports()\n"
    },
    {
      "commit": "54304c693d7996577ee21729c5bac6fd07a67556",
      "tree": "90651571a71d84ff803cc7a3e28f2b0780687b43",
      "parents": [
        "00d361f893df2241849d6e6ef3fe31e50087b5e0"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 28 11:27:07 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 28 11:27:07 2013 -0400"
      },
      "message": "Fix bugs\n"
    },
    {
      "commit": "cafd0b0293dde6c6404e1d6e3566f2f491a42086",
      "tree": "ef773a02b5157b923339b97759aaf9d73b62fcb8",
      "parents": [
        "c47c39d5ed7fd09d900f98c87ff3fb9400a85a03"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 17 10:45:12 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 17 10:48:38 2013 -0400"
      },
      "message": "initial checkin. Fills in null sliver ips\n"
    },
    {
      "commit": "94c6ea010bcab8b88eb579ac8e0850e122e7260c",
      "tree": "b6b537a5a03da3ebf6ae44ad7eee3945e988bfb6",
      "parents": [
        "79b28cafced7e3516dd75d6251d0bd4bc60693e0"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 16 21:41:50 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 16 21:41:50 2013 -0400"
      },
      "message": "clean up ports when deleting networks and subnets\n"
    },
    {
      "commit": "79b28cafced7e3516dd75d6251d0bd4bc60693e0",
      "tree": "3f8b0f5acafa32fa80c4531e7405db351d3981c9",
      "parents": [
        "b09cedb99f3efeb4f1e9c8d5ef927c872e867acf"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 15 21:47:45 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 15 21:47:45 2013 -0400"
      },
      "message": "specify instance host using availability_zone arg instead of scheduler_hints\n"
    },
    {
      "commit": "cdec090d2a527e57f0df2d1ced8d1d022ba9f928",
      "tree": "bbdca8b0d39f824f8ca5db960d8815feae75a948",
      "parents": [
        "4ecbb2a2feb4f017e2fece9f20571261088d65bf"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 15 00:38:49 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 15 00:38:49 2013 -0400"
      },
      "message": "update Sliver admin\n"
    },
    {
      "commit": "31d34138591e930afb8ee48ab363faad98ec3113",
      "tree": "8f61f852e243226fc5ff8b4607eb9079fb9adf47",
      "parents": [
        "62bc59a048c55f5e6ab29007f06cb37104ff2be6"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 15 00:02:06 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 15 00:02:06 2013 -0400"
      },
      "message": "update Subnet admin\n"
    },
    {
      "commit": "62bc59a048c55f5e6ab29007f06cb37104ff2be6",
      "tree": "864e518d720697b8bc6d0a41dc1168e03b059136",
      "parents": [
        "759b57ae0b128a3e2b90bfdd9e9514184e70002c"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 14 23:27:12 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 14 23:27:12 2013 -0400"
      },
      "message": "update Slice admin\n"
    },
    {
      "commit": "759b57ae0b128a3e2b90bfdd9e9514184e70002c",
      "tree": "6d23931d1cbd7e1af98ceb54c5f9e231df4fb87b",
      "parents": [
        "8484bdbc4a9f37c76a8f8d1087b35324449aab36"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 14 21:03:31 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 14 21:03:31 2013 -0400"
      },
      "message": "update Key admin\n"
    },
    {
      "commit": "fd24d0d9d3d7a8664d2785a614c4e942f3b5e538",
      "tree": "bc8f24a084ddae2c52d2172291814a6b67d0551a",
      "parents": [
        "221957d205575fbdd5040c9848bbdd68046feee8"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 14 00:59:17 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 14 00:59:17 2013 -0400"
      },
      "message": "updated Role admin\n"
    },
    {
      "commit": "221957d205575fbdd5040c9848bbdd68046feee8",
      "tree": "43c27369749621d3ce692825bf722e01a1f02ae5",
      "parents": [
        "51f113d8e1f29085b86364040b75e84a08d131f6"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Apr 13 19:08:34 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Apr 13 19:08:34 2013 -0400"
      },
      "message": "no need to look up flavor and image by name. Just pass the id to servers.create()\n"
    },
    {
      "commit": "51f113d8e1f29085b86364040b75e84a08d131f6",
      "tree": "ad5e2b299437186a6a4d42c956c6641966135bff",
      "parents": [
        "f79ad8e6cccafcf463a7817e6b648b46c85d52eb"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Apr 13 02:02:22 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Apr 13 02:02:22 2013 -0400"
      },
      "message": "fix node refresh\n"
    },
    {
      "commit": "5d6598c2542645dc35bc9c5ffb3bbb1836adffce",
      "tree": "60e449c770fd5b45aace21a1974dcf56f7c64a2b",
      "parents": [
        "4895203c531a0d617c55c6ff0db58f04af696066"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Apr 12 12:45:02 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Apr 12 12:45:02 2013 -0400"
      },
      "message": "Fix bugs\n"
    },
    {
      "commit": "4895203c531a0d617c55c6ff0db58f04af696066",
      "tree": "c506b91dfaeed4023ffd399f30cfa67c5b1342a8",
      "parents": [
        "771f4b90f36fadc1f72b3311eb861e3d22654d3a"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Apr 12 11:49:34 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Apr 12 11:49:34 2013 -0400"
      },
      "message": "fix bugs\n"
    },
    {
      "commit": "29c287ffea52cb16872f8037348eda2fd008c9dd",
      "tree": "8f6ac5589f9319c9e2d80c557b4f459a45fae7cb",
      "parents": [
        "4bc09f221dd8e45c934623ee1d76fb5ffbf7580d"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Apr 11 21:07:16 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Apr 11 21:07:16 2013 -0400"
      },
      "message": "merge latest code\n"
    },
    {
      "commit": "9dcc0504ffe66f22001702b5c1a3d300f42a9d35",
      "tree": "8331b54cbf5bd91636d1b35e26235be7ba2ebffc",
      "parents": [
        "257bedc116ce67ef5d4a584cd82f4565f12c432a"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 10 09:07:45 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 10 09:07:45 2013 -0400"
      },
      "message": "fix bug when adding router to external network\n"
    },
    {
      "commit": "257bedc116ce67ef5d4a584cd82f4565f12c432a",
      "tree": "3b7dd6161fbda48809adcae4479547716d70e633",
      "parents": [
        "28be7568ddd01a2a45e87104c4debe203f2b66d5"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 10 08:58:09 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 10 08:58:09 2013 -0400"
      },
      "message": "fix bug\n"
    },
    {
      "commit": "28be7568ddd01a2a45e87104c4debe203f2b66d5",
      "tree": "14c0e2813054f84d713568f25cbb13f60bcb10d1",
      "parents": [
        "82a688d6240eed70fb3fbf72b4762a6a1ee33f75"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 10 08:45:55 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 10 08:45:55 2013 -0400"
      },
      "message": "fix bugs\n"
    },
    {
      "commit": "82a688d6240eed70fb3fbf72b4762a6a1ee33f75",
      "tree": "8150595777264b01bd505a8dde037c2af8d57e55",
      "parents": [
        "53c6334f8e8c3491f46f91a2d6a74531f61ddaf3"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 10 08:12:58 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 10 08:12:58 2013 -0400"
      },
      "message": "fix TypeError\n"
    },
    {
      "commit": "53c6334f8e8c3491f46f91a2d6a74531f61ddaf3",
      "tree": "cfb31288d8adb0d7f2afbd7114677351892a7329",
      "parents": [
        "d95d1aad78cfb8be2c089c3879fb64c720b4ba47"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 10 08:11:45 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 10 08:11:45 2013 -0400"
      },
      "message": "fix TypeError\n"
    },
    {
      "commit": "c2a1c7cf6167512bd1a964f8e98a0e0ac164c279",
      "tree": "fd48ad69ab4a34776e53d4012252e59a38ff9833",
      "parents": [
        "509b318de8d23f0caf56049ddbfb22a582944e3f"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 09 13:06:34 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 09 13:06:34 2013 -0400"
      },
      "message": "fix AttributeError\n"
    },
    {
      "commit": "52cb930ccf5e20baee0d97935c638a47a5d0ad85",
      "tree": "dd92516842f4063ce381eedd2dd7f4393e0d5099",
      "parents": [
        "2b1c12f2991738dfffdd913ac1908be256eb5604"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 09 12:25:35 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 09 12:25:35 2013 -0400"
      },
      "message": "update create_keypair\n"
    },
    {
      "commit": "fdcbf83ba827f9e5b00e88052e8ff70051d032f3",
      "tree": "c213f4d56365b387bc896b607e88246d6f39e0c0",
      "parents": [
        "7c03fadd101b90652672de96cae0693eb8e3b3d6"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 09 11:47:11 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 09 11:47:11 2013 -0400"
      },
      "message": "fix AttributeError\n"
    },
    {
      "commit": "a70405382d89ab7643c426b4e48501e8ade019c7",
      "tree": "716c2dbf1a17eca51ed7808e594a81866c261116",
      "parents": [
        "414e690dc4256f12a73e251858bd6acbb5104f52"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 08 21:45:43 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 08 21:45:43 2013 -0400"
      },
      "message": "fix bugs\n"
    },
    {
      "commit": "b5f339f8a34f7aaaa218753208febd7292c96d17",
      "tree": "b26ac26ce26b6a47d61837c629eb35d185d33d5f",
      "parents": [
        "9648f02beb36f4bbc833aa14305dec7f4b7b9e14"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 08 16:29:38 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 08 16:29:38 2013 -0400"
      },
      "message": "use driver\n"
    },
    {
      "commit": "488950ad6ffc3cf0327aa6f460681942a596b369",
      "tree": "c88565fc2cb180b20115de19ec85bc6f7d4f3f2b",
      "parents": [
        "ded6fbf4cf7a4d1bd93bcf7cee2cd43e21af82e0"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 07 20:35:50 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 07 20:35:50 2013 -0400"
      },
      "message": "fix syntax\n"
    },
    {
      "commit": "0b2b804cef7be99bb672f32a016b9b3a01ceaade",
      "tree": "bcc5d4d326619ca56ca3524d2a27ba1d94fec1e0",
      "parents": [
        "021753b278354fa97d95e49ac3ef3db91aa8a061"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 07 19:55:27 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 07 19:55:27 2013 -0400"
      },
      "message": "initial checkin\n"
    },
    {
      "commit": "ad8b093f25e8cb9387d44907f20699b52c03b1c2",
      "tree": "0ed4cd00e6391459524cce6c1efaf6487aec5ed7",
      "parents": [
        "821451ac6fe94238725e171237d5ab310641b9b5"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 07 19:32:07 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 07 19:32:07 2013 -0400"
      },
      "message": "init accepts client argument\n"
    },
    {
      "commit": "821451ac6fe94238725e171237d5ab310641b9b5",
      "tree": "ea3440e4a865e8e2d4bd35d39ebd5bbe7787efc1",
      "parents": [
        "0e17ee24de44c36dc290f5c62f0cf879b257f9b8"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 07 00:21:47 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Apr 07 00:21:47 2013 -0400"
      },
      "message": "renaming\n"
    },
    {
      "commit": "0e17ee24de44c36dc290f5c62f0cf879b257f9b8",
      "tree": "39071c9c561f3d7e5db7ca1efc793ae91cc430b5",
      "parents": [
        "44e2a3f1c55cf39ca2ddcdd029bf160c516e1ff6"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Apr 06 20:04:02 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Apr 06 20:04:02 2013 -0400"
      },
      "message": "updated import paths\n"
    },
    {
      "commit": "240903f80b57b36a7799113025388a39d41ee749",
      "tree": "32f76ad09803c5295ee3074b0ba94370a768f965",
      "parents": [
        "af905fc788f47a83f0f5eb4bef25c5407ac43c88"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Apr 06 01:31:37 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Apr 06 01:31:37 2013 -0400"
      },
      "message": "create_router() adds router to external networks by default. added methods\n"
    },
    {
      "commit": "1fbdeca17d43c04b8f45e715d9885e4692fe7ad6",
      "tree": "e18157034f83b9fadf0b31cb1e1e0616544b072f",
      "parents": [
        "0211f1b50eb1870a79c56891d0eddd9c9b920716"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Apr 06 00:10:36 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Apr 06 00:10:36 2013 -0400"
      },
      "message": "SitePrivilege and SliceMembership linked to tenant roles\n"
    },
    {
      "commit": "0211f1b50eb1870a79c56891d0eddd9c9b920716",
      "tree": "cfd8d0cbeec6baf1d9ad36591e945f782922988c",
      "parents": [
        "3d1f069d35484ab82385e72018ba22eb40706af1"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Apr 04 23:56:24 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Apr 04 23:56:24 2013 -0400"
      },
      "message": "added methods\n"
    },
    {
      "commit": "735493a8d12bcb9aae88a114f7ef3e5c1e491296",
      "tree": "3d3ac2d8a2f97265f357ff788bd8f4f8e4ad7cdf",
      "parents": [
        "1da8b20745536811945a85b816d71dab3c4b4a33"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Apr 04 23:54:28 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Apr 04 23:54:28 2013 -0400"
      },
      "message": "initial checkin\n"
    },
    {
      "commit": "b3cefca675953937dcfab7806f2ee1fad2f20301",
      "tree": "44b10968f325fff062166d18dc9e13ba3ad039b2",
      "parents": [
        "123096d5911206198daca00cf3cf31ebe8fe4d94"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 02 10:25:10 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 02 10:25:10 2013 -0400"
      },
      "message": "adjust required fields\n"
    },
    {
      "commit": "123096d5911206198daca00cf3cf31ebe8fe4d94",
      "tree": "12bc3616bda25ceb3a734a85021a875548732779",
      "parents": [
        "39444e49065a42af8e99b43c497ef51e6118b788"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 02 10:24:24 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 02 10:24:24 2013 -0400"
      },
      "message": "adjust required fields\n"
    },
    {
      "commit": "07ece3baf361ca5220d8174d54d12d6c52c10b46",
      "tree": "7b78ec82b75bd373cc11b4ea6063046babef6540",
      "parents": [
        "5ee21906cafe633eacbe6231636b88aa1b8c4661"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 29 20:51:07 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 29 20:51:07 2013 -0400"
      },
      "message": "fix syntax errors\n"
    },
    {
      "commit": "5ee21906cafe633eacbe6231636b88aa1b8c4661",
      "tree": "1469f76245e3e9bb702d71f04714a942d7b4a7e2",
      "parents": [
        "7823b890013ebef14d329cfb63a6e54b6ba47882"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 29 20:36:42 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 29 20:36:42 2013 -0400"
      },
      "message": "fix index error\n"
    },
    {
      "commit": "7823b890013ebef14d329cfb63a6e54b6ba47882",
      "tree": "cea128f30163488120794c9aa7cf97a868304c18",
      "parents": [
        "a033ced6747e7ca95f42d75262c87a7511b56ec8"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 29 20:35:26 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 29 20:35:26 2013 -0400"
      },
      "message": "updated openstack driver\n"
    },
    {
      "commit": "a033ced6747e7ca95f42d75262c87a7511b56ec8",
      "tree": "784301e1367faa4bfacd9417329903f57eb42cb2",
      "parents": [
        "9e07f9abf1f43d81931965c5addea58bb2b4410c"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 29 17:57:06 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 29 17:57:06 2013 -0400"
      },
      "message": "update class name\n"
    },
    {
      "commit": "9e07f9abf1f43d81931965c5addea58bb2b4410c",
      "tree": "0f4cb483f2dff16a52f4af501b6d6c066d069fbf",
      "parents": [
        "f745b006018949eeb8b09dddab9ff48107867d97"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 29 17:56:26 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 29 17:56:26 2013 -0400"
      },
      "message": "renamed\n"
    },
    {
      "commit": "01942f55daca8a64dd762fbf5f3c47b46c5c2653",
      "tree": "3faef6b3ad229ebf1a7a33193fee8c1edbcd0b85",
      "parents": [
        "8eeddf9035734d0f7a3653223ef757814df58688"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Mar 26 14:26:40 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Mar 26 14:26:40 2013 -0400"
      },
      "message": "initial checkin\n"
    },
    {
      "commit": "9d0ae4b262b178ce8531e3d54ab4822e6703dd3d",
      "tree": "1f79a3b97d66c6fbbcaae504d3e611d3060a50a4",
      "parents": [
        "d7cb771e2dd2a34be209faacd31701cba79e2625"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Mar 26 13:22:32 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Mar 26 13:22:32 2013 -0400"
      },
      "message": "initial checkin\n"
    }
  ]
}
