)]}'
{
  "log": [
    {
      "commit": "902158bb8fb8452d747225e5986fb789828e4e67",
      "tree": "7644dd92270a6913593ffd693a72b5ff004232cd",
      "parents": [
        "3742b1462241f2e9070dfb6e18f17cc3f493c13a"
      ],
      "author": {
        "name": "Clark Boylan",
        "email": "clark.boylan@gmail.com",
        "time": "Tue May 30 14:11:09 2017 -0700"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Jun 07 17:23:38 2017 +0000"
      },
      "message": "Don\u0027t treat service as enabled if in disabled list\n\nThe old implementation for is_$service_enabled simply checked if any of\nthe subservices were enabled and if so the service was considered to be\nenabled. This makes disabling services complicated as it means you have\nto list every single subservice which can and do change over time.\n\nInstead also check if the generic service name is in the disabled\nservices list and if so don\u0027t treat the service as enabled.\n\nChange-Id: I7fe4dfca2cd9c15069d50a04161a29c5638291cb\n"
    },
    {
      "commit": "3742b1462241f2e9070dfb6e18f17cc3f493c13a",
      "tree": "c9ca2e630818a6a6410fbcf8eaf21bb9c7893a30",
      "parents": [
        "4bca73957689f3ef0bcdc7cc9049ba7baef97e7b",
        "6f962a2ee5e131282b1e2bc117784ae41b083cad"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Jun 07 13:33:58 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Jun 07 13:33:58 2017 +0000"
      },
      "message": "Merge \"Change \"files\" directory in etcd project\""
    },
    {
      "commit": "adabee29f693325ca27b33da9a6c6f144ba2c2ae",
      "tree": "e1f0467738ee0875ab04a2068182950b5c1a85e5",
      "parents": [
        "e1a2448970b1c3df34463b3ccc55321bcb230efb",
        "2dfca047d97d4867048dbc9eec34b6f7ff54655e"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jun 05 20:22:10 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jun 05 20:22:10 2017 +0000"
      },
      "message": "Merge \"Don\u0027t run and check c-api if it is disabled\""
    },
    {
      "commit": "e1a2448970b1c3df34463b3ccc55321bcb230efb",
      "tree": "589619d24b8d43417f3c79246afd83eb02cd6eef",
      "parents": [
        "1ade00da55cfc383b4832f8da03df01001b40fcd",
        "de8580691d133fb8ad479ef53008d197e651332b"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jun 05 18:28:11 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jun 05 18:28:11 2017 +0000"
      },
      "message": "Merge \"Expose etcd port as a variable\""
    },
    {
      "commit": "1ade00da55cfc383b4832f8da03df01001b40fcd",
      "tree": "3e86395706a60af44f4884f0c92bad9794e95526",
      "parents": [
        "dc9ef55fc6be8eb7c83115ec19dfc39256c04302"
      ],
      "author": {
        "name": "Matt Riedemann",
        "email": "mriedem.os@gmail.com",
        "time": "Mon Jun 05 11:01:45 2017 -0400"
      },
      "committer": {
        "name": "Matt Riedemann",
        "email": "mriedem.os@gmail.com",
        "time": "Mon Jun 05 11:01:45 2017 -0400"
      },
      "message": "Fix scheduler_default_filters usage\n\nThe scheduler_default_filters config option moved out of the\nDEFAULT option group into a more specific group, and the old\noption is deprecated as a result so we need to update our usage.\n\nChange-Id: I5d6574d19c3f16abadddb19f34cb645dcdcc07f4\n"
    },
    {
      "commit": "dc9ef55fc6be8eb7c83115ec19dfc39256c04302",
      "tree": "ec5bc36ed7409b75a655adc6fbbbb0f75a793691",
      "parents": [
        "a718b5ea9227ff55ca52dcd156f06b43fe2e3ca3",
        "35649ae0d2a356c310fd92f16356bdd086cab290"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed May 31 20:48:10 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed May 31 20:48:10 2017 +0000"
      },
      "message": "Merge \"Make stack.sh work on SUSE\""
    },
    {
      "commit": "a718b5ea9227ff55ca52dcd156f06b43fe2e3ca3",
      "tree": "b4c9cedd0381b14b478b27673a1a1189604b1b5c",
      "parents": [
        "86f9bc7b0b227925fffdc0a46c61e793d39ee482",
        "4baac6572573945f49b3b3df7b7ea27f15955477"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed May 31 19:59:59 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed May 31 19:59:59 2017 +0000"
      },
      "message": "Merge \"Use proper python when configuring certs\""
    },
    {
      "commit": "6f962a2ee5e131282b1e2bc117784ae41b083cad",
      "tree": "2fd9d818b45edcb8bb426047b54f6dcf515a1e72",
      "parents": [
        "b3ced44e37d7dea38188209b5380f7c2fcd34b1a"
      ],
      "author": {
        "name": "Rodolfo Alonso Hernandez",
        "email": "rodolfo.alonso.hernandez@intel.com",
        "time": "Wed May 31 11:00:08 2017 +0100"
      },
      "committer": {
        "name": "Rodolfo Alonso Hernandez",
        "email": "rodolfo.alonso.hernandez@intel.com",
        "time": "Wed May 31 13:36:22 2017 +0100"
      },
      "message": "Change \"files\" directory in etcd project\n\nFunction \"_install_etcd\" is trying to use \"files\" directory\nto download a file. Instead of this, this directory should be\n$FILES, which is defined previously in parent script.\n\nTrivialFix\nChange-Id: I643ce3b9aba1f65f03524430c748bf120d071509\n"
    },
    {
      "commit": "b3ced44e37d7dea38188209b5380f7c2fcd34b1a",
      "tree": "b6aa9604e110b74bf09cbdb5c5f60fe14792393a",
      "parents": [
        "d94f44558a44a424ef3d01da79e65f2b57520760",
        "29ec28216f91eab118134b5444e0276ef845e0d0"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed May 31 05:14:58 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed May 31 05:14:58 2017 +0000"
      },
      "message": "Merge \"Configure volume_clear setting per backend\""
    },
    {
      "commit": "d94f44558a44a424ef3d01da79e65f2b57520760",
      "tree": "59f8bbcd6c18e8c56472d9d8257f74ba77b84082",
      "parents": [
        "899616290cf54fe12f835bd8e3c43b8829ff9fd1",
        "faffde1f970c0786d0256e4d51725fbe2ceda063"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed May 31 04:29:13 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed May 31 04:29:13 2017 +0000"
      },
      "message": "Merge \"Use string cert CA defaults\""
    },
    {
      "commit": "29ec28216f91eab118134b5444e0276ef845e0d0",
      "tree": "d02a4315d885010a0f9ad4c65a2c90e5eac80292",
      "parents": [
        "899616290cf54fe12f835bd8e3c43b8829ff9fd1"
      ],
      "author": {
        "name": "Sean McGinnis",
        "email": "sean.mcginnis@gmail.com",
        "time": "Tue May 30 14:21:39 2017 -0500"
      },
      "committer": {
        "name": "Sean McGinnis",
        "email": "sean.mcginnis@gmail.com",
        "time": "Tue May 30 15:51:17 2017 -0500"
      },
      "message": "Configure volume_clear setting per backend\n\nvolume_clear is currently set in the DEFAULT section,\nbut this is a backend specific setting, and therefore\nneeds to be set in the backend config section.\n\nChange-Id: Ifa3a659bb4768b8915a0f23e7f14b0f3348d93d2\n"
    },
    {
      "commit": "2dfca047d97d4867048dbc9eec34b6f7ff54655e",
      "tree": "9cae7347ba647234140f7482ef8385efb3c406e4",
      "parents": [
        "f0442dd59230af083fc1e348591debf5897959f6"
      ],
      "author": {
        "name": "Clark Boylan",
        "email": "clark.boylan@gmail.com",
        "time": "Thu May 25 14:57:19 2017 -0700"
      },
      "committer": {
        "name": "Clark Boylan",
        "email": "clark.boylan@gmail.com",
        "time": "Tue May 30 13:22:39 2017 -0700"
      },
      "message": "Don\u0027t run and check c-api if it is disabled\n\nPreviously we didn\u0027t block out the c-api startup code because the\ndevstack functions to start services check that for us. However, since\nthe cinder devstack code checks the service is up and runs the tls proxy\nif tls is enabled we need to block it all off to avoid doing those\nthings if c-api is disabled.\n\nChange-Id: I1c4f22f785af96caaf4baa21ff28714b9afd3458\n"
    },
    {
      "commit": "35649ae0d2a356c310fd92f16356bdd086cab290",
      "tree": "896b2dddcdd7e6884f7876dd20293d834e1833a6",
      "parents": [
        "9b2a2fa55dbba724a781d2720546611a8add8936"
      ],
      "author": {
        "name": "Clark Boylan",
        "email": "clark.boylan@gmail.com",
        "time": "Sat May 27 17:52:55 2017 -0700"
      },
      "committer": {
        "name": "Clark Boylan",
        "email": "clark.boylan@gmail.com",
        "time": "Sun May 28 09:58:51 2017 -0700"
      },
      "message": "Make stack.sh work on SUSE\n\nThis adds packages to suse for systemd python linkages as well as\napache2 and which. And configures mod_proxy and mod_proxy_uwsgi with\na2enmod.\n\nWe also properly query if apache mods are enabled to avoid running\ninto systemd service restart limits. Enable mod_version across the board\nas we use it and it may not be enabled by default (like in SUSE).\n\nAlso in addition to enabling mod_ssl we enable the SSL flag so that TLS\nwill work...\n\nFinally we tell the system to trust the devstack CA.\n\nChange-Id: I3442cebfb2e7c2550733eb95a12fab42e1229ce7\n"
    },
    {
      "commit": "4baac6572573945f49b3b3df7b7ea27f15955477",
      "tree": "c748271777e5815cb2b1f8e22fdbc8532caf22c6",
      "parents": [
        "faffde1f970c0786d0256e4d51725fbe2ceda063"
      ],
      "author": {
        "name": "Clark Boylan",
        "email": "clark.boylan@gmail.com",
        "time": "Sat May 27 20:53:20 2017 -0700"
      },
      "committer": {
        "name": "Clark Boylan",
        "email": "clark.boylan@gmail.com",
        "time": "Sat May 27 20:57:56 2017 -0700"
      },
      "message": "Use proper python when configuring certs\n\nWe have to do silly overrides of cert locations for requests for\nreasons. If we are running under python3 then we were previously looking\nin the wrong location for the requests certs. Update the cert fixing\nfunction to properly use python3 to find the certs if python3 is\nenabled.\n\nChange-Id: Id1369da0d812edcf9b1204e9c567f8bfe77c48b2\n"
    },
    {
      "commit": "de8580691d133fb8ad479ef53008d197e651332b",
      "tree": "834dfa6cde978d2fe437d91ff9ac33e5e57ebdcf",
      "parents": [
        "793db3ac359f16207b1b5ca0f98dfb64c4aa2090"
      ],
      "author": {
        "name": "Hongbin Lu",
        "email": "hongbin.lu@huawei.com",
        "time": "Wed May 24 18:42:33 2017 +0000"
      },
      "committer": {
        "name": "Hongbin Lu",
        "email": "hongbin.lu@huawei.com",
        "time": "Sat May 27 03:54:45 2017 +0000"
      },
      "message": "Expose etcd port as a variable\n\nThis allows devstack plugins to retrieve the etcd port from devstack\ninstead of hard-coding it.\n\nChange-Id: I106b559b8ac0fb99a0426bce97a27f67e32d264d\n"
    },
    {
      "commit": "6b1967bba4af935bb9ae0012f5f94361d65fca98",
      "tree": "a76d2247ad425b9019777bcba2dc95c3d639f102",
      "parents": [
        "202470eca1e5f9a16456220c625a47697abe023c",
        "ac2ae8c04779e4ad78d3813b8bc4bc4200b6d686"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri May 26 19:33:42 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri May 26 19:33:42 2017 +0000"
      },
      "message": "Merge \"Remove nova cert from devstack\""
    },
    {
      "commit": "ff40f6e2914eb1d2aedad5ecc2b11ddd41623017",
      "tree": "4578c1fafefbf9f0ba914eb89ad4a7d0ad631f85",
      "parents": [
        "f8aad91bd169682f3f2c0ceb208577ebc3971ce2",
        "1df17c94f512f0d1a084ba70cc0d4feb05feb8fb"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri May 26 19:24:44 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri May 26 19:24:44 2017 +0000"
      },
      "message": "Merge \"lib/neutron: Don\u0027t assume plugin config is provided by neutron repo\""
    },
    {
      "commit": "f8aad91bd169682f3f2c0ceb208577ebc3971ce2",
      "tree": "3e6d1dee86e8714ae1fe126efb5cf58ec8b033a7",
      "parents": [
        "4faa8495655b453dc01b4e4b30c2fb05f780b33a",
        "54a8dc291f271c6782a7381d6f981223fdabd459"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri May 26 19:22:48 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri May 26 19:22:48 2017 +0000"
      },
      "message": "Merge \"cleanup: remove DEVSTACK_CINDER_SECURE_DELETE\""
    },
    {
      "commit": "6d302a83242e2e83ca911da9c2c3cd7cb93b789c",
      "tree": "f7d76a9b54313f78dbf4d7c6b9c7d35c561ba887",
      "parents": [
        "9b2a2fa55dbba724a781d2720546611a8add8936",
        "ef1e88ec09bda30cad19589629744b59e12b4093"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri May 26 19:21:11 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri May 26 19:21:11 2017 +0000"
      },
      "message": "Merge \"Enable ssh validation by default\""
    },
    {
      "commit": "9b2a2fa55dbba724a781d2720546611a8add8936",
      "tree": "37aa651a1098a51c6b615421460403ca1c59e257",
      "parents": [
        "7b230532dc5f229a5dbe712c01bb2a7ea074e196",
        "853b475bfd79621ce7189b133625cb404d618efb"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu May 25 20:52:28 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu May 25 20:52:28 2017 +0000"
      },
      "message": "Merge \"Fix typo\""
    },
    {
      "commit": "7b230532dc5f229a5dbe712c01bb2a7ea074e196",
      "tree": "8f54db282fcf17e4b04178a5edab5a002a86e545",
      "parents": [
        "793db3ac359f16207b1b5ca0f98dfb64c4aa2090",
        "c0d16c279ad2a24bd13e2dbd6ae6986c37c4f230"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu May 25 18:46:09 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu May 25 18:46:09 2017 +0000"
      },
      "message": "Merge \"Get rid of zookeeper from devstack\""
    },
    {
      "commit": "853b475bfd79621ce7189b133625cb404d618efb",
      "tree": "959a09eb415a4b962fcf7c5fbe2a2f2b6dfa0698",
      "parents": [
        "793db3ac359f16207b1b5ca0f98dfb64c4aa2090"
      ],
      "author": {
        "name": "Davanum Srinivas",
        "email": "davanum@gmail.com",
        "time": "Thu May 25 13:03:10 2017 -0400"
      },
      "committer": {
        "name": "Davanum Srinivas",
        "email": "davanum@gmail.com",
        "time": "Thu May 25 13:03:58 2017 -0400"
      },
      "message": "Fix typo\n\nshould be etcd3\n\nChange-Id: Icfa24654699a4e4e4be8a53f7bbe4634badbff7b\n"
    },
    {
      "commit": "f0442dd59230af083fc1e348591debf5897959f6",
      "tree": "3db42b82ce019c36e3c35b134d75c7e5274e2053",
      "parents": [
        "d8283fde660bee2d4a5f639197a6a7010988b269",
        "bba924121c8ad5e95f5cf55ab489d4276dcc39b1"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed May 24 14:57:29 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed May 24 14:57:29 2017 +0000"
      },
      "message": "Merge \"Use sha256sum instead of gpg for verification\""
    },
    {
      "commit": "c0d16c279ad2a24bd13e2dbd6ae6986c37c4f230",
      "tree": "987e0151a5738656e45694232d8495d0d3590188",
      "parents": [
        "d8283fde660bee2d4a5f639197a6a7010988b269"
      ],
      "author": {
        "name": "Davanum Srinivas",
        "email": "davanum@gmail.com",
        "time": "Fri May 19 10:23:46 2017 -0400"
      },
      "committer": {
        "name": "Davanum Srinivas (dims)",
        "email": "davanum@gmail.com",
        "time": "Wed May 24 14:13:27 2017 +0000"
      },
      "message": "Get rid of zookeeper from devstack\n\nIn Ibbb430fb1dbf66942168e0cb52d990ab6a2eb8d7, we are adding\netcd3 as a new base service. We should drop zookeeper\nand use etcd3 as the backend.\n\nSince cinder is the first service for this tooz+etcd3 DLM\nscenario and cinder uses eventlet we have cannnot use the\ngrpc based driver in tooz. So new CINDER_COORDINATION_URL\nthat defaults to the etcd3\u0027s grpc HTTP gateway based\ntooz backend.\n\nWe need to hold this change until the tooz change (see\nDepends-On) is available in a tooz release.\n\nDepends-On: I6184ed193482dad9643ccb2b97133d4957485408\nChange-Id: Ia187e1a86413edf25b909b6bb57e84fb4930a696\n"
    },
    {
      "commit": "bba924121c8ad5e95f5cf55ab489d4276dcc39b1",
      "tree": "b3ccab62b5a7d2be4965f4b4c25f813a7c2c7c6b",
      "parents": [
        "08de346d0354586b3e8ca2321cb3272eb9b32828"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed May 24 07:56:10 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed May 24 08:04:18 2017 -0400"
      },
      "message": "Use sha256sum instead of gpg for verification\n\ngpg verification requires network connectivity which is non\nmirrorable. We try to avoid that in devstack whenever possible. A\nsha256sum is a totally reasonable way of knowing if the downloaded\npackage is valid.\n\nCloses-Bug: #1693092\n\nChange-Id: Id496ab53f76444f08dc6961f1ecd25f450cc96d7\n"
    },
    {
      "commit": "d8283fde660bee2d4a5f639197a6a7010988b269",
      "tree": "29112b36b1992ffd146db419256e37790fee398d",
      "parents": [
        "08de346d0354586b3e8ca2321cb3272eb9b32828"
      ],
      "author": {
        "name": "Davanum Srinivas",
        "email": "davanum@gmail.com",
        "time": "Tue May 23 22:12:39 2017 -0400"
      },
      "committer": {
        "name": "Davanum Srinivas",
        "email": "davanum@gmail.com",
        "time": "Tue May 23 22:12:42 2017 -0400"
      },
      "message": "Avoid installing etcd3 in subnodes\n\nWe need to handle this better, for now, just don\u0027t install\netcd in the sub nodes. We need to setup the proper clustering\nmechanism if we want to have etcd3 running in multiple nodes\n\nChange-Id: I8dd385e3c993942473e67d04367cdf74495dbeef\n"
    },
    {
      "commit": "08de346d0354586b3e8ca2321cb3272eb9b32828",
      "tree": "f1add433841f433fa08fe553ca096ef1bd382f12",
      "parents": [
        "23ed6666ed5dd6eb59a1b9f37a569577cad83663",
        "546656fc0543ec2bc5b422fd9eee17f1b8122758"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed May 24 00:08:47 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed May 24 00:08:47 2017 +0000"
      },
      "message": "Merge \"etcd3 as a base service\""
    },
    {
      "commit": "23ed6666ed5dd6eb59a1b9f37a569577cad83663",
      "tree": "799dc8b70447e6342be901ebd9428b2aaa6ddd10",
      "parents": [
        "6a62619cbc28625755a76eae08b529438eb4f281",
        "d1fe0e62e77b2eaf711e0b4c157dc571be9ad13e"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue May 23 01:26:25 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue May 23 01:26:25 2017 +0000"
      },
      "message": "Merge \"Always setup libvirt for tap devices when using Neutron\""
    },
    {
      "commit": "546656fc0543ec2bc5b422fd9eee17f1b8122758",
      "tree": "ae85039b57b55ec4981f45c0f9f7fa0a050c04f5",
      "parents": [
        "6a62619cbc28625755a76eae08b529438eb4f281"
      ],
      "author": {
        "name": "Davanum Srinivas",
        "email": "davanum@gmail.com",
        "time": "Tue Mar 14 07:05:19 2017 -0400"
      },
      "committer": {
        "name": "Davanum Srinivas (dims)",
        "email": "davanum@gmail.com",
        "time": "Mon May 22 21:57:48 2017 +0000"
      },
      "message": "etcd3 as a base service\n\nETCD_DOWNLOAD_URL is set to github url, in our CI, we can point\nETCD_DOWNLOAD_URL to a url in tarballs.openstack.org possibly\nin devstack-gate\n\nDownload the etcd binaries and drop them into /opt/stack/bin and\nuse it from there. Cache the tgz for subsequent use (local workflow)\n\ndaemon-reload is called twice once from inside the write_user_unit_file\nand then when we adjust the entries with additional things recommended\nby the etcd team. We need a better way to do this in the future.\n\nAdded a TODO to verify the downloaded artifact later. The etcd team\nposts gpg signature, we could verify that or run sha256sum and hard\ncode that in lib/etcd3 file. We would have to update it whenever we\nbump the etcd3 version.\n\nWe use the public key \"CoreOS Application Signing Key \u003csecurity@coreos.com\u003e\"\nwith ID FC8A365E to verify the integrity of the downloaded file\n\nAny jobs that need to be run on architectures where v3.1.7 is not available\nshould rey the v3.2.0-rcX release candidates. We can switch to v3.2.0\nwhen it gets released.\n\nInitial version of this code was borrowed from the dragonflow\nrepo:\nhttp://git.openstack.org/cgit/openstack/dragonflow/tree/devstack\n\nChange-Id: Ibbb430fb1dbf66942168e0cb52d990ab6a2eb8d7\n"
    },
    {
      "commit": "ac2ae8c04779e4ad78d3813b8bc4bc4200b6d686",
      "tree": "3d69e356c2695773285c6ddcf47ef33fc4626bf8",
      "parents": [
        "6a62619cbc28625755a76eae08b529438eb4f281"
      ],
      "author": {
        "name": "Nir Magnezi",
        "email": "nmagnezi@redhat.com",
        "time": "Mon May 22 12:40:57 2017 +0300"
      },
      "committer": {
        "name": "Nir Magnezi",
        "email": "nmagnezi@redhat.com",
        "time": "Mon May 22 12:40:57 2017 +0300"
      },
      "message": "Remove nova cert from devstack\n\nAs a followup to I2c78a0c6599b92040146cf9f0042cff8fd2509c3, the nova\ncert service should be removed from devstack.\n\nWithout this fix, stacking will fail is USE_SCREEN\u003dTrue\n\nChange-Id: I115580352fa380b896bae290f9a4efbfe4ff0dfd\n"
    },
    {
      "commit": "5ff1b476e49358c06629e96a52e7cfab2a1adeed",
      "tree": "d11968db4e70180e19086c85be79a276587ff56d",
      "parents": [
        "00e5a98eead98172bbde67b500e985b62c4f080a",
        "401de4d20cb204b811dd5877e9e7688d72eb6e39"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed May 17 19:02:22 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed May 17 19:02:22 2017 +0000"
      },
      "message": "Merge \"Copy \u0027resource_filters.json\u0027 file to cinder config folder\""
    },
    {
      "commit": "54a8dc291f271c6782a7381d6f981223fdabd459",
      "tree": "fba36c03d61e931d253a24696c21faecf2c7d06b",
      "parents": [
        "00e5a98eead98172bbde67b500e985b62c4f080a"
      ],
      "author": {
        "name": "Isaac Beckman",
        "email": "isaacb@il.ibm.com",
        "time": "Wed May 17 14:18:18 2017 +0300"
      },
      "committer": {
        "name": "Isaac Beckman",
        "email": "isaacb@il.ibm.com",
        "time": "Wed May 17 14:27:41 2017 +0300"
      },
      "message": "cleanup: remove DEVSTACK_CINDER_SECURE_DELETE\n\nDEVSTACK_CINDER_SECURE_DELETE is deprecated from liberty release.\nThis should have been removed after kilo-eol\n\nChange-Id: I82c15a19f8fe0326d4a5c2a076baa6d3e53fcf32\n"
    },
    {
      "commit": "d1fe0e62e77b2eaf711e0b4c157dc571be9ad13e",
      "tree": "01633f2ca028866b78fa9a1e43d253569acc93d4",
      "parents": [
        "00e5a98eead98172bbde67b500e985b62c4f080a"
      ],
      "author": {
        "name": "Kevin Benton",
        "email": "kevin@benton.pub",
        "time": "Tue May 16 22:27:58 2017 -0700"
      },
      "committer": {
        "name": "Kevin Benton",
        "email": "kevin@benton.pub",
        "time": "Wed May 17 06:07:35 2017 +0000"
      },
      "message": "Always setup libvirt for tap devices when using Neutron\n\nThis logic has been tied to OVS since it was introduced in [1] and\nrevised in [2]. However, many other backends may use tap devices that\naren\u0027t related to OVS, such as Calico[3] and Linux Bridge after [4]\nmerges.\n\nThis patch just removes the dependency on OVS specifically so\n/dev/net/tun is added to cgroups whenever any Neutron backend is used.\nThis is done in other deployment tools like Juju[5] so it\u0027s not\nunprecedented.\n\n1. Ifab268f739b004db13024633e8abeb17691b9e46\n2. Ic1da132fa421f1c70c10a319ee3239831b0f956f\n3.\nhttp://docs.projectcalico.org/master/getting-started/openstack/installation/ubuntu#compute-node-install\n4. I23c5faaeab69aede1fd038a36f4a0b8f928498ce\n5.\nhttps://github.com/openstack/charm-nova-compute/blob/2790f81ecd32d9962617c4c3126621fffdc318a0/templates/qemu.conf\n\nChange-Id: I075595158d8f3b5a6811c4794aa7b91912940db5\nPartial-Bug: #1675343\n"
    },
    {
      "commit": "ac042d41222eea83bf360b4db89c4c7bf415457d",
      "tree": "939c9440a3c50de9b078165752b3e13c30486d22",
      "parents": [
        "1d638a9b52e561b6da615d4aa3e60d51f5c5668e",
        "3336b4bed6455e9e77a7696b353d8798270c5b2e"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue May 16 15:15:34 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue May 16 15:15:34 2017 +0000"
      },
      "message": "Merge \"remove out of date heat references\""
    },
    {
      "commit": "79911d8b19cdb1a64ac81a87a7966cdaf02f0c07",
      "tree": "f89fcf01150571c94b33ee5e6ebd79ebb94964cd",
      "parents": [
        "972b5181480f8b48667afa9d3af6af2fdf97a46d",
        "f28e7ef6ba48030d7bc5c6ea27f28b8a1fc281e9"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue May 16 12:41:44 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue May 16 12:41:44 2017 +0000"
      },
      "message": "Merge \"uninstall libvirt-python and reinstall\""
    },
    {
      "commit": "f28e7ef6ba48030d7bc5c6ea27f28b8a1fc281e9",
      "tree": "caeddc62ade7f67002bf13f1ff1b18563ad7c9c2",
      "parents": [
        "2b88b323c9e08ab8fecfe4e3e88d79c26761411c"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Sun May 07 22:02:10 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon May 08 07:30:20 2017 -0400"
      },
      "message": "uninstall libvirt-python and reinstall\n\nlibvirt-python compiles against the currently installed libvirt. If\nyou upgrade that, it needs to rebuild, however it won\u0027t change\nversions, so pip install just noops. Force an uninstall / reinstall of\nit every time to handle potential upgrades of libvirt.\n\nChange-Id: If34541b34aa6d55eedaf6c603fd1fe92eb887308\n"
    },
    {
      "commit": "1df17c94f512f0d1a084ba70cc0d4feb05feb8fb",
      "tree": "d57cdfa5c66d4a3b493eb8d43904d6bf7758de8e",
      "parents": [
        "0c0232f508245817eb3de11ec17c6027f8d43709"
      ],
      "author": {
        "name": "YAMAMOTO Takashi",
        "email": "yamamoto@midokura.com",
        "time": "Mon May 01 17:00:42 2017 +0900"
      },
      "committer": {
        "name": "YAMAMOTO Takashi",
        "email": "yamamoto@midokura.com",
        "time": "Mon May 08 15:03:05 2017 +0900"
      },
      "message": "lib/neutron: Don\u0027t assume plugin config is provided by neutron repo\n\nIt isn\u0027t the case for plugins provided by subprojects.\n\nChange-Id: Ic28a9da9f11355e5e1eae5db9b2d4ee6ed081b55\n"
    },
    {
      "commit": "caad9221e0caa3d43a3c4df9e0460a4529d53eb1",
      "tree": "1180c1671d119ed983d0da2f772b2bce7fbe1ec9",
      "parents": [
        "2b88b323c9e08ab8fecfe4e3e88d79c26761411c",
        "92e6b1a0e83cbfeeb1d29bbe2b8c71e212f885fd"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon May 08 03:15:07 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon May 08 03:15:07 2017 +0000"
      },
      "message": "Merge \"default gateway regex: use exact match for iface name\""
    },
    {
      "commit": "401de4d20cb204b811dd5877e9e7688d72eb6e39",
      "tree": "cd2c1a439068b6a79bd857fee3aef28c495e7044",
      "parents": [
        "b2bfe5617ac43a678a9113d5c955f5456c151319"
      ],
      "author": {
        "name": "TommyLike",
        "email": "tommylikehu@gmail.com",
        "time": "Thu May 04 17:56:22 2017 +0800"
      },
      "committer": {
        "name": "TommyLike",
        "email": "tommylikehu@gmail.com",
        "time": "Thu May 04 13:46:29 2017 +0000"
      },
      "message": "Copy \u0027resource_filters.json\u0027 file to cinder config folder\n\nCinder use \u0027resource_filters.json\u0027 to config allowed filters,\ncopy the new added json file when set config files.\n\nChange-Id: I397cb5859e2b3349af3cb07ee02b6463c6eccc35\nDepends-On: 27aeba0b5d3cf64286125937e8336ba1d3b26b16\n"
    },
    {
      "commit": "3336b4bed6455e9e77a7696b353d8798270c5b2e",
      "tree": "67b517693e0d3efa6fdf750f90726a1ca3521844",
      "parents": [
        "2686b36c32cf99e3fad5e55466d8c582b58f82cb"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue May 02 08:45:34 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed May 03 08:23:29 2017 -0400"
      },
      "message": "remove out of date heat references\n\nThis removes some remnant heat code and references now that heat is\nrunning in a plugin. Before merging this patch the heat team should\nverify they got everything they needed into their heat plugin, as\nthere were more parts left than I was expecting.\n\nChange-Id: I477e3a6e75591aa8ff836c28f7ef56aa1b5f8727\n"
    },
    {
      "commit": "27f66e9830727addd3d84b7a23eee907210540bb",
      "tree": "ef891a1ffcc1321235153d6f3675d3a3d12996d1",
      "parents": [
        "8b8441f3becbae2e704932569bff384dcc5c6713"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue May 02 09:08:17 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue May 02 09:24:45 2017 -0400"
      },
      "message": "Fix logging when under systemd\n\nBoth keystone and neutron didn\u0027t yet have systemd awareness for\nsetting up logging (i.e. drop the extra date / time stamps)\n\nChange-Id: Ib442c603c9afb679676976c37c2c6122201ae846\n"
    },
    {
      "commit": "803acffcf9254e328426ad67380a99f4f5b164ec",
      "tree": "446e385dd3423422407506a7b3d40bc709816ef8",
      "parents": [
        "7fe9e784c6128ad686ad47909c38e990b57c253c"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon May 01 10:52:38 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue May 02 06:20:22 2017 -0400"
      },
      "message": "Make ./clean.sh work in more situations\n\nWhen transitioning between different wsgi modes, or service modes, we\nshould really safely stop and cleanup things that are started in any\nservice mode, which makes it easier to ensure that we don\u0027t leave\nthings around from past runs.\n\nChange-Id: I33acbee39e1a2da2bfd79a5dd54b84a12a778be1\n"
    },
    {
      "commit": "7fe9e784c6128ad686ad47909c38e990b57c253c",
      "tree": "1191ef84005743a5c111ec469c9c8948fd2cef6a",
      "parents": [
        "02e01c1c18e0b5697741c726c629c4feb4e32c2b",
        "c13b8a1f33a3ea78388794896a3e7f3256c89ec9"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon May 01 23:05:46 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon May 01 23:05:46 2017 +0000"
      },
      "message": "Merge \"try to use unversioned keystone endpoints everywhere\""
    },
    {
      "commit": "02e01c1c18e0b5697741c726c629c4feb4e32c2b",
      "tree": "f10460055fcefad2a61974b8f9074b34128722c6",
      "parents": [
        "bc2af3c6b5aba63a117913e5ccfea4b5656220d0",
        "bb4431126b80be4805f1072442676797e6019576"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon May 01 23:05:39 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon May 01 23:05:39 2017 +0000"
      },
      "message": "Merge \"Try to remove /identity_admin\""
    },
    {
      "commit": "bc2af3c6b5aba63a117913e5ccfea4b5656220d0",
      "tree": "931edc450c2ca114ef2554e9f1d233611034730b",
      "parents": [
        "7f8df450dbdfe754eb3f7311de56327878a3d1c3",
        "38d4782c9f6b8558fea2c5268b9bf5de5070a0fe"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon May 01 20:38:00 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon May 01 20:38:00 2017 +0000"
      },
      "message": "Merge \"remove auth_uri from keystonemiddleware config\""
    },
    {
      "commit": "e44c5641121f17beb93aa6fe79c008647864f5fd",
      "tree": "a56b511597a04f1fc0d42e750b1d5f3f2a81c256",
      "parents": [
        "fa898f5174e3aff9c65366024c170ce3cdda306d",
        "befe0925e7cb3d3b34ee9e856c4bc822a499975f"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon May 01 19:18:14 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon May 01 19:18:14 2017 +0000"
      },
      "message": "Merge \"Differentiate between DEFAULT_IMAGE_NAME and filename\""
    },
    {
      "commit": "c13b8a1f33a3ea78388794896a3e7f3256c89ec9",
      "tree": "f3fc1552ba1c968eadb0e047152115a21d442fb1",
      "parents": [
        "bb4431126b80be4805f1072442676797e6019576"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 20 06:54:51 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon May 01 09:12:20 2017 -0400"
      },
      "message": "try to use unversioned keystone endpoints everywhere\n\nChange-Id: Iad2a3654d8ba181a7ad452d8aba872a8313d4ece\n"
    },
    {
      "commit": "bb4431126b80be4805f1072442676797e6019576",
      "tree": "df0cfee5b58ba9c5e36e523e743ae2ae394addb6",
      "parents": [
        "38d4782c9f6b8558fea2c5268b9bf5de5070a0fe"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Apr 19 16:22:42 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon May 01 09:12:18 2017 -0400"
      },
      "message": "Try to remove /identity_admin\n\nWe should be able to operate without the identity admin endpoint,\ngiven that in v3 it\u0027s all the same. This floats that out there to see\nif we can or not.\n\nChange-Id: Ic233f6b43dd1e3cfdadff0f18aba4ea78825a996\n"
    },
    {
      "commit": "38d4782c9f6b8558fea2c5268b9bf5de5070a0fe",
      "tree": "2b5221b6d4fbded1a8031834903078f80aefc4d1",
      "parents": [
        "fa898f5174e3aff9c65366024c170ce3cdda306d"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Apr 19 16:12:00 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon May 01 09:09:35 2017 -0400"
      },
      "message": "remove auth_uri from keystonemiddleware config\n\nauth_uri is not a keystonemiddleware option, and it\u0027s use in config\nfiles is confusing at best. Remove it for clarity.\n\nChange-Id: Ie3a9ab30d81809363444d5f3b41588b3889dc185\n"
    },
    {
      "commit": "fa898f5174e3aff9c65366024c170ce3cdda306d",
      "tree": "02fad265903e8adc68aab290eb1aee14a7551bd0",
      "parents": [
        "0c0232f508245817eb3de11ec17c6027f8d43709"
      ],
      "author": {
        "name": "Matthew Treinish",
        "email": "mtreinish@kortar.org",
        "time": "Tue Apr 25 01:30:10 2017 -0400"
      },
      "committer": {
        "name": "Matthew Treinish",
        "email": "mtreinish@kortar.org",
        "time": "Fri Apr 28 10:29:38 2017 -0400"
      },
      "message": "Add external lock dir to glance api config\n\nAs we move to enabling glance-api to use a wsgi script that might be run\nas multiple processes, there are a couple places where external\nsynchronization is necessary. To use this we need to set the lock_path\nconfig option from oslo.concurrency so external locks will work.\n\nChange-Id: I9a66a8636d12037ff9aa4fb73cc3f9b9343dd7e9\n"
    },
    {
      "commit": "faffde1f970c0786d0256e4d51725fbe2ceda063",
      "tree": "86cf143b35f4bf62cbec144a18e70c20e0f69d72",
      "parents": [
        "a292c5068ce8b285afc1ecfd473c91c8789922d3"
      ],
      "author": {
        "name": "Clark Boylan",
        "email": "clark.boylan@gmail.com",
        "time": "Thu Apr 27 09:54:27 2017 -0700"
      },
      "committer": {
        "name": "Clark Boylan",
        "email": "clark.boylan@gmail.com",
        "time": "Thu Apr 27 09:54:27 2017 -0700"
      },
      "message": "Use string cert CA defaults\n\nSwitch from sha1 to sha256 and from 1024 bits to 2048 bits. Do this\nbecause things don\u0027t like the old inseucre sha1+1024bits combo.\n\nChange-Id: Iae2958969aed0cd880844e19e8055c8bdc7d064d\n"
    },
    {
      "commit": "a292c5068ce8b285afc1ecfd473c91c8789922d3",
      "tree": "6181126eace30fab498e7ae7c8020c54c5990589",
      "parents": [
        "a8204752e32ff619aa4d94409d7427bee0c50864",
        "f6a2d2cd4edd06408690081d6207ff73b76f543a"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Apr 27 08:35:01 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Apr 27 08:35:01 2017 +0000"
      },
      "message": "Merge \"Always restart apache\""
    },
    {
      "commit": "befe0925e7cb3d3b34ee9e856c4bc822a499975f",
      "tree": "baa99c40c34227c7f338dbd66804e7ba54b781c8",
      "parents": [
        "f119121d21fa0446197b26378091677daac1606a"
      ],
      "author": {
        "name": "Matthew Treinish",
        "email": "mtreinish@kortar.org",
        "time": "Thu Feb 16 15:45:11 2017 -0500"
      },
      "committer": {
        "name": "Matthew Treinish",
        "email": "mtreinish@kortar.org",
        "time": "Wed Apr 26 19:24:12 2017 -0400"
      },
      "message": "Differentiate between DEFAULT_IMAGE_NAME and filename\n\nThe DEFAULT_IMAGE_NAME variable is used to reference the name of the\ndefault image in glance after it has been uploaded by devstack. It is\nused both inside and outside of devstack for that purpose. However, when\nconfiguring tempest there are some tests which also do image uploads and\nneed a filename for specifying which file they should upload into glance\nfor testing purposes. Previously we were just using DEFAULT_IMAGE_NAME\nfor both purposes, but this causes a conflict if the name of the image\nwe upload into glance does not have a file extension. So instead of\nconflating the things this commit differentiates between them and adds a\nnew DEFAULT_IMAGE_FILE_NAME variable to use for this purpose.\n\nChange-Id: Icf74badcf2093d8c75db538232b10b3ac7b86eb8\n"
    },
    {
      "commit": "a8204752e32ff619aa4d94409d7427bee0c50864",
      "tree": "d6487d008be1c82711258eb7e4d71cd43fc658dc",
      "parents": [
        "2eb322ab2e16b017ba71cfcc4d2ce84be8e5869c",
        "a1875b1ffcf29a7c1645d8e21402da331c102b6e"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Apr 26 21:22:08 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Apr 26 21:22:09 2017 +0000"
      },
      "message": "Merge \"neutron-legacy: Defer service_plugins configuration\""
    },
    {
      "commit": "92e6b1a0e83cbfeeb1d29bbe2b8c71e212f885fd",
      "tree": "a60f660d0a55907897e72815e60d4c252e9a607c",
      "parents": [
        "2eb322ab2e16b017ba71cfcc4d2ce84be8e5869c"
      ],
      "author": {
        "name": "Andreas Scheuring",
        "email": "andreas.scheuring@de.ibm.com",
        "time": "Wed Apr 26 13:40:42 2017 +0200"
      },
      "committer": {
        "name": "Andreas Scheuring",
        "email": "andreas.scheuring@de.ibm.com",
        "time": "Wed Apr 26 16:02:06 2017 +0000"
      },
      "message": "default gateway regex: use exact match for iface name\n\nIf the current interface has a default gateway configured is\ndetermined by the regex\n\n  default.+\u003cinterface-name\u003e\n\nIf for example \u0027enc1\u0027 is used, but also an interface \u0027enc1800\u0027 is\npresent, the regex will also match the \u0027enc1800\u0027 default gateway.\n\nThis patch fixes this by looking for \u003cinterface-name\u003e\u003cwhite-space\u003e.\nThis way \u0027enc1800\u0027 is not matched.\n\nChange-Id: Id1d58f5be6296c3a37aef788359ae8fe0fe11d8b\n"
    },
    {
      "commit": "f6a2d2cd4edd06408690081d6207ff73b76f543a",
      "tree": "787b8f9837aadc464607276dae87c573b6c24c76",
      "parents": [
        "2eb322ab2e16b017ba71cfcc4d2ce84be8e5869c"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Apr 26 10:50:29 2017 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Apr 26 11:09:59 2017 +1000"
      },
      "message": "Always restart apache\n\nAs described in [1], it seems that mod_wsgi is not \"graceful\" reload\nsafe.  Upon re-init, it can end up in a segfault loop.\n\nThe \"reload\" (not *restart*) after setting up uwsgi was added with\nI1d89be1f1b36f26eaf543b99bde6fdc5701474fe but not causing an issue\nuntil uwsgi was enabled.\n\nWe do not notice in the gate, because the TLS setup ends up doing a\nrestart after this setup.  In the period between the\nwrite_uwsgi_config and that restart, Apache is sitting in a segfault\nloop, but we never noticed because we don\u0027t try talking to it.  Other\njobs that don\u0027t do any further apache configuration have started\nfailing, however.\n\nLooking at the original comments around \"reload_apache_server\" I\u0027m not\nsure if it is still necessary.  [2] shows it is not used outside these\ntwo calls.\n\n[1] https://bugzilla.redhat.com/show_bug.cgi?id\u003d1445540\n[2] http://codesearch.openstack.org/?q\u003dreload_apache_server\u0026i\u003dnope\u0026files\u003d\u0026repos\u003d\n\nCloses-Bug: #1686210\nChange-Id: I5234bae0595efdcd30305a32bf9c121072a3625e\n"
    },
    {
      "commit": "2eb322ab2e16b017ba71cfcc4d2ce84be8e5869c",
      "tree": "123ec10d293182b45093603c2174a7e27ada4ebb",
      "parents": [
        "bc8db65da2e5db37841f60fee56ed4221072a71a",
        "a5b72b053efec9af8a57c59b35f96142e4f38433"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Apr 25 23:42:18 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Apr 25 23:42:18 2017 +0000"
      },
      "message": "Merge \"Set fixed-key key manager\""
    },
    {
      "commit": "bc8db65da2e5db37841f60fee56ed4221072a71a",
      "tree": "8184642f0ada0f64f49382324e2f3eb2392a7fe3",
      "parents": [
        "aa444d0d837214efce413426e2388b27f1c7f7c6",
        "26e431dbd76dff958f65871c852eb9d61d8d00d8"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Apr 25 17:47:35 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Apr 25 17:47:35 2017 +0000"
      },
      "message": "Merge \"Define a new function for notifications URL\""
    },
    {
      "commit": "26e431dbd76dff958f65871c852eb9d61d8d00d8",
      "tree": "570d10c42f286e4543320be00693df382528fe0b",
      "parents": [
        "42414520b75ed50c67cb94353534fb52fa386f48"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Thu Apr 13 14:27:35 2017 +0200"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Tue Apr 25 17:01:21 2017 +0200"
      },
      "message": "Define a new function for notifications URL\n\nThis defines a new function get_notification_url, which returns the URL\nof RabbitMQ when you want connect to it, and uses in\nceilometermiddleware. This fixes an issue when we try to use AMQP for\nRPC, but not for notifications.\n\nChange-Id: I14450b2440806a17a90e5ddefc243868fdbe4f2c\n"
    },
    {
      "commit": "aa444d0d837214efce413426e2388b27f1c7f7c6",
      "tree": "61b4ca98d97539bc6360ac111ad571d912f65f80",
      "parents": [
        "d8863f6c987edfe9154d0169f6d7550d141cdbf0",
        "aa26baacb8206967d61aef74686be94e3f8c90b8"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Apr 21 03:29:15 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Apr 21 03:29:15 2017 +0000"
      },
      "message": "Merge \"Create custom dir for uwsgi domain sockets\""
    },
    {
      "commit": "aa26baacb8206967d61aef74686be94e3f8c90b8",
      "tree": "c729e2ee885069c2ce2c8e90da8f5f894ca1950d",
      "parents": [
        "1b245cef7f078139f95260b080558422063f363f"
      ],
      "author": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Thu Apr 20 10:55:16 2017 +0530"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Fri Apr 21 10:42:27 2017 +1000"
      },
      "message": "Create custom dir for uwsgi domain sockets\n\nOn Centos, apache has a private view of /tmp and thus can\u0027t see this\nsocket, causing keystone to fail. This happened after\nI46294fb24e3c23fa19fcfd7d6c9ee8a932354702.\n\nMove it to /var/run.\n\nCloses-Bug: #1684360\nChange-Id: I47f091656802719c259752454ec88bf50760b967\n"
    },
    {
      "commit": "ef1e88ec09bda30cad19589629744b59e12b4093",
      "tree": "31467c6904d1b7e5ce2be062b9fb2ed5356e0cc8",
      "parents": [
        "11296708c0b1712ab75131eced4c9eb318aaa576"
      ],
      "author": {
        "name": "Andrea Frittoli",
        "email": "andrea.frittoli@gmail.com",
        "time": "Thu Apr 20 23:37:32 2017 +0100"
      },
      "committer": {
        "name": "Andrea Frittoli",
        "email": "andrea.frittoli@gmail.com",
        "time": "Thu Apr 20 23:37:32 2017 +0100"
      },
      "message": "Enable ssh validation by default\n\nThe -ssh job with ssh validation enabled has been quite stable\nfor a while now [0] so I think it\u0027s time to add ssh validation\nto the integration gate to prevent regressions from lurking in.\n\nDoing this in devstack ensures that the change only affects\nmaster as we didn\u0027t test ssh validation on on stable branches.\n\n[0] http://status.openstack.org/openstack-health/#/g/build_name/gate-tempest-dsvm-neutron-full-ssh?duration\u003dP3M\n\nChange-Id: I187e560911f5d5d482eb7959e5174068c4c9a801\n"
    },
    {
      "commit": "37c7843aad745fcde7584777e8a7ec896bb154e2",
      "tree": "bae0e3a847f3ca229f7a1bde4119e45132d6342b",
      "parents": [
        "e2fb00ebb721d8641485d1d5eb712a408b18b9d6"
      ],
      "author": {
        "name": "Paul Belanger",
        "email": "pabelanger@redhat.com",
        "time": "Wed Apr 19 13:19:21 2017 -0400"
      },
      "committer": {
        "name": "Paul Belanger",
        "email": "pabelanger@redhat.com",
        "time": "Wed Apr 19 13:20:47 2017 -0400"
      },
      "message": "Increase rsyslog buffer sizes.\n\nSwift proxy logs to syslog during the devstack-gate tempest runs. To\nbetter capture the swift logs increase the rsyslog buffer size to 6k\nbytes allowing for longer messages like tracebacks.\n\nThis was setup by openstack-infra previous during our diskimage\nbuilds.\n\n  I03e42964e14d9f930c07ed047851bdf775639c59\n\nChange-Id: Iaa232335865410600c93f47d4777ed4f1bce08e2\nSigned-off-by: Paul Belanger \u003cpabelanger@redhat.com\u003e\n"
    },
    {
      "commit": "e2fb00ebb721d8641485d1d5eb712a408b18b9d6",
      "tree": "8aa166eff647d7b42135bfd0eac9e93738afbaed",
      "parents": [
        "d4df865c0789fd7412772c48588356ef9f082244",
        "4af6eeac524f2ba316b0198a72ef8d916df9d56f"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Apr 19 15:01:07 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Apr 19 15:01:07 2017 +0000"
      },
      "message": "Merge \"cinder: wait for cinder-api for wsgi too\""
    },
    {
      "commit": "c5a2f1b1f35820e19007fb0608bc133b625486e0",
      "tree": "fe966fff73abd16b9422bb57061aae59056eeace",
      "parents": [
        "0cfc523ff74d223d2abe2ed95fd9b01d5d442a1b",
        "f9c2a68338aa566051bb301aa0f1b3dec44f5c90"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Apr 19 12:37:15 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Apr 19 12:37:15 2017 +0000"
      },
      "message": "Merge \"Add cursive to LIBS_FROM_GIT\""
    },
    {
      "commit": "0cfc523ff74d223d2abe2ed95fd9b01d5d442a1b",
      "tree": "6953cfbde65abdb30d8b24fc9d9ba637fc3d276e",
      "parents": [
        "f6c86749fd46e315cfbb6a874cbcd492f4ff242e",
        "968ebeee4146b306c026ca9b51d43ae6a993d1e2"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Apr 19 12:33:06 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Apr 19 12:33:06 2017 +0000"
      },
      "message": "Merge \"Add castellan to LIBS_FROM_GIT\""
    },
    {
      "commit": "041a5d9d830284dee52970b74385f12d86b1c047",
      "tree": "18568200cd0d3839afa7e8b0ea5a0650e78e2e62",
      "parents": [
        "4b9022ddd7459eb118ffff823d9194f267b42955",
        "f43ea4776668e259b3053e0c1d4b7d13685f424d"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Apr 19 12:30:19 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Apr 19 12:30:19 2017 +0000"
      },
      "message": "Merge \"Send useful auth_port and auth_prefix to swift\u0027s test.conf\""
    },
    {
      "commit": "4b9022ddd7459eb118ffff823d9194f267b42955",
      "tree": "757060641ce05e4bcf7d6b5bb665404850480551",
      "parents": [
        "cf2846ab6453e1f3549e1e0612bb72954abe72c8",
        "2fcdaac56e20f1002ae76c6ae1b30a093452d21b"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Apr 19 06:34:20 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Apr 19 06:34:20 2017 +0000"
      },
      "message": "Merge \"Make a2dissite fail softly if the site is not enabled\""
    },
    {
      "commit": "f43ea4776668e259b3053e0c1d4b7d13685f424d",
      "tree": "6ba4fb70b4f8c2923b974d87cdae541fe8ecad08",
      "parents": [
        "cf2846ab6453e1f3549e1e0612bb72954abe72c8"
      ],
      "author": {
        "name": "Tim Burke",
        "email": "tim.burke@gmail.com",
        "time": "Tue Apr 18 21:51:57 2017 -0700"
      },
      "committer": {
        "name": "Tim Burke",
        "email": "tim.burke@gmail.com",
        "time": "Tue Apr 18 21:58:10 2017 -0700"
      },
      "message": "Send useful auth_port and auth_prefix to swift\u0027s test.conf\n\nUntil we can test with a version of swiftclient that knows how to eat\nauth_uri, swift still needs a working gate.\n\nChange-Id: I09f9ad5c87b542df962a79898e06fbf1e968b1e3\nRelated-Change: I46294fb24e3c23fa19fcfd7d6c9ee8a932354702\nRelated-Change: Ie427f3b0b9eb834ff940fa5d52444a5a6cdcab15\n"
    },
    {
      "commit": "cf2846ab6453e1f3549e1e0612bb72954abe72c8",
      "tree": "23bd4a2976dc6b2aac89e4e4e97508ed8ac331e1",
      "parents": [
        "227661e88109fa85b352f758c28342efbf7195b9",
        "8a92b7f1deeb1b9e99b41b7d7b8e22ca9636b6af"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Apr 18 21:29:16 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Apr 18 21:29:16 2017 +0000"
      },
      "message": "Merge \"Add new configuration option for LM+grenade job\""
    },
    {
      "commit": "2fcdaac56e20f1002ae76c6ae1b30a093452d21b",
      "tree": "dbbf624f8c7870ec426bdb04e3266593b3413782",
      "parents": [
        "6ed53156b6198e69d59d1cf3a3497e96f5b7a870"
      ],
      "author": {
        "name": "Chris Dent",
        "email": "cdent@anticdent.org",
        "time": "Tue Apr 18 16:54:12 2017 +0100"
      },
      "committer": {
        "name": "Chris Dent",
        "email": "cdent@anticdent.org",
        "time": "Tue Apr 18 16:54:12 2017 +0100"
      },
      "message": "Make a2dissite fail softly if the site is not enabled\n\na2dissite will return a non-zero error code if the site that is being\ndisabled is not currently enabled (that is, if the conf file for it does\nnot exist). This can happen during development if you\u0027ve been messing\nwith files by hand. Rather than exploding out of a ./stack.sh, accept\nthe missing file as meaning \"it\u0027s disabled\" and carry one. The rpm\nversion of disable, which does not use a2dissite, does this already.\n\nChange-Id: Ie5dfd42efdff4bdba5ffaa765af000dd8e1d596e\n"
    },
    {
      "commit": "e0be9e3a2e527754a72d6282883370c09159fac1",
      "tree": "5caf3813d67cffa87b1d85a3dd7b21fcdc7a728d",
      "parents": [
        "6ed53156b6198e69d59d1cf3a3497e96f5b7a870"
      ],
      "author": {
        "name": "Chris Dent",
        "email": "cdent@anticdent.org",
        "time": "Tue Apr 18 16:52:25 2017 +0100"
      },
      "committer": {
        "name": "Chris Dent",
        "email": "cdent@anticdent.org",
        "time": "Tue Apr 18 16:52:25 2017 +0100"
      },
      "message": "Remove a TODO that no longer applies\n\nThe removed TODO was talking about USE_SYSTEMD, not WSGI_MODE.\n\nWSGI_MODE makes sense, so the TODO has been done.\n\nChange-Id: Ib574ef123ea4c82d4d88012c990cd1ad660d7879\n"
    },
    {
      "commit": "6ed53156b6198e69d59d1cf3a3497e96f5b7a870",
      "tree": "07c09ef525734b2b3c3fa7fc1e3b8e5bd0c6869a",
      "parents": [
        "64ffff9b7d79b9e75616cf43f9f7b31c89026f30"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 13 13:33:16 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Apr 17 16:27:35 2017 -0400"
      },
      "message": "Convert keystone to use uwsgi with the proxy\n\nThis makes keystone use the proxy uwsgi module when running in uwsgi\nmode. It also introduces a new stackrc variable which is WSGI_MODE\nthat we can use to control the conditionals in services that current\nwork with mod_wsgi.\n\nAlso update retry timeouts on proxy pass so that workers don\u0027t disable\ntheir connections during polling for initial activity.\n\nChange-Id: I46294fb24e3c23fa19fcfd7d6c9ee8a932354702\n"
    },
    {
      "commit": "64ffff9b7d79b9e75616cf43f9f7b31c89026f30",
      "tree": "405ec06d50dc07990ea5d94061ade122fed341d4",
      "parents": [
        "604e598e2abca37c84d6cd3c84ad8fa5295fb327"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 13 13:36:42 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Apr 17 14:51:44 2017 -0400"
      },
      "message": "Convert placement to new uwsgi mode\n\nThis converts the placement API to use the new WSGI_MODE variable\n(which is not introduced until the next changeset). We do this so that\nplacement and keystone patches can be reviewed independently, but\nthere are some hidden coupling of mod_wsgi setup which happens only in\nkeystone, so if we do keystone first, it breaks placement.\n\nChange-Id: Id5b2c67701bcc7b12c8e3764c7199d10f85df80f\n"
    },
    {
      "commit": "604e598e2abca37c84d6cd3c84ad8fa5295fb327",
      "tree": "b13be5376d2b538fdbde1c031624d0b23552af20",
      "parents": [
        "a1446b960fa7c21bc1e7141921d6fc95c6e212d2"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 13 13:28:12 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Apr 17 14:51:44 2017 -0400"
      },
      "message": "Install and enable apache uwsgi proxy\n\nThe uwsgi proxy version that comes with Ubuntu xenial is too old, so\nwe have to build it from source. This is a temporary solution until\nthe next LTS.\n\nThis lays the ground work for using it in keystone.\n\nChange-Id: I00fb1759e6988c7df0ce0f3df5ff1ce9fd7cd381\n"
    },
    {
      "commit": "a1446b960fa7c21bc1e7141921d6fc95c6e212d2",
      "tree": "99228554cfa7342e82deae920762cbc2ea5a7f36",
      "parents": [
        "f3b2f4c85307b14f115a020f5eaf6c92026b55b4"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Apr 17 14:31:21 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Apr 17 14:31:21 2017 -0400"
      },
      "message": "always retry proxy errors\n\nWhen an apache worker gets a proxy error, it will not retry talking to\nthe backend server until the retry timeout expires. We bring up the\nproxy server *before* the backend server, and poll it. If we are\nrunning a small number of workers, there is a likely chance that we\u0027re\ngoing to hit one that errored before the backend was up, thus failing\nfor now real reason.\n\nSet this to 0 instead to mean always retry failed connections.\n\nChange-Id: I9e584f087bd375f71ddf0c70f83205c425094a17\nRef: https://httpd.apache.org/docs/2.4/mod/mod_proxy.html#proxypass\n"
    },
    {
      "commit": "f3b2f4c85307b14f115a020f5eaf6c92026b55b4",
      "tree": "1f9180b6b7271a9b232bf08145ad37308fbee219",
      "parents": [
        "2f8c88e0532b6b712cc386a9c15d833d3629b19a"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 13 10:11:48 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Apr 17 07:27:32 2017 -0400"
      },
      "message": "Remove USE_SSL support\n\ntls-proxy is the way we\u0027re now doing a standard install using https\nbetween services. There is a lot more work to make services directly\nhandle https, and having python daemons do that directly is a bit of\nan anti pattern. Nothing currently tests this in project-config from\nmy recent grepping, so in the interest of long term maintenance,\ndelete it all.\n\nChange-Id: I910df4ceab6f24f3d9c484e0433c93b06f17d6e1\n"
    },
    {
      "commit": "2f8c88e0532b6b712cc386a9c15d833d3629b19a",
      "tree": "157ac93c5e2b9f35f1adcd6f145467032f60c4bd",
      "parents": [
        "2b85cf0f06b099f9a771e9fbdbdef173c9d04784"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 13 09:08:39 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Apr 14 15:41:02 2017 -0400"
      },
      "message": "Factor out code to write uwsgi config files\n\nInstead of this code all existing in keystone inline, factor out into\na dedicated set of functions, and make keystone use this. This drops\nuwsgi supporting https directly, but that\u0027s not going to be a\nsupported model going forward once we get to proxy only anyway.\n\nChange-Id: I1d89be1f1b36f26eaf543b99bde6fdc5701474fe\n"
    },
    {
      "commit": "2b85cf0f06b099f9a771e9fbdbdef173c9d04784",
      "tree": "fb9595dac852da2c06a70d7e00ac9c5505a74783",
      "parents": [
        "4da0fa8c1387e3888de1f4174b478e82e7cc7a67"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 13 09:02:14 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Apr 14 15:41:02 2017 -0400"
      },
      "message": "Just use normal restart for apache\n\nWe\u0027re now in a systemd world where systemd is managing the restart\neffectively, there is no reason to be tricksy with apache now that\nwe\u0027re not working around weird upstartd issues.\n\nChange-Id: Ifadfd504eb10a90db5177ea9180b9cd8331a2948\n"
    },
    {
      "commit": "f9c2a68338aa566051bb301aa0f1b3dec44f5c90",
      "tree": "1a4185d2d12f72d932af41ce528b340900542c00",
      "parents": [
        "94047f45cd336239b42a9f3b58546768240400d4"
      ],
      "author": {
        "name": "Brianna Poulos",
        "email": "Brianna.Poulos@jhuapl.edu",
        "time": "Fri Apr 14 13:00:19 2017 -0400"
      },
      "committer": {
        "name": "Brianna Poulos",
        "email": "Brianna.Poulos@jhuapl.edu",
        "time": "Fri Apr 14 14:00:31 2017 -0400"
      },
      "message": "Add cursive to LIBS_FROM_GIT\n\nAllow cursive to be installed from git instead of pip.\n\nThe barbican-tempest-plugin, which uses cursive indirectly\nthrough nova and glance, would benefit from the ability to\nuse cursive from git instead of pip.\n\nChange-Id: Icae7d310f1ee392d080e7c8e421a26d7c0ef4727\n"
    },
    {
      "commit": "968ebeee4146b306c026ca9b51d43ae6a993d1e2",
      "tree": "1c0a08bc767c56b89237a3fa16e10081c2389ab9",
      "parents": [
        "94047f45cd336239b42a9f3b58546768240400d4"
      ],
      "author": {
        "name": "Brianna Poulos",
        "email": "Brianna.Poulos@jhuapl.edu",
        "time": "Fri Apr 14 11:33:56 2017 -0400"
      },
      "committer": {
        "name": "Brianna Poulos",
        "email": "Brianna.Poulos@jhuapl.edu",
        "time": "Fri Apr 14 12:17:46 2017 -0400"
      },
      "message": "Add castellan to LIBS_FROM_GIT\n\nAllow castellan to be installed from git instead of pip.\n\nCastellan has recently been moved under the oslo framework,\nand the barbican-tempest-plugin tests which use castellan\nwould benefit from the ability to usd castellan from git\ninstead of pip.\n\nChange-Id: I96edca90c61aec84637b7b1ce842eff04c521923\n"
    },
    {
      "commit": "4222ee35f64d1950ecfc146b51738b74c316e758",
      "tree": "397b90006f13d190f32718a25d8907c3fd1fc4c1",
      "parents": [
        "af5e3d668f7ef87f8f9ccd78a979d36595c060a5"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 13 20:33:42 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 13 20:33:42 2017 -0400"
      },
      "message": "Make auth_uri available in the swift test setup\n\nThe swift functional tests use a config which requires keystone ports,\nwe\u0027re about to make those go away. This exposes the actual auth_uri to\nswift for consumption.\n\nChange-Id: I5868dfdb8e5f0972ba04e359d212b04351502436\n"
    },
    {
      "commit": "8f8b274e60ac94bd6b2486ea075217411550c257",
      "tree": "ff07747a9d8a111904167f83902693e5907db212",
      "parents": [
        "3d4c6d2dd16280de150b462ae51ccf85a932c7c1"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 13 09:34:12 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 13 09:35:21 2017 -0400"
      },
      "message": "Clean up apache 2.2 cruft from Ubuntu 12.04\n\nAll the apache 2.2 handling is obsolete now, as we don\u0027t support those\ndistros, so get rid of it.\n\nChange-Id: I9c0f78af2b32afabb2c4264aebc92089c4694f91\n"
    },
    {
      "commit": "e8b84dbc59c6b554711cba56ce86680fc3597587",
      "tree": "e2b1b7af751e0e18fa4d0409cb0a4a06266b8bed",
      "parents": [
        "d061f9e2f1b1f70090a97403398d86c95e3f681f",
        "583c52066da6738d12201bf3fcbb02b6c6690cfc"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Apr 11 13:23:20 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Apr 11 13:23:20 2017 +0000"
      },
      "message": "Merge \"rebuild the tempest tox env during install\""
    },
    {
      "commit": "8c540fcbb6be194a44975bc355ce49db9a1882c5",
      "tree": "6e7b53d409969c7d7843518af4a71f5e01327b7f",
      "parents": [
        "602e2e93b69b048fb48a043258bd842659a98066",
        "9fecc2ad04a9414bfb3127d80ee02fed1d36a30d"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Apr 10 02:26:54 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Apr 10 02:26:54 2017 +0000"
      },
      "message": "Merge \"Add OpenStackSDK as a lib install\""
    },
    {
      "commit": "602e2e93b69b048fb48a043258bd842659a98066",
      "tree": "e7ebe984f3c907a186b32e997bfd5f7d1e777d18",
      "parents": [
        "03fbc0d71bf4ee85820999ef1324dc319ef9d926",
        "9c5ffd8d132866bd6120696e138e5b7b42dc3f23"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Apr 07 22:37:24 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Apr 07 22:37:24 2017 +0000"
      },
      "message": "Merge \"Handle uwsgi on systemd properly\""
    },
    {
      "commit": "9fecc2ad04a9414bfb3127d80ee02fed1d36a30d",
      "tree": "27c13ed3ed1e86aa72fee8a3985f5d93e53dd305",
      "parents": [
        "03fbc0d71bf4ee85820999ef1324dc319ef9d926"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Fri Apr 07 12:28:40 2017 -0500"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Fri Apr 07 15:32:09 2017 -0500"
      },
      "message": "Add OpenStackSDK as a lib install\n\nThis is required to install python-openstacksdk from source for testing\nother projects against master.\n\nChange-Id: Iee7b043ac7d381dadf89d26098f69e935ed81d6b\n"
    },
    {
      "commit": "03fbc0d71bf4ee85820999ef1324dc319ef9d926",
      "tree": "f200b41d62749c0819d9b364bd8cde0af8e94a28",
      "parents": [
        "ec60d050f5528ccad53eb22a08ff0e96cea10132",
        "682e0abe1a58edcdde40a92df1f060dc8fa758c8"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Apr 07 00:37:36 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Apr 07 00:37:36 2017 +0000"
      },
      "message": "Merge \"Do not use libvirt-bin package anymore\""
    },
    {
      "commit": "ec60d050f5528ccad53eb22a08ff0e96cea10132",
      "tree": "98384196e1b60d7b79db66be7ac0df2e031dc8da",
      "parents": [
        "18c505ad826670cb8b262d5ed9dfed87ea472059",
        "1298f1bacd039347c1d2a58ddea6efc2e0db25e1"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Apr 07 00:33:30 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Apr 07 00:33:30 2017 +0000"
      },
      "message": "Merge \"Remove the EBTABLES_RACE_FIX added for Trusty\""
    },
    {
      "commit": "18c505ad826670cb8b262d5ed9dfed87ea472059",
      "tree": "bb1f7300f83631891b16035f2ec54141de64e938",
      "parents": [
        "9b6080d8599faf2e45e1051bd9bc7919734b2668",
        "980d65f58672388538e588cdd52c9169feec4a91"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Apr 07 00:33:22 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Apr 07 00:33:22 2017 +0000"
      },
      "message": "Merge \"Swift: Optionally start only the necessary services\""
    },
    {
      "commit": "9b6080d8599faf2e45e1051bd9bc7919734b2668",
      "tree": "e3b4f3c7653cafc152b25f5fd1916324a7cdb476",
      "parents": [
        "eb235814d3436953d548bb83c65851f7cec6d1e7",
        "9e64bad03ab11918f6b08f7926685bfb9d7e4596"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Apr 06 23:30:03 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Apr 06 23:30:03 2017 +0000"
      },
      "message": "Merge \"Use br-int when XenServer is hypervisor\""
    },
    {
      "commit": "4df8d6d4258c9941e17109d2f722092d3a20f3b0",
      "tree": "9cf56239144160acb991d1a6de5d7a0ce4e0ddfd",
      "parents": [
        "88d089b86e01f1930e056ca5f64de598274486c0",
        "c779b00840b79ce9c0b3a3c80ade5267e6fcb5f8"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Apr 05 11:54:39 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Apr 05 11:54:39 2017 +0000"
      },
      "message": "Merge \"Remove XenServer specific ovs agent config\""
    },
    {
      "commit": "9c5ffd8d132866bd6120696e138e5b7b42dc3f23",
      "tree": "7cb1207cdf582a8ecb265a708335120c93405c82",
      "parents": [
        "def07b21f86ee70cae223785f0195c91de1f2b64"
      ],
      "author": {
        "name": "Matthew Treinish",
        "email": "mtreinish@kortar.org",
        "time": "Wed Mar 29 16:47:57 2017 -0400"
      },
      "committer": {
        "name": "Matthew Treinish",
        "email": "mtreinish@kortar.org",
        "time": "Mon Apr 03 12:38:29 2017 -0400"
      },
      "message": "Handle uwsgi on systemd properly\n\nuwsgi is a different service type under systemd and shouldn\u0027t be run as\na standard oneshot type. The uwsgi docs outline a good pattern for\nwriting systemd unit files:\n\nhttp://uwsgi-docs.readthedocs.io/en/latest/Systemd.html\n\nThis commit takes those suggestions and creates a separate path for\nwriting uwsgi unit files.\n\nChange-Id: I9b541b86781afdded311dba058cedd783e1a0dfa\n"
    },
    {
      "commit": "921e31803587941200a2e9895aceaefb2c8a8e3e",
      "tree": "b77c56f35d6669df608ddc14765b13d8169d9c87",
      "parents": [
        "def07b21f86ee70cae223785f0195c91de1f2b64",
        "bfcc760b9650b09af073e1c6beb489069e5eec0d"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Sun Apr 02 09:07:54 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sun Apr 02 09:07:55 2017 +0000"
      },
      "message": "Merge \"Enable libvirt coredumps\""
    },
    {
      "commit": "bfcc760b9650b09af073e1c6beb489069e5eec0d",
      "tree": "86539905b6202383c9dfdeb01cbc2fb3ce6490f9",
      "parents": [
        "6fbd969c85adb53b82457a3fcf879c2b268103bf"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Mar 29 11:52:06 2017 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Thu Mar 30 17:29:29 2017 +1100"
      },
      "message": "Enable libvirt coredumps\n\nThis adds a flag and basic config for enabling coredumps for libvirt.\n\nPartial-Bug: 1643911\nCo-Authored-By: Matthew Booth \u003cmbooth@redhat.com\u003e\n\nChange-Id: If7cd54e804a5a389a0d82a325b58f5b41b8ef0db\n"
    },
    {
      "commit": "370c525061df5cdcdc714fe1064967230604b46e",
      "tree": "fac088d804d9cf002778320c7db98ffafcc313fa",
      "parents": [
        "6fbd969c85adb53b82457a3fcf879c2b268103bf",
        "213c9a151f907988b283e4223404d0a09a5d4aa3"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Mar 29 17:45:08 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Mar 29 17:45:08 2017 +0000"
      },
      "message": "Merge \"Remove installation of keystone policy file\""
    },
    {
      "commit": "980d65f58672388538e588cdd52c9169feec4a91",
      "tree": "423c032aa87d031642765946a4a6180b61d81dc5",
      "parents": [
        "6fbd969c85adb53b82457a3fcf879c2b268103bf"
      ],
      "author": {
        "name": "Jordan Pittier",
        "email": "jordan.pittier@scality.com",
        "time": "Mon Mar 27 14:29:58 2017 +0200"
      },
      "committer": {
        "name": "Jordan Pittier",
        "email": "jordan.pittier@scality.com",
        "time": "Wed Mar 29 13:26:52 2017 +0200"
      },
      "message": "Swift: Optionally start only the necessary services\n\nCurrently Devstack starts all Swift services, including those\nin charge of \"consistency convergence\" (remember Swift is eventually\nconsistent), data scrubbing, hard-deletion (*-reaper services)\ncleanup.\n\nBut when running with Replication Factor 1 some of those services\nare not needed at all. Besides, the fonctionnalities provided by\nsome of these services are not tested at all (neither in Tempest\nnor in Swift functional tests).\n\nThus, in light of saving some Mo of RAM, this patch introduces a config\nflag to start only a minimal set of Swift services, just what\u0027s required\nto make all of our current tests pass.\n\nThe default value for this new config flag is set to start all services,\nthat is to maintain Devstack\u0027s current behavior.\n\nFor sake of completeness, here is the list of services that are not\ngoing to be started is the config flag is toggled, and the associated RSS\naccording to our peakmem_tracker\n\n40004  swift-object-replicator /etc/swift/object-server/1.conf\n34320  swift-container-replicator /etc/swift/container-server/1.conf\n33584  swift-object-auditor /etc/swift/object-server/1.conf\n33328  swift-object-reconstructor /etc/swift/object-server/1.conf\n31936  swift-object-updater /etc/swift/object-server/1.conf\n31492  swift-account-reaper /etc/swift/account-server/1.conf\n31076  swift-account-replicator /etc/swift/account-server/1.conf\n29540  swift-container-updater /etc/swift/container-server/1.conf\n29220  swift-account-auditor /etc/swift/account-server/1.conf\n29036  swift-container-auditor /etc/swift/container-server/1.conf\n\nSo we are looking at saving at most ~350Mo of RAM (could be less\nbecause RSS doesn\u0027t account for shared memory).\n\nA follow-up patch will soon be proposed in devstack-gate to not run\nthose additional services in our Gate jobs.\n\nChange-Id: I8a0d03ac0296a74e38efd185beb8513866eaf0c4\n"
    },
    {
      "commit": "6fbd969c85adb53b82457a3fcf879c2b268103bf",
      "tree": "87d0d5a985dbd409a8ba36cb71332de6b1ea3362",
      "parents": [
        "d7bc9486aa548d97d14a8af05f98954bb2b774d5",
        "d5919d08ba131ac2bde27251c8b4e77bf428e876"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Mar 28 19:41:53 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Mar 28 19:41:53 2017 +0000"
      },
      "message": "Merge \"Restrict enabling the manage_volume volume feature\""
    },
    {
      "commit": "d7bc9486aa548d97d14a8af05f98954bb2b774d5",
      "tree": "11eb44a7020dd5ee61fe6420d56f1717c2fa27b8",
      "parents": [
        "aef56b516db73e5ae08fa487367b0794fced760f",
        "5edae54855b6b9af4283cef07e0b0d1a0f90cd3e"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Mar 28 18:41:38 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Mar 28 18:41:38 2017 +0000"
      },
      "message": "Merge \"initial work to enable systemd service running\""
    },
    {
      "commit": "cd69b52c7f80d283a5e31281e4099074f5605fdd",
      "tree": "023b988eab7e98e36f9d18dd220a894f2363013a",
      "parents": [
        "4a857e85f4e5f5fed732924ec20b31512759c7fd",
        "f511c368f8e1e6690b7be4da926cad97d07ee85f"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Mar 28 16:15:58 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Mar 28 16:15:58 2017 +0000"
      },
      "message": "Merge \"lib/neutron: allow to add more ml2 extension drivers\""
    }
  ],
  "next": "213c9a151f907988b283e4223404d0a09a5d4aa3"
}
