)]}'
{
  "log": [
    {
      "commit": "3375088f267ab5f527f64e62787e13de890f9303",
      "tree": "ca53548192e8a979f14f5675bc41037a30755c07",
      "parents": [
        "4511248c0836080a8db910a07be7df4b4b16ad1b"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Tue Jan 06 18:27:48 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Tue Jan 06 18:28:03 2015 -0500"
      },
      "message": "bug fixes\n"
    },
    {
      "commit": "336e0f9c04a776e2aed57cd7eca4aa8d3dbe2e2a",
      "tree": "11eb24cc61c998a32bbfb22c4cda8a4b16ccd936",
      "parents": [
        "f3bbe471d954d5cf4fa6e710499027471e10d2db"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sun Nov 30 15:53:08 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:00:11 2014 -0500"
      },
      "message": "Controller replaces Deployment\n"
    },
    {
      "commit": "3023ba3192b2132ff130fc7af3f2f68154165cbd",
      "tree": "102317577791b0587bb194c6391f054071ead521",
      "parents": [
        "66aaad43509ea4e72be05e9a28643c06cdc6e6ab"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@opus.cs.princeton.edu",
        "time": "Fri Nov 14 00:56:04 2014 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@opus.cs.princeton.edu",
        "time": "Fri Nov 14 00:56:04 2014 -0500"
      },
      "message": "icehouse uses full hostname in availability zone filter now\n"
    },
    {
      "commit": "475c597082a6b4c888e6ea11f606cd062882c732",
      "tree": "4fd3857c6e332fc037e992ba288876d29ba31196",
      "parents": [
        "98e3177c94196f961c6f2ab04543e0227cee3c7d"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 05 10:32:41 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 05 10:32:41 2014 -0500"
      },
      "message": "Merged ansible branch into master\n"
    },
    {
      "commit": "046e3f0f9d39a56972a03fe3403e49e50684a67c",
      "tree": "2e76d9e4ba30de066cf32b569405381d2abaf9f4",
      "parents": [
        "2cbd380b813ea82fb5564f4f6f4a486e3d07e047"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Sep 29 16:21:57 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Sep 29 16:21:57 2014 -0400"
      },
      "message": "added availaibilty_zone param to spanw_instance() call\n"
    },
    {
      "commit": "c132d09eb4dcb394a6c942cc756f3e301df5d3a9",
      "tree": "9713777e3eaf6bc33ee70d034547e66e651dc4ed",
      "parents": [
        "1e10f065e1e425fa088f3c6dbe7f5b2591fc984a"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Sep 04 16:55:08 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Sep 04 16:55:08 2014 -0700"
      },
      "message": "plumb flavors through to openstack\n"
    },
    {
      "commit": "a16cfb2b380d3a2c4832cd13bb98bf5e0fd13193",
      "tree": "49435a4833984a2567e901dc05f8e90f0959a55f",
      "parents": [
        "91463d92cb5f49822fa4935b4dc424c2ab84df35"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Jun 19 22:00:22 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Jun 19 22:00:22 2014 -0400"
      },
      "message": "fix more bugs\n"
    },
    {
      "commit": "944669238676b007ba5ec7144dc50b4e7e174132",
      "tree": "b79bb5a885137b2080432a8bcf077c4b1af055ff",
      "parents": [
        "8f1cae3f8ee2e2ec58a3c1554db6c4c17f3eb48e"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Jun 19 20:09:40 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Jun 19 20:09:52 2014 -0400"
      },
      "message": "fix bugs with respect to recent Deployment model changes\n"
    },
    {
      "commit": "9c7a1e1391145d425227dd6da7dabd429bb53844",
      "tree": "a540aebc6df15720d5d8fa7504f7810ab309e2db",
      "parents": [
        "d57ace7656f8ead07559f4e267d00f4f30656d1d"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri May 30 14:42:42 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri May 30 14:42:42 2014 -0700"
      },
      "message": "userdata support for instance creation\n"
    },
    {
      "commit": "8b047738eff59272c5563e0449b4223984f935c2",
      "tree": "e99befad60f700f61c15a7510142a13684226b64",
      "parents": [
        "d2b0c6d1b93ff10fea168578bde0d46c86ebccb3"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Apr 25 12:42:21 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Apr 25 12:42:21 2014 -0400"
      },
      "message": "fix syntax error\n"
    },
    {
      "commit": "d2b0c6d1b93ff10fea168578bde0d46c86ebccb3",
      "tree": "ff5a0cea4249a0776c31cafd4e238fb6a5a48c3c",
      "parents": [
        "58c83964f454e8e1a0404cccd1011467c29f13ce"
      ],
      "author": {
        "name": "Andy Bavier",
        "email": "acb@cs.princeton.edu",
        "time": "Fri Apr 25 11:44:15 2014 -0400"
      },
      "committer": {
        "name": "Andy Bavier",
        "email": "acb@cs.princeton.edu",
        "time": "Fri Apr 25 11:44:15 2014 -0400"
      },
      "message": "Tweaks to how private subnets are created."
    },
    {
      "commit": "f549eb4dcaf997babd119be1bd391dfbb94a9804",
      "tree": "611f8d18285e0b0c62c524da9892d877156b8110",
      "parents": [
        "eb786e041ced28aa3fe8ef20279222f8acf05688"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Apr 18 15:33:24 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Apr 18 15:33:32 2014 -0400"
      },
      "message": "do not specify dns nameservers when creating subnets\n"
    },
    {
      "commit": "38c158b6220406748161deed5eeaec80147f255f",
      "tree": "aff84013fb89dce1042156c6c9d411c15ce97648",
      "parents": [
        "1ed6884d145f5b4b63521dfbf9717491ee3cbbe6"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 16 20:15:55 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 16 20:15:55 2014 -0400"
      },
      "message": "disable file injection for now\n"
    },
    {
      "commit": "8538b441fa732cdcc101067d3eceea7d2b703883",
      "tree": "5dcd37104cee923b06a75820376bebf479059a72",
      "parents": [
        "3a50a6c1bf8d3a254fb4154921f25d29e74d2497"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 16 07:49:41 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 16 07:49:51 2014 -0400"
      },
      "message": "switch back to files argument\n"
    },
    {
      "commit": "0f26b27864534d5c23bdd4e9208485a3249a9552",
      "tree": "2ab7c3cef282f9cf2859e64b0f8de1299977828f",
      "parents": [
        "e7045ca79b1434736f5498ec2e0f9433296fd149"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 15 12:17:15 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 15 12:18:19 2014 -0400"
      },
      "message": "keystone role names are case insensitive. lookup role using the supplied name and a titiled version\n"
    },
    {
      "commit": "4bf3eb54310b3aaf0c5f02b30de1d6e1fb6b195e",
      "tree": "7291d1c40017bb513e603f0b0790103850de2e02",
      "parents": [
        "ed9925a7a104a37ebfe155206fde886e93d86b37"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 14 22:15:35 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 14 22:16:47 2014 -0400"
      },
      "message": "file are now injected via personality argument\n"
    },
    {
      "commit": "ac2ebaadc03d1919ad55026fae4e68fcc7464951",
      "tree": "87860c7715bcd5e6c5a67450173c7bfbbd857ac7",
      "parents": [
        "8002166e0e9e4a9f308a88718a12d873e4743180"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Apr 10 12:26:18 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Apr 10 12:26:40 2014 -0400"
      },
      "message": "handle inconsistent admin role names in delete_user_role\n"
    },
    {
      "commit": "6719811033470900c07489a3d308e195b7197a6d",
      "tree": "5e070523f60356cc2d94c0a964bfb7c25841986b",
      "parents": [
        "8047cea390ab8098ca3faaab82508fbe7820b496"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 09 01:46:03 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 09 01:46:03 2014 -0400"
      },
      "message": "adjust availability zone hostname argument\n"
    },
    {
      "commit": "a4f1febd26171e210bf4ed2b24d7752ba0bca151",
      "tree": "4b5652746a94d901afa9b30ea1e69a6616f9dc06",
      "parents": [
        "a0a13eec404c2da7aec49ccf8fd5b05cc74e5ddb"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 28 20:09:21 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri Mar 28 20:09:21 2014 -0400"
      },
      "message": "try to resolve differnces between name of admin role at different deployments running differnt versions of keystone\n"
    },
    {
      "commit": "976d774450582012e12ced4be760d9a1fbe2689f",
      "tree": "785bfe310f29fa2079dc134b6a443ed714c650c3",
      "parents": [
        "e5968eb455b698c75b600e258506f2dac0f03ec6"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Mar 18 22:00:52 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Mar 18 22:00:52 2014 -0400"
      },
      "message": "fix bugs\n"
    },
    {
      "commit": "e4be32fc2c0530a6148cc93e354c95680d370598",
      "tree": "9567e099c1ae18e1d3e35d0457af232f50296b4b",
      "parents": [
        "45cbbc396013d526b3aa96cab9f95517196b45a6"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Mar 11 20:45:25 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Mar 11 20:45:39 2014 -0400"
      },
      "message": "observer now supports remote openstack deployments\n"
    },
    {
      "commit": "0ae3fe3a20cf8b2ec501545ec65e1b5cc538ffc1",
      "tree": "b655dbf3f6389806655a36f9cca6017a3e5ab526",
      "parents": [
        "7665f817b91ebbb0309bdf8e5b0d95d59274aa5d"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Oct 08 08:47:53 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Oct 08 08:47:53 2013 -0400"
      },
      "message": "checking in latest sync_slices code. move get_next_subnet to sync_slices\n"
    },
    {
      "commit": "66646d55de74e54e91ccd08db04f326ae8e5f522",
      "tree": "f4289de4b3b12036b8986f9bb4cf7793b8c95739",
      "parents": [
        "c12d5ca159b7808a3f35beae4ec76b0eb090d7c0"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Sep 24 21:47:12 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Sep 24 21:47:12 2013 -0400"
      },
      "message": "implement fetch_pending()\n"
    },
    {
      "commit": "c12d5ca159b7808a3f35beae4ec76b0eb090d7c0",
      "tree": "eb6b38cae55f4d558c1f39a1f6bd099994b03540",
      "parents": [
        "ce79de09a6a65b2be1de89c0ad9e74cf544f2db2"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Sep 24 10:30:39 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Sep 24 10:30:39 2013 -0400"
      },
      "message": "bugfixes\n"
    },
    {
      "commit": "387a73f79ab3fb6b9c2168f9c8975956281d4bfc",
      "tree": "4550760115e794c63d92a15ab3dd978283fee22e",
      "parents": [
        "3a0e66b78faf39ea99cd574b56deec2155ec80b6"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 18 07:59:14 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 18 07:59:14 2013 -0400"
      },
      "message": "instantiate sycn steps with openstack driver. Implement garbage collector and deleters\n"
    },
    {
      "commit": "3a0e66b78faf39ea99cd574b56deec2155ec80b6",
      "tree": "60a4401f00ed89bcc3be49f475b055cb591a8f8d",
      "parents": [
        "bc640cf8128e6796d70451694a9a9dcce69534eb"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Sep 12 11:21:34 2013 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Sep 12 11:21:34 2013 -0700"
      },
      "message": "support passing metadata during spawn. automatically add syscyl tags to metadata\n"
    },
    {
      "commit": "6a50b025ec196d63f4d876077a107d41f1a1eabc",
      "tree": "fd3aa856c6cae55ab4183a673b6c7487c53d144f",
      "parents": [
        "39671c7c5d057a73ecdc28dcf7bef079a8d77cd3"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 26 08:25:37 2013 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 26 08:25:37 2013 -0700"
      },
      "message": "support calling destroy_instance using admin tenant\n"
    },
    {
      "commit": "1ac5ddb47ff734a2f29e831b5aa6601c2daeb808",
      "tree": "fd73b9248b8eef8c32ff5ed2d05b1e82e68c50ff",
      "parents": [
        "e5097f0a7840f352338a06b6f0ab7c3f4d72838c"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Aug 14 10:50:48 2013 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Aug 14 10:50:48 2013 -0700"
      },
      "message": "allow sharing private network between slices, eliminate smbaker-slice-net testing restriction\n"
    },
    {
      "commit": "5736872d3562b55fd9fab255ad08dbc2c5266624",
      "tree": "6c72bc61553c457d6bca9d524b3f82e9e7ea32bf",
      "parents": [
        "78c87be837ecbaee445e98a744221740236f6035"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 13 18:04:38 2013 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 13 18:04:38 2013 -0700"
      },
      "message": "fix name of parameter passed to create sliver\n"
    },
    {
      "commit": "0d5ea5c7e775695379b698e6b7357ae32d5cd182",
      "tree": "46789b2da64684aea715c4719ecca5045da9492c",
      "parents": [
        "87e5e09d5973e0c027d109560acec9d84e26b2b6"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 09 14:49:56 2013 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 09 14:49:56 2013 -0700"
      },
      "message": "shared network template support\n"
    },
    {
      "commit": "8a6d5126612ea5360d4331f6c344b1f9f8155218",
      "tree": "a1d449beb2bd279db3f9831c1dff2f3fbcf7b744",
      "parents": [
        "74c82eaf985d1053fefc1201fe6d04671d50f052"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Aug 07 18:57:15 2013 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Aug 07 18:57:15 2013 -0700"
      },
      "message": "save_network, delete_network, and refresh_networks functions\n"
    },
    {
      "commit": "28897e18068a21ad271adc8200560775512a405c",
      "tree": "f24cba1581c1ca224a4984b29148ed046351b1a6",
      "parents": [
        "44187013d70d0ed5362f90baa237223c12c9324e"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Jul 09 07:25:38 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Jul 09 07:25:38 2013 -0400"
      },
      "message": "fix bug in delete tenant\n"
    },
    {
      "commit": "44187013d70d0ed5362f90baa237223c12c9324e",
      "tree": "5ecc74d6c386f0fb8990a1ac122dc36a7f01ed0d",
      "parents": [
        "613670972c2a29e08f8711bc6bc5eafab5ead127"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Jul 09 07:15:17 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Jul 09 07:15:17 2013 -0400"
      },
      "message": "skip invalid routers\n"
    },
    {
      "commit": "16f51e03dee4023612e054908e9cfc8a02bac5f3",
      "tree": "dfc0dcda89e502c417425fb2aa4302df997efc35",
      "parents": [
        "70780e90a156018e8e1a9d13124375418fa9362b"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Jul 01 10:33:29 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Jul 01 10:33:29 2013 -0400"
      },
      "message": "fix bugs\n"
    },
    {
      "commit": "70780e90a156018e8e1a9d13124375418fa9362b",
      "tree": "8004f862782fd1e3250f6b4c36fe1ff298275803",
      "parents": [
        "a3cf70cffdfb73353814afad530153cbaf628b12"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Jun 30 12:46:16 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sun Jun 30 12:46:16 2013 -0400"
      },
      "message": "sync external routes\n"
    },
    {
      "commit": "ac3e014b8c3c2fe436d25514d92e81537e9587de",
      "tree": "3a349eda3077c7ac1ce6bf3fd669c20bb35e866a",
      "parents": [
        "9182b32df0d4d5cc5c37de0db5d664df00cd1953"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Jun 26 11:28:57 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Jun 26 11:28:57 2013 -0400"
      },
      "message": "delete_tenant() deletes all instances associated with the specified tenant\n"
    },
    {
      "commit": "5ff5c457a61c7a890e9d60d4bd7286402c14c3b2",
      "tree": "045fa47bb3cda764bd5ea05e92345af772df1766",
      "parents": [
        "6795fbebdf1c348f1539dbd32e255f50e9ff4e12"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Jun 11 11:19:32 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Jun 11 11:19:32 2013 -0400"
      },
      "message": "do not update the \u0027updated\u0027 timestamp when updating the \u0027enacted\u0027 timestamp otherwise \u0027updated\u0027 will always be larger than \u0027enacted\u0027\n"
    },
    {
      "commit": "6795fbebdf1c348f1539dbd32e255f50e9ff4e12",
      "tree": "2114d9b7c803c97ab7d9fe5be909cecd1b016f7c",
      "parents": [
        "f8d4a467fdcf8cc367fa9b51d4caa1f264490f1e"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Jun 11 10:10:24 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Jun 11 10:10:24 2013 -0400"
      },
      "message": "fix user key sync\n"
    },
    {
      "commit": "c59fcaf0847bcc583591ae79cfc06e63960f59d8",
      "tree": "06b59e2b139c2baeea63328c013de6440aa94622",
      "parents": [
        "b5cf06daa65bd03bcd93a0079c00d870a676b6e3"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Jun 10 11:14:04 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Jun 10 11:14:04 2013 -0400"
      },
      "message": "initial checkin of observer\n"
    },
    {
      "commit": "b0d9742e1a7746ea0d8cbf78d85cab38883a8edc",
      "tree": "f40451100f46399ddc29ab7320615259d66b537f",
      "parents": [
        "f180f211902591e772e6a0438fec661c9d591d79"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Jun 10 09:57:45 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Jun 10 09:57:45 2013 -0400"
      },
      "message": "key is now just an attribute of the user model. Added \u0027creator\u0027 field to sliver model\n"
    },
    {
      "commit": "89f70f188504958d9ec66757cacace9575a92a52",
      "tree": "dd810c3c54cc777d7418c50c6bc39a22182f777a",
      "parents": [
        "e2b99da6c3c30b703d9f639205b71af19aabb4ba"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri May 10 20:20:03 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri May 10 20:21:33 2013 -0400"
      },
      "message": "fix openstack integration\n"
    },
    {
      "commit": "732913407cc255ab864e39522585e1b98e654af1",
      "tree": "511d3abfdd0943edfa5d35590848e33854fc4686",
      "parents": [
        "30fd4291ad7fdb809bb8ebbf738c3195436c2455",
        "0406283b933e66188b997e3a407bf5481e52364d"
      ],
      "author": {
        "name": "Siobhan Tully",
        "email": "stully@verivue.com",
        "time": "Fri May 10 10:50:08 2013 -0400"
      },
      "committer": {
        "name": "Siobhan Tully",
        "email": "stully@verivue.com",
        "time": "Fri May 10 10:50:08 2013 -0400"
      },
      "message": "Merge pick up, tweaked role/site/plcore_base or os_manager path when OpenStack not present\n"
    },
    {
      "commit": "30fd4291ad7fdb809bb8ebbf738c3195436c2455",
      "tree": "2c5e1b69e67018e4f059956cf92f82a90dfd8aa0",
      "parents": [
        "ed163d7e298e629f18131bde592fac6ae68ebc09"
      ],
      "author": {
        "name": "Siobhan Tully",
        "email": "stully@verivue.com",
        "time": "Fri May 10 08:59:56 2013 -0400"
      },
      "committer": {
        "name": "Siobhan Tully",
        "email": "stully@verivue.com",
        "time": "Fri May 10 08:59:56 2013 -0400"
      },
      "message": "Refactor to /opt/planetstack, final tweaks to make sure planetstack can run in non-openstack mode, adjustments to GUI for model focus changes\n"
    },
    {
      "commit": "0406283b933e66188b997e3a407bf5481e52364d",
      "tree": "c210598539d8f3a872b33bc10978f85c75f64bb6",
      "parents": [],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri May 10 08:22:44 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Fri May 10 08:22:44 2013 -0400"
      },
      "message": "role base filtering for main admin pages\n"
    },
    {
      "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": "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": "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": "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": "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": "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": "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": "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": "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"
    }
  ]
}
