)]}'
{
  "log": [
    {
      "commit": "9a0d1f90b8f0b412ebe3fa8a154f1c9222b2dde8",
      "tree": "dd566e539d0c54bea451b8c2719cd59cd6e38882",
      "parents": [
        "18ce57e55c736542a0f328c6cdf0f521faf5e48a"
      ],
      "author": {
        "name": "ricolin",
        "email": "rico.l@inwinstack.com",
        "time": "Wed Jun 15 01:13:45 2016 +0800"
      },
      "committer": {
        "name": "ricolin",
        "email": "rico.l@inwinstack.com",
        "time": "Wed Jun 15 01:13:45 2016 +0800"
      },
      "message": "Remove deprecated auth_plugin config\n\nConfig auth_plugin in trustee group is deprecated.\nChange to use auth_type in trustee group instead.\nCloses-Bug: 1592482\n\nChange-Id: Ib90d9c0299887201b37d26254693dc6b007a41dc\n"
    },
    {
      "commit": "4f55c2d5c384f576e45f4310595e262039fd8175",
      "tree": "06be5c649225dbd2a07d1d2673de114918f45937",
      "parents": [
        "a5c1a930962282f105b5057c327b48a4b30a4d12"
      ],
      "author": {
        "name": "Einst Crazy",
        "email": "yu.changcai@99cloud.net",
        "time": "Wed May 04 08:14:01 2016 +0000"
      },
      "committer": {
        "name": "Einst Crazy",
        "email": "yu.changcai@99cloud.net",
        "time": "Mon May 09 01:43:32 2016 +0000"
      },
      "message": "Set config file to db sync and other manage operation\n\nCurrently, the db sync operation does not specify the config dir or\nconfig file.\nIf there is a config file in the home path, it will use this one,\nbut not the right one devstack write.\n\nSet config file to these operations.\n\nChange-Id: Id1fbc3d85280c19596f5ebd301c46bcf018fa2f6\nCloses-Bug: #1578098\n"
    },
    {
      "commit": "ae4578bed986ebaaf3e09e1ecc9d4d7ae9f022ab",
      "tree": "5923cce20d0850f32dec2cfaade146da72bad0e6",
      "parents": [
        "7d1ec430046256ac3f536f4920a43936e28ef0c4"
      ],
      "author": {
        "name": "Matt Riedemann",
        "email": "mriedem@us.ibm.com",
        "time": "Sat Apr 23 01:45:40 2016 +0000"
      },
      "committer": {
        "name": "Matt Riedemann",
        "email": "mriedem@us.ibm.com",
        "time": "Sat Apr 23 01:45:40 2016 +0000"
      },
      "message": "Revert \"Don\u0027t check for existing endpoints\"\n\nThis reverts commit 7d1ec430046256ac3f536f4920a43936e28ef0c4.\n\nThis broke the sahara and layer4 dsvm jobs. The layer4 job\nis voting on tempest changes so tempest is also broken.\n\nChange-Id: Ide69f10cd85bf7ff0d86bc8cba56dedd26850362\nPartial-Bug: #1573868\n"
    },
    {
      "commit": "7d1ec430046256ac3f536f4920a43936e28ef0c4",
      "tree": "bebc4c9bcc03a253c62b5958dbacb8a94035b836",
      "parents": [
        "54f331969f86d364fd62235e54a4419bdbbd8f00"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Apr 22 09:19:10 2016 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Apr 22 10:44:10 2016 -0400"
      },
      "message": "Don\u0027t check for existing endpoints\n\nWe really should only have code that create endpoints once, making all\nosc calls get_or_set adds 3 seconds per call for no really good\nreason.\n\nThis also stops creating the internal endpoints in the service\ncatalog. It\u0027s a pattern that we\u0027re trying not to propogate, so lets\nnot have it in devstack any more.\n\nChange-Id: Ia8cefe43753900d62117beae330db46deb6a9fc9\n"
    },
    {
      "commit": "cbdc5d9e48d9d91fcc7a667839d592ff85ed1f09",
      "tree": "cd3ae381b9ed95d580cfed2535df1e1a461c8c7a",
      "parents": [
        "ab0a1b881225f83cfe6454091881d5ffd6626a65"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Apr 04 09:10:44 2016 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Apr 04 09:10:44 2016 -0400"
      },
      "message": "switch over heat to using $(project_id) in service catalog\n\nThis removes one more place where we reference tenant_id\n\nChange-Id: I721269c3397bd5e5d9cea5faf3fc691f296a517b\n"
    },
    {
      "commit": "3bf69e835a043e7deecbbe3568426042961116a3",
      "tree": "d18f9a4502167bd698132677a172327c8d2a3d90",
      "parents": [
        "428f86e84f4f1d5f7038e61f3cb967ee3a975aa9"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Mar 15 12:21:34 2016 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Mar 15 13:32:23 2016 +1100"
      },
      "message": "Remove EC2 API from devstack\n\nThis all started with an investigation into Fedora\u0027s use of ecua2ools\npackage.  This package is a bit of a nightmare because it pulls in a\nlot of other system-python packages.\n\nFor Ubuntu, this package was removed in\nI47b7e787771683c2fc4404e586f11c1a19aac15c.  However, it is not\nactually a \"pure python\" package as described in that change, in that\nit is not installable from pypi.  I can\u0027t see how you could actually\nrun exercises/euca.sh on Ubuntu unless you installed euca2ools by hand\n-- ergo I suggest it is totally unused, because nobody seems to have\nreported problems.\n\nIn the mean time, ec2 api has moved to a plugin [1] anyway where the\nrecommendation in their README is to use the aws cli from amazon.\n\nThus remove all the parts related to EC2 and ecua2ools from base\ndevstack.\n\n[1] https://git.openstack.org/cgit/openstack/ec2-api\n\nChange-Id: I8a07320b59ea6cd7d1fe8bce61af84b5a28fb39e\n"
    },
    {
      "commit": "728730aee3c03cfbe08678f95c851c60d523e52c",
      "tree": "b83ac8320e972c8513550eb790a212d5545a7451",
      "parents": [
        "fe0c2ba7ade6e2e4037a646a90eec7dfde705a08"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Fri Feb 12 08:31:23 2016 +0100"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Fri Feb 12 08:32:36 2016 +0100"
      },
      "message": "Enable heat caching\n\nEnable use of memory cache by default for Heat. It will provide a boost\nfor various test builds and will help test this configuration.\n\nChange-Id: I06183138d54c1cb971a58a158a15f3f5b25cba4d\n"
    },
    {
      "commit": "985e958dda3e843442f76199caf63fa8b93680cc",
      "tree": "fd99f845efb549c1c5812767d166e2896a3358f6",
      "parents": [
        "1a9e294ff398e5f3c3a0a62621b8872273aeb0f9"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Feb 10 07:25:24 2016 -0500"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Feb 10 15:39:31 2016 -0500"
      },
      "message": "remove keystone templated catalog\n\nThis is just another code path for little benefit in devstack which is\ngoing to rot out. We should be opinionated here and only support the\ndynamic catalog.\n\nChange-Id: I4e5c7e86aefe72fc21c77d423033e9b169318fec\n"
    },
    {
      "commit": "74b91c3eaf150eb40a5d5ab2df1533ae192ee26d",
      "tree": "4169c0c561eeb6c6b3120bbe97a8c6a794995ad9",
      "parents": [
        "b162a1d58cdecfb32847b59bd341e06c26efb1ed"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Feb 01 14:58:20 2016 +0000"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Feb 01 14:58:20 2016 +0000"
      },
      "message": "Revert \"Move default Keystone API version to v3\"\n\nIt seems like the fallout from this was not well sorted.\nA lot of things aren\u0027t working, and there is still vestigial\nv2 bits left behind.\n\nThis should have come with a much greater warning and some\nspot checking of additional services working with this.\n\nThis reverts commit b162a1d58cdecfb32847b59bd341e06c26efb1ed.\n\nChange-Id: Ia792b23119c00089542ba08879dca1c29dc80945\n"
    },
    {
      "commit": "b162a1d58cdecfb32847b59bd341e06c26efb1ed",
      "tree": "b4450cdf2937e5e67ec9cae41f44b8623a496eea",
      "parents": [
        "ffb96b85d306d715762eb0effb1ee66d405833b2"
      ],
      "author": {
        "name": "Paulo Ewerton",
        "email": "pauloewerton@lsd.ufcg.edu.br",
        "time": "Fri Jan 22 19:13:31 2016 +0000"
      },
      "committer": {
        "name": "Paulo Ewerton",
        "email": "pauloewerton@lsd.ufcg.edu.br",
        "time": "Tue Jan 26 14:27:02 2016 +0000"
      },
      "message": "Move default Keystone API version to v3\n\nThis patch sets Keystone v3 as default in services\nconfiguration files and in the openrc and stackrc scripts.\n\nChange-Id: I24546f02067ea23d088d383b85e3a78d7b43f165\nPartially-Implements: bp keystonev3\n"
    },
    {
      "commit": "e60d52c392098192b6c666cb345c50a9a4842d1b",
      "tree": "5b0a6f4e2946478743c323a261b935e5e7ff7516",
      "parents": [
        "ff2318e834e2abfa40b902caf442df3862f46b9a",
        "44ee7e307b49c5ee9e30ba380e36576189efdc34"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Jan 05 09:13:51 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jan 05 09:13:51 2016 +0000"
      },
      "message": "Merge \"Fix heat config when using keystone v3\""
    },
    {
      "commit": "227f20ceb2667944a20adb54e48e47f51ede79c1",
      "tree": "1cc80ca6291dac797aed94a55d3e6456d30cd874",
      "parents": [
        "0d81785bbe1228e477e395595d37bef9775f1cab",
        "4ce859ab2b99e68ce937c9c9df83d9270c8ef9fb"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jan 04 13:59:56 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jan 04 13:59:56 2016 +0000"
      },
      "message": "Merge \"update create_heat_accounts, don\u0027t use os_url and os_token\""
    },
    {
      "commit": "44ee7e307b49c5ee9e30ba380e36576189efdc34",
      "tree": "393a296d23aaab5ab43e5a2c0e5fad2e6d7f45b2",
      "parents": [
        "b5f0f3e98fcef64f394622b2476737fef4aa45ec"
      ],
      "author": {
        "name": "liyingjun",
        "email": "liyingjun1988@gmail.com",
        "time": "Fri Dec 25 10:32:14 2015 +0800"
      },
      "committer": {
        "name": "liyingjun",
        "email": "liyingjun1988@gmail.com",
        "time": "Fri Dec 25 10:32:14 2015 +0800"
      },
      "message": "Fix heat config when using keystone v3\n\nUse configure_auth_token_middleware to generate keystone_authtoken\nsection configration.\n\nChange-Id: I87e0e60afb958683add2aff2552d26cbf8c9e374\nCloses-bug: #1300246\n"
    },
    {
      "commit": "4ce859ab2b99e68ce937c9c9df83d9270c8ef9fb",
      "tree": "762f2168ff84b832c5e2d197ca766a5cbe3eefc5",
      "parents": [
        "1adb2e1c119c0862d2661f2492a9352257954c4a"
      ],
      "author": {
        "name": "Steve Martinelli",
        "email": "stevemar@ca.ibm.com",
        "time": "Sun Dec 20 01:27:30 2015 -0500"
      },
      "committer": {
        "name": "Steve Martinelli",
        "email": "stevemar@ca.ibm.com",
        "time": "Sun Dec 20 01:27:30 2015 -0500"
      },
      "message": "update create_heat_accounts, don\u0027t use os_url and os_token\n\nCurrently, the function create_heat_accounts uses the OS_URL and\nOS_TOKEN environment variables. This is a bad choice for several\nreasons, most importantly we are sending the \"ADMIN_TOKEN\" value\nas a header. There is also no reason to not use a standard admin\nuser to create these resources.\n\nChange-Id: I70b41d69917b9e53ad09c2c61e022ef09a50acfd\n"
    },
    {
      "commit": "2a688440132173d493dff7c7c3760681d41e11be",
      "tree": "3dc4379fe15390fc7d3b9a948eb0fe2e7188e7de",
      "parents": [
        "563c68f3cd26bb0ed440c76f4d922590e6e4e181"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Tue Dec 08 13:26:29 2015 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Tue Dec 08 13:34:27 2015 +0000"
      },
      "message": "Heat - revise keystone/trusts config to avoid deprecated options\n\nThere are some inter-related changes required to avoid using legacy\nfallback/deprecated paths in heat, which result in warnings in the\nlog, e.g because we fall-back to reusing keystone auth_token\nconfiguration instead of heat specific sections.\n\nTo fix this:\n- Don\u0027t explicitly set deferred_auth_method\u003dtrusts, as this is now\n  the default (since kilo)\n- Create a new \"trustee\" section containing configuration used for\n  the password auth-plugin associated with deferred authentication\n  via trusts (support for this was added during liberty to enable\n  us to stop incorrectly using the keystone auth_token config)\n- Create a \"clients_keystone\" section to avoid falling back to the\n  legacy behavior of stealing the uri from auth_token.\n\nThis also means we can remove the FIXME and auth_token auth_uri\nmentioned by jamielennox.\n\nChange-Id: Ie34332a7aec3b9b271df0759dd6ab66b45302832\nRelated-Bug: #1300246\n"
    },
    {
      "commit": "779d8670287952b8865a1d506ba2d68406139430",
      "tree": "d760388a99c05f1b8fb05ba5f9748d95b97310e6",
      "parents": [
        "bf81732b129675d667d2285859f32db16ef5e2f5"
      ],
      "author": {
        "name": "Joe D\u0027Andrea",
        "email": "jdandrea@research.att.com",
        "time": "Mon Nov 30 15:35:13 2015 +0000"
      },
      "committer": {
        "name": "Joe D\u0027Andrea",
        "email": "jdandrea@research.att.com",
        "time": "Mon Nov 30 15:36:30 2015 +0000"
      },
      "message": "Force heat deferred_auth_method to password in standalone mode\n\nHeat does not support Keystone Trusts when deployed in standalone\nmode. This change forces an error when HEAT_DEFERRED_AUTH is set\nto anything other than \"password\" if HEAT_STANDALONE is True and\nadvises of the acceptable setting.\n\nChange-Id: Ib4ee9d9af396093137a2a0f99f1b18ae153ccdb3\nCloses-Bug: #1463837\n"
    },
    {
      "commit": "523f48803609b35350b624244fa73b1030c1d5fa",
      "tree": "17f99ab223f42eec58523fa89a49f243efba754b",
      "parents": [
        "307730acd9d271bc4c3d44f2dfed0eab67e1657d"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Oct 13 11:03:03 2015 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Fri Nov 27 15:36:04 2015 +1100"
      },
      "message": "Namespace XTRACE commands\n\nI noticed this when debugging some grenade issues failures.\n\nAn include of grenade/functions stores the current value of XTRACE\n(on) and disables xtrace for the rest of the import.\n\nWe then include devstack\u0027s \"functions\" library, which now overwrites\nthe stored value of XTRACE the current state; i.e. disabled.\n\nWhen it finishes it restores the prior state (disabled), and then\ngrenade restores the same value of XTRACE (disabled).\n\nThe result is that xtrace is incorrectly disabled until the next time\nit just happens to be turned on.\n\nThe solution is to name-space the store of the current-value of xtrace\nso when we finish sourcing a file, we always restore the tracing value\nto what it was when we entered.\n\nSome files had already discovered this.  In general there is\ninconsistency around the setting of the variable, and a lot of obvious\ncopy-paste.  This brings consistency across all files by using\n_XTRACE_* prefixes for the sotre/restore of tracing values.\n\nChange-Id: Iba7739eada5711d9c269cb4127fa712e9f961695\n"
    },
    {
      "commit": "347dbac04e8988a01e3330e34b57f1e5b3c6aa2a",
      "tree": "e4fc55f2c8e7e0543e6dd3988bc15b0a26eaec0c",
      "parents": [
        "fd97214a0ecf5069dcee90a7f7d3358a4790e923"
      ],
      "author": {
        "name": "Nicolas Simonds",
        "email": "nic@metacloud.com",
        "time": "Wed Jan 21 13:40:42 2015 -0800"
      },
      "committer": {
        "name": "Chet Burgess",
        "email": "cfb@metacloud.com",
        "time": "Thu Oct 29 16:12:36 2015 +0900"
      },
      "message": "Add the ability to install/enable Heat plugins\n\nAdds the $ENABLE_HEAT_PLUGINS variable, which should be a list of\nthe names of the plugins the user wishes to install.\n\nChange-Id: I2ba90002a8fad1cdce6543c89dc37c5912fe133e\n"
    },
    {
      "commit": "5cdee8dd3311e501302993cd8c81b39cb6b45090",
      "tree": "665bbd6ec1aab84f2b3a910cd13a6db1fe935469",
      "parents": [
        "a692810ef05304856e5fd12ec786f3445ecca576"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Mon Oct 19 14:17:18 2015 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Thu Oct 29 11:30:20 2015 +1100"
      },
      "message": "Update to bashate 0.3.2\n\nBashate 0.3.2 has a few new checks -- firstly make sure some of the\nplugins have #!/bin/bash, and fix up a couple of \"local\" changes that\nwere missed by I9c8912a8fd596535589b207d7fc553b9d951d3fe\n\nChange-Id: I9e4b1c0dc9e0f709d8e76f9c9bf1c9478b2605ed\n"
    },
    {
      "commit": "a692810ef05304856e5fd12ec786f3445ecca576",
      "tree": "f1a1492e57b3140464e9b5dff9fdf7a3861ab381",
      "parents": [
        "0afcac2e01580b7aee886272b8ed7eaf9c13132c"
      ],
      "author": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Thu Jun 11 08:56:58 2015 -0400"
      },
      "committer": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Wed Oct 28 15:25:17 2015 +0000"
      },
      "message": "Add toggle to run Heat API services via Apache2\n\nAdd templates for running Heat API services via\napache mod_wsgi. Also add appropriate functions to\nlib/heat for configuring Heat.\n\nChange-Id: I1bdd678c44ddfa616a9db7db85ff6f490ff08947\n"
    },
    {
      "commit": "6e9bee1ae587cccc278dc24ae0d9820a222409fe",
      "tree": "db87e22509c52e7e92ba0b70160219bb0fd4dea9",
      "parents": [
        "188b38fc808d0713476dec30f15d60618acd692b",
        "e82bac04981c8e41a919907d16621c9c952d9224"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Oct 15 02:56:19 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Oct 15 02:56:19 2015 +0000"
      },
      "message": "Merge \"Detect blank variable in trueorfalse\""
    },
    {
      "commit": "e82bac04981c8e41a919907d16621c9c952d9224",
      "tree": "d94a1380349e0154da2581b80b281b13dad3aaab",
      "parents": [
        "c1561f84fb421d2ce28d3c2b07fd7b53f57264bf"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Aug 25 14:29:08 2015 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Fri Oct 09 19:07:50 2015 +1100"
      },
      "message": "Detect blank variable in trueorfalse\n\nAs a follow-on to I8cefb58f49dcd2cb2def8a5071d0892af520e7f7, put in\nsome detection around missing variable-to-test arguments in\ntrueorfalse.\n\nCorrect a couple of places where we were passing in blank strings,\nresulting in the default always being applied.\n\nAdd test-cases and enhance the documentation a little.\n\nDepends-On: I8cefb58f49dcd2cb2def8a5071d0892af520e7f7\nChange-Id: Icc0eb3808a2b6583828d8c47f0af4181e7e2c75a\n"
    },
    {
      "commit": "ada886dd43ccc07f48d3a82d8d3d840fe5096c03",
      "tree": "93d62f1c82edc08d813b7f9f7eb9270e7024e055",
      "parents": [
        "433a9b10ddd6fa67d7459c4943a92ce4f488cebc"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Oct 07 14:06:26 2015 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Oct 07 17:03:32 2015 +1100"
      },
      "message": "Don\u0027t mix declaration and set of locals\n\nIa0957b47187c3dcadd46154b17022c4213781112 proposes to have bashate\nfind instances of setting a local value.  The issue is that \"local\"\nalways returns 0, thus hiding any failure in the commands running to\nset the variable.\n\nThis is an automated replacement of such instances\n\nDepends-On: I676c805e8f0401f75cc5367eee83b3d880cdef81\nChange-Id: I9c8912a8fd596535589b207d7fc553b9d951d3fe\n"
    },
    {
      "commit": "c0581ef9fde62ad252f32f81a575bd513f5c7cd7",
      "tree": "e299eccf263b595a28f9e037eeb136e04e577c22",
      "parents": [
        "7594b100128bdd4f6397dacf8de4d4c3059f6bb3",
        "9e68af7d170db8f4231727ebdc6630320213da8d"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Sep 04 07:59:44 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Sep 04 07:59:44 2015 +0000"
      },
      "message": "Merge \"Invoke Heat via console script generated binaries\""
    },
    {
      "commit": "346edcc532719f6f29471920f9434b6d5300d43a",
      "tree": "e2f4e59d881d87a7316d1cff11032960b56cba4d",
      "parents": [
        "ca802bcfcc1d45697da9f4c26683d2887eb63f39"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Aug 26 09:38:37 2015 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Aug 26 09:38:37 2015 -0400"
      },
      "message": "check all possible services when configuring tempest\n\nThe previous approach assumed that devstack in tree service support\nwould always be a super set of tempest. That\u0027s not necessarily\ntrue. Instead when configuring tempest we should look at all the\npossible services that tempest could know about, which will let us\ndisable services we don\u0027t have support for.\n\nChange-Id: I9c24705e494689f09a885eb0a640efd50db33fcf\n"
    },
    {
      "commit": "b17ad7560d7d67e3464b489e124c540e025b9299",
      "tree": "4af18b24b59bded064806f15b0f2c8b69e7d9183",
      "parents": [
        "68f9172dbd18688db188454c775dbf139224aeca"
      ],
      "author": {
        "name": "Jamie Lennox",
        "email": "jamielennox@redhat.com",
        "time": "Fri May 29 06:04:47 2015 +0000"
      },
      "committer": {
        "name": "Jamie Lennox",
        "email": "jamielennox@redhat.com",
        "time": "Wed Jul 08 05:17:00 2015 +1000"
      },
      "message": "Use identity V3 API for endpoint creation\n\nAlways use the keystone V3 API when creating services and endpoints. The syntax\nhere is slightly different but we maintain the function interface.\n\nChange-Id: Ib3a375918a45fd6e37d873a1a5c0c4b26bdbb5d8\nImplements: bp keystonev3\n"
    },
    {
      "commit": "9e68af7d170db8f4231727ebdc6630320213da8d",
      "tree": "51578445e776c1c9d59dfc8c9e549f644b78b5a2",
      "parents": [
        "ca0411540b18fab748843d787db69931985d4220"
      ],
      "author": {
        "name": "Sirushti Murugesan",
        "email": "sirushti.murugesan@hp.com",
        "time": "Tue Jun 16 23:25:17 2015 +0530"
      },
      "committer": {
        "name": "Sirushti Murugesan",
        "email": "sirushti.murugesan@hp.com",
        "time": "Tue Jun 16 18:11:19 2015 +0000"
      },
      "message": "Invoke Heat via console script generated binaries\n\nDepends-On: Ic8f5b8dc85098de752bbf673c4b15c06fdc4162a\nChange-Id: Iffb6d09bfef593d854b38e68200ae6039c4727e7\n"
    },
    {
      "commit": "6aabbbf47f5d8bee9147245da9a690d551da68a1",
      "tree": "3d7f86918f4e9bad5c6cc96bef33c69f42328229",
      "parents": [
        "2ab5f94628ca10a894ae59fb2c65c4a55ab0f4a0",
        "11cf7b64a78d225d7ba84b86597a934d0417ad3c"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Apr 03 16:18:14 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Apr 03 16:18:14 2015 +0000"
      },
      "message": "Merge \"iptables rule for heat pip mirror\""
    },
    {
      "commit": "11cf7b64a78d225d7ba84b86597a934d0417ad3c",
      "tree": "7677456f484251f50a309e84fa62e35e85d4a8fe",
      "parents": [
        "3cfc03156c3bd642151e04bb258286af8857ab2a"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Fri Mar 27 09:08:53 2015 +1300"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Fri Mar 27 09:10:15 2015 +1300"
      },
      "message": "iptables rule for heat pip mirror\n\nThis is required for guest VMs to reach http://$HOST_IP:8899\n\nChange-Id: I814c682fb02974ae05dfbe5e212409cdd11d16ac\n"
    },
    {
      "commit": "93b906d53ee457b3768c755615fc7c2395d26c85",
      "tree": "3e87e1e27fa3c9e066e6e7865146452532ca808f",
      "parents": [
        "85c98b3e18b132d99c569626e1b747eafa59f7c6"
      ],
      "author": {
        "name": "Angus Salkeld",
        "email": "asalkeld@mirantis.com",
        "time": "Thu Mar 26 12:53:51 2015 +1000"
      },
      "committer": {
        "name": "Angus Salkeld",
        "email": "asalkeld@mirantis.com",
        "time": "Thu Mar 26 12:53:51 2015 +1000"
      },
      "message": "Always set the Heat deferred auth method\n\nOtherwise in standalone mode we use the new default of \"trusts\"\nwhich won\u0027t work.\n\nChange-Id: If18db711faf7810217af0a89d1e38590a94d8e5b\nCloses-bug: 1436631\n"
    },
    {
      "commit": "e467cdfeb186f6afad742f25e5dc8db117524942",
      "tree": "f7102b3bb683bd2d18f8d3aba0dedb9e84f6e627",
      "parents": [
        "952f9a9116cb77b5807e43b5bde52fbabaee9a83",
        "16819951038c464d330233d0d3df4173420f14ae"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Mar 23 18:34:53 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Mar 23 18:34:53 2015 +0000"
      },
      "message": "Merge \"Install missing heat agent projects\""
    },
    {
      "commit": "743d03bf7dbb3d5e2d6b20fa872694265e36a36d",
      "tree": "5e35af49965e67db24f09760d739153e7630acaf",
      "parents": [
        "d5532b5255878ea2fdf330828fac943c74e3d389",
        "2dd110ce8668f6cb7b507928bad972d94656e2d7"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Sun Mar 22 02:41:03 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sun Mar 22 02:41:03 2015 +0000"
      },
      "message": "Merge \"iniset_rpc_backend default section\""
    },
    {
      "commit": "05163d66ac4459cabff4ccf303b7ec10f2fa72a7",
      "tree": "7c39194b241f3d23094798d40916fa55d6d0018a",
      "parents": [
        "597fd75f4178d2179dedef10af3f5dda2994b76c",
        "8421c2b9ab5d8242abb7d1bdc20435408db8b802"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Mar 20 14:30:06 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Mar 20 14:30:06 2015 +0000"
      },
      "message": "Merge \"Use install(1) where possible\""
    },
    {
      "commit": "16819951038c464d330233d0d3df4173420f14ae",
      "tree": "54b477e57b57f95f17b5196361b8d27bb13f2b5e",
      "parents": [
        "852bacc7dfcb6ebe1244dcd648cbf7e6ebd5923e"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Wed Mar 18 13:45:40 2015 +1300"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Thu Mar 19 09:50:13 2015 +1300"
      },
      "message": "Install missing heat agent projects\n\nThis change adds the dib-utils repo, and adds git_clone calls for the\nrequired os-*-config projects.\n\nChange-Id: I2641feb0c462d2940f2698515ff62a2ff06c0e70\n"
    },
    {
      "commit": "8421c2b9ab5d8242abb7d1bdc20435408db8b802",
      "tree": "9d9b6abbf9ee99f6cadb81a9b5a38ecc676961e8",
      "parents": [
        "5c619b43dbd9a649cc7bad3f8527c8b9ded1d631"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Mon Mar 16 13:52:19 2015 -0500"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Mar 18 13:30:59 2015 +1100"
      },
      "message": "Use install(1) where possible\n\nThis eliminated a number of sudo calls by doing the copy/chown/chmod in\na single step and sets a common pattern.\n\nChange-Id: I9c8f48854d5bc443cc187df0948c28b82c4d2838\n"
    },
    {
      "commit": "744c2afd6f5a594a5a16144c773436fbca263c4d",
      "tree": "f343fbca48964dd8e78aa2f083d06a761ed53f0b",
      "parents": [
        "5e159edab375ed950cc5c91a6c445bbc5541b3c1"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Tue Dec 16 12:00:40 2014 +1300"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Wed Mar 18 11:12:37 2015 +1300"
      },
      "message": "Allow heat-standalone to work with keystone v3\n\nHeat can now run in standalone mode with the default v3 keystone\nbackend.\n\nThis change removes the installation of the v2 contrib backend.\nIt also configures saner defaults when HEAT_STANDALONE is True.\nUsing trusts and a stack-domain will never work in standalone mode\nsince they both require a service user which doesn\u0027t exist in\nstandalone mode.\n\nFinally, this change prevents heat.conf being populated with service user options\nnot required by standalone mode.\n\nConfiguring the v2 backend may be reintroduced later with a dedicated\nflag variable.\n\nChange-Id: I88403e359e5e59e776b25ba1b65fae6fa8a3548e\n"
    },
    {
      "commit": "2dd110ce8668f6cb7b507928bad972d94656e2d7",
      "tree": "63f8353d18a51a7fe14338760dec43f10f9c72e6",
      "parents": [
        "5dfecc8966912c2f74a4c7ecc85dd5f0b930cd99"
      ],
      "author": {
        "name": "Brant Knudson",
        "email": "bknudson@us.ibm.com",
        "time": "Sat Mar 14 12:39:14 2015 -0500"
      },
      "committer": {
        "name": "Brant Knudson",
        "email": "bknudson@us.ibm.com",
        "time": "Sat Mar 14 17:53:54 2015 +0000"
      },
      "message": "iniset_rpc_backend default section\n\niniset_rpc_backend should know what section it needs to set the\nconfig options in better than the callers. The config options\nhave actually been moved to different sections and the options\nin the DEFAULT section are deprecated.\n\nChange-Id: I0e07fe03c7812ef8df49e126bf71c57588635639\n"
    },
    {
      "commit": "249e36dec6198c1dfd8e4f80d1f0a815fe6f36aa",
      "tree": "a272bcf3d1fd5d896ce918897ba5dc5d6626be28",
      "parents": [
        "cfbf8a165956b0c6b0c921d5486295d7c923310a"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Thu Mar 05 14:01:45 2015 +1300"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Fri Mar 06 10:57:52 2015 +1300"
      },
      "message": "Remove lib/dib\n\ndiskimage-builder is a utility rather than a service, and is already\ninstalled in devstack via pip when required.\n\nlib/dib was created to allow an image to be created during a devstack\nrun for the heat functional tests, however this approach is no longer\nbeing taken and there are no other known uses for lib/dib.\n\nThis change removes lib/dib and moves the pip mirror building to\nlib/heat so that snapshot pip packages of the heat agent projects can\nbe made available to servers which the heat functional tests boot.\n\nThis also removes tripleo-image-elements, which has never\nbeen utilised, and since images won\u0027t be created\nduring heat functional test runs it is no longer required.\n\nChange-Id: Ic77f841437ea23c0645d3a34d9dd6bfd1ee28714\n"
    },
    {
      "commit": "5e781bd9d0d12473ce2bd6ad8b27f51b1373d506",
      "tree": "1d1bebed7da51cc73d0f5e5f05d8bc841c971856",
      "parents": [
        "63f67e210194cc2cc40a198dd5e7927a476770df",
        "85ff5323ff95106eb18c1c6bfd71d75f3980c370"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Feb 09 17:59:36 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Feb 09 17:59:36 2015 +0000"
      },
      "message": "Merge \"Isolate creating service users\""
    },
    {
      "commit": "85ff5323ff95106eb18c1c6bfd71d75f3980c370",
      "tree": "ccbf706b448442635a6430871ea42cf8de5c5368",
      "parents": [
        "0a52f5597e436a8d2c7253a6967bfc4863c64fe7"
      ],
      "author": {
        "name": "Jamie Lennox",
        "email": "jamielennox@redhat.com",
        "time": "Wed Jan 28 14:28:01 2015 +1000"
      },
      "committer": {
        "name": "Jamie Lennox",
        "email": "jamielennox@redhat.com",
        "time": "Mon Feb 09 14:36:20 2015 +1100"
      },
      "message": "Isolate creating service users\n\nThe code for creating service users is almost exactly the same. Abstract\nthis into a function that can be reused and standardized.\n\nChange-Id: I3a4edbff0a928da7ef9b0097a5a8d508fdfab7ff\n"
    },
    {
      "commit": "76549e332e51e6bd53d16656433c90e9da8ce8d5",
      "tree": "1df93b6e62ecbf42e70c1352455e3209f169a1d3",
      "parents": [
        "3273b6d280e2b6edd5dc3e4ba089afb5025e408a"
      ],
      "author": {
        "name": "Andrew Lazarev",
        "email": "alazarev@mirantis.com",
        "time": "Fri Feb 06 16:31:31 2015 -0800"
      },
      "committer": {
        "name": "Andrew Lazarev",
        "email": "alazarev@mirantis.com",
        "time": "Fri Feb 06 16:33:56 2015 -0800"
      },
      "message": "Removed confusing duplication of ca config for keystone\n\nMore general check is performed at line 157. No need for this one.\n\nChange-Id: I7de820ca2b2954313b1f591ece7785891868cd27\n"
    },
    {
      "commit": "e79678af5ed1621cd8740879b496a0d3716ab8b1",
      "tree": "8d89cedb7c4d249e305803f4c9f8ef8449132e9a",
      "parents": [
        "70157976aec6adf26ac0b3734d2017e2356efd75",
        "18f39bfb1f6af23a7fc5f5a5b822e7216ce9ec62"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Feb 06 16:16:36 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Feb 06 16:16:36 2015 +0000"
      },
      "message": "Merge \"Remove the default project from all users\""
    },
    {
      "commit": "18e0a335b65e50af5bade16176a955775b6dc372",
      "tree": "28b3669a4f69af753b0d42369ca4f57847f9e8a7",
      "parents": [
        "02e0d8cfbbf455f368ad3cbfc535395faff3c61f",
        "905275ec9f51614911fbb915f8bba9896b3ab684"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Feb 03 10:11:26 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Feb 03 10:11:26 2015 +0000"
      },
      "message": "Merge \"Bump up the count of workers for heat\""
    },
    {
      "commit": "d31b05cc7c052707eb21afa9d813681d457535d8",
      "tree": "6be74b0e0533cec100e3d6ce839e2f029ab4dd27",
      "parents": [
        "61cb01a8a2cf2ebfaabecaaa3ee7819dfeb77c66",
        "3163c17170b0b2bd7775e5e0d50040504b559ea1"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Jan 29 05:56:38 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Jan 29 05:56:39 2015 +0000"
      },
      "message": "Merge \"Make elements for heat test image configurable\""
    },
    {
      "commit": "61cb01a8a2cf2ebfaabecaaa3ee7819dfeb77c66",
      "tree": "40252fc3e81b33cfa165257a6e3312ea4f9aad05",
      "parents": [
        "51ceb0da0afb38c76b36a617d1118b061a05264a",
        "1f3f4b0a69a70bb5fce0707a517d67c896c3cf2c"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Jan 29 05:56:30 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Jan 29 05:56:30 2015 +0000"
      },
      "message": "Merge \"Check dib is available before building heat test image\""
    },
    {
      "commit": "18f39bfb1f6af23a7fc5f5a5b822e7216ce9ec62",
      "tree": "7d129d3e5a087f1d819f19282cd3978e051bd936",
      "parents": [
        "c2999d190a0ce92a99332a9733b2e43828a6201c"
      ],
      "author": {
        "name": "Jamie Lennox",
        "email": "jamielennox@redhat.com",
        "time": "Wed Jan 28 13:38:32 2015 +1000"
      },
      "committer": {
        "name": "Jamie Lennox",
        "email": "jamielennox@redhat.com",
        "time": "Wed Jan 28 13:38:32 2015 +1000"
      },
      "message": "Remove the default project from all users\n\nThe default project means that a user gains token scoping information\nfor a project if they don\u0027t specify another. This is something we want\nto discourage for user creation. User\u0027s should specify there own\nauthentication scope when they authenticate.\n\nChange-Id: I42c3060d59edfcd44d04cd166bad500419dd99bc\n"
    },
    {
      "commit": "1631af891af32eaa9af609398a88252ab437b0b4",
      "tree": "9a5b7a9aebc97c743fd601aec60658b62b70b813",
      "parents": [
        "2d7c346f0c8cefe622edc8fed47cc2782aeb9a9b",
        "78b7726dddb2e317370cfc4699a93c759cabed9a"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jan 26 14:06:15 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jan 26 14:06:15 2015 +0000"
      },
      "message": "Merge \"Configure auth_token middleware by auth plugin\""
    },
    {
      "commit": "905275ec9f51614911fbb915f8bba9896b3ab684",
      "tree": "06001a650244e471d700bb805bf8e47c76189b15",
      "parents": [
        "cc9d7330e9849e34d6ae407c0e968254e548dae4"
      ],
      "author": {
        "name": "Davanum Srinivas",
        "email": "davanum@gmail.com",
        "time": "Sat Jan 24 19:21:34 2015 -0500"
      },
      "committer": {
        "name": "Davanum Srinivas",
        "email": "davanum@gmail.com",
        "time": "Sat Jan 24 19:21:37 2015 -0500"
      },
      "message": "Bump up the count of workers for heat\n\nLooks like the workers is set to 0 which in heat is used\nmainly for profiling/debugging and not really useful in\nthe devstack scenarios.\nhttps://github.com/openstack/heat/blob/master/heat/common/wsgi.py#L286\n\nPartial-Bug: #1412923\nChange-Id: Iccf6aeffd461fdc1f78022cbda370be4b9573267\n"
    },
    {
      "commit": "3163c17170b0b2bd7775e5e0d50040504b559ea1",
      "tree": "425d6117948fadc627f193d2777e17af1935beec",
      "parents": [
        "1f3f4b0a69a70bb5fce0707a517d67c896c3cf2c"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Fri Jan 23 13:26:29 2015 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Fri Jan 23 13:26:29 2015 +0000"
      },
      "message": "Make elements for heat test image configurable\n\nAllow the elements built into the heat functional test image to\nbe overridden via the localrc, allows easier testing of local\nimages with different/additional elements.\n\nChange-Id: Ibaf2322e0572d25461579bbb2dc8a18858f4e09c\n"
    },
    {
      "commit": "1f3f4b0a69a70bb5fce0707a517d67c896c3cf2c",
      "tree": "6f296ec02783dc85ded61afeed2e5ab7d1accd77",
      "parents": [
        "cc9d7330e9849e34d6ae407c0e968254e548dae4"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Wed Jan 14 10:52:03 2015 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Thu Jan 22 17:06:39 2015 +0000"
      },
      "message": "Check dib is available before building heat test image\n\nWhen running with HEAT_CREATE_TEST_IMAGE\u003dTrue, it\u0027s necessary\nto add dib to ENABLED_SERVICES, or the image building will fail\nso check for is_service_enabled dib before we start and error\nwith a helpful message if it\u0027s not.\n\nChange-Id: Ia7ee64f6f8dd628267e485a1dc67581d8896d19c\n"
    },
    {
      "commit": "955f80a7efe6d5c78fb80d957f63803ef3c0486c",
      "tree": "80931baf547c97897f511eef060783aa52177178",
      "parents": [
        "d4a81a895ebd505b82ada0278d7b388924577ff0",
        "157c84b8766ae67f6868f26505ce9a5d7291730b"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Jan 20 15:44:07 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jan 20 15:44:07 2015 +0000"
      },
      "message": "Merge \"Enforce UTF-8 encoding when creating databases\""
    },
    {
      "commit": "ca5b5485d9be07a6f9e57440901dc612889071c0",
      "tree": "5973d08b5d8ae66ce814a8a90a056ebdec324cb5",
      "parents": [
        "c34cb7b5ef3e6a87b1931f779e11648df2b7144c",
        "537532931da4103e1a873684476dac6d7fe56489"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Sat Jan 17 17:45:29 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sat Jan 17 17:45:29 2015 +0000"
      },
      "message": "Merge \"Make changes such that -o nounset runs\""
    },
    {
      "commit": "537532931da4103e1a873684476dac6d7fe56489",
      "tree": "e35fe8f6032774a831ccfbf2a4d72a68654bbb38",
      "parents": [
        "5f6f43ed9f67a86cad03c1d0c673429814467d6d"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Dec 04 19:38:15 2014 -0500"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Jan 15 13:06:14 2015 -0500"
      },
      "message": "Make changes such that -o nounset runs\n\nThis makes a bunch of variable cleanups that will let -o nounset\nfunction, for the time being we hide nounset behind another setting\nvariable so that it\u0027s not on by default.\n\nBecause this is bash, and things are only executed on demand, this\nprobably only works in the config it was run in. Expect cleaning up\nall the paths to be something that takes quite a while.\n\nThis also includes a new set of unit tests around the trueorfalse\nfunction, because my change in how it worked, didn\u0027t. Tests are good\nm\u0027kay.\n\nChange-Id: I71a896623ea9e1f042a73dc0678ce85acf0dc87d\n"
    },
    {
      "commit": "b74e01c34de76cb451f80d2f1ac1c4ccac1bb7e4",
      "tree": "c0c72cd9c194db806f40b7d4aecbbcd8b81c47f3",
      "parents": [
        "3eaa0781e3d87bee6d343573954b682f1f23d4b9"
      ],
      "author": {
        "name": "Steve Martinelli",
        "email": "stevemar@ca.ibm.com",
        "time": "Thu Dec 18 01:35:35 2014 -0500"
      },
      "committer": {
        "name": "Steve Martinelli",
        "email": "stevemar@ca.ibm.com",
        "time": "Wed Jan 14 14:37:13 2015 -0500"
      },
      "message": "Add a group create function, and a sample group\n\nSlowly trying to introduce more v3 concepts into a generic\ndevstack installation.\n\nWork with description of none and description with spaces\n\nChange-Id: I7d2fde58363698ff020f92f129f1ff7378f945a8\n"
    },
    {
      "commit": "992fbe3c59d881f88775239cb1f251b469f48fe7",
      "tree": "f4f3623e1cb72213398a19dec67c0cd2c7998e90",
      "parents": [
        "bd7fd71791670a40dbfe20937052ea26c36bfda5",
        "826e4509363ff6415a257ce1ff9ea13af390d47d"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jan 12 13:56:16 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jan 12 13:56:16 2015 +0000"
      },
      "message": "Merge \"Add support for enabling heat adopt and abandon\""
    },
    {
      "commit": "78b7726dddb2e317370cfc4699a93c759cabed9a",
      "tree": "bb29ec231a945d74eb3cf7d9f2e9f1bf54fb5f25",
      "parents": [
        "69ef526ac9fbb83c9b6e0cf6d5fc6e65f20fcf54"
      ],
      "author": {
        "name": "Jamie Lennox",
        "email": "jamielennox@redhat.com",
        "time": "Fri Dec 19 12:56:01 2014 +1000"
      },
      "committer": {
        "name": "Jamie Lennox",
        "email": "jamielennox@redhat.com",
        "time": "Mon Jan 12 10:46:49 2015 +1000"
      },
      "message": "Configure auth_token middleware by auth plugin\n\nAs of release 1.3 auth_token middleware can be configured to use any\nauthentication plugin. This allows us to move to the more generic\npassword mechanism which will default to using keystone v3 if available.\n\nThis will allow in future revisions to move the devstack service users\nout of the default domain.\n\nWork will need to be done in heat to remove it\u0027s dependency on the\n(supposed to be private) keystone_authtoken CONF values.\n\nChange-Id: Ieac26806bd420aa08fc79bbc6a11eb6a1c15c7df\n"
    },
    {
      "commit": "826e4509363ff6415a257ce1ff9ea13af390d47d",
      "tree": "52bc34600d00d957775896363ed82e053dcd440f",
      "parents": [
        "a6613851abacbfaad48d51a4de41e9b5e077e24c"
      ],
      "author": {
        "name": "Angus Salkeld",
        "email": "asalkeld@mirantis.com",
        "time": "Wed Jan 07 17:52:05 2015 +1000"
      },
      "committer": {
        "name": "Angus Salkeld",
        "email": "asalkeld@mirantis.com",
        "time": "Wed Jan 07 18:04:16 2015 +1000"
      },
      "message": "Add support for enabling heat adopt and abandon\n\nThis is by default disabled, but we need to enable\nit to test it in the gate.\n\nChange-Id: I2339ebcaf4bd6308041675bcd35c0b70206e2e5e\n"
    },
    {
      "commit": "157c84b8766ae67f6868f26505ce9a5d7291730b",
      "tree": "2335d93852b26d620b8c2270164c69d6879b596c",
      "parents": [
        "5c0a3cfb71ef8c8faca92c19e4eee4968eb309e3"
      ],
      "author": {
        "name": "Ihar Hrachyshka",
        "email": "ihrachys@redhat.com",
        "time": "Mon Oct 06 13:29:39 2014 +0200"
      },
      "committer": {
        "name": "Ihar Hrachyshka",
        "email": "ihrachys@redhat.com",
        "time": "Mon Jan 05 15:57:23 2015 +0100"
      },
      "message": "Enforce UTF-8 encoding when creating databases\n\nWe use InnoDB everywhere, so there should be no issues with long unicode\nkeys. Dropped charset parameter for recreate_database since it\u0027s not\nneeded anymore.\n\nChange-Id: Ib768402a9337c918309030a92ab81da17269f4f6\n"
    },
    {
      "commit": "a38bc5b3c2b97230896948073401153b0c3d157f",
      "tree": "1cf523ec1746dd52a10ffaad67f52ca42a701820",
      "parents": [
        "e9cac494d727633a29515b340b7d69e9d4bf0848"
      ],
      "author": {
        "name": "Sergey Kraynev",
        "email": "skraynev@mirantis.com",
        "time": "Tue Dec 16 04:25:11 2014 -0500"
      },
      "committer": {
        "name": "Sergey Kraynev",
        "email": "skraynev@mirantis.com",
        "time": "Tue Dec 30 09:25:08 2014 +0000"
      },
      "message": "Adding installation Heat package after cloning\n\nThere are two important reasons for this change:\n - Other OpenStack components contain this code already.\n - Heat store references on client/constraint/version plugins in\n   setup.cfg and and stevedore uses these references, so we should\n   install Heat after changing this part of code. As example look patch\n   https://review.openstack.org/#/c/86978/ for grenade job, where\n   heat-engine can not find two constrainsts due to changing their code\n   place between releases.\n\nChange-Id: Ic6b1f70ec2d2c06002eb6877a747b7b84213c710\nCloses-Bug: #1402985\n"
    },
    {
      "commit": "d09a1db5a449fc758bf840858f6fecba173705b3",
      "tree": "19f949a600c09109c306dd86ad830c474693bb58",
      "parents": [
        "3fe578d41d52577e6af4dc948287dfbc2eb06f46",
        "e263c82e48a431e502bd6baceb6dfcfdc1750cbb"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Dec 10 20:32:15 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Dec 10 20:32:15 2014 +0000"
      },
      "message": "Merge \"add shebang lines to all lib files\""
    },
    {
      "commit": "e263c82e48a431e502bd6baceb6dfcfdc1750cbb",
      "tree": "5ca592e668dedb4debc6c7170f3abf37cc4bc0c6",
      "parents": [
        "2f8e08b5728f4272b415b1c0aab8ff62eae29b06"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Dec 05 14:25:28 2014 -0500"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Dec 10 11:28:05 2014 -0500"
      },
      "message": "add shebang lines to all lib files\n\nWith gerrit 2.8, and the new change screen, this will trigger syntax\nhighlighting in gerrit. Thus making reviewing code a lot nicer.\n\nChange-Id: Id238748417ffab53e02d59413dba66f61e724383\n"
    },
    {
      "commit": "614de25756e13a5468c9a016b976b0391eec2b8c",
      "tree": "3fb6d53643cb4f36c79f54300201db3269501e4c",
      "parents": [
        "49945604fc431150e5e256092d6a50f11db6d6ac",
        "8b469c1c5e36047a9e5a80e040f137957bdb8d66"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Dec 09 18:56:32 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Dec 09 18:56:32 2014 +0000"
      },
      "message": "Merge \"Remove heat_stack_owner role\""
    },
    {
      "commit": "8b469c1c5e36047a9e5a80e040f137957bdb8d66",
      "tree": "3e9be79ada1b0dd37b0356ae9c52095c594b4418",
      "parents": [
        "47a81c912323adb6ef0a8254e35de311c41efe9b"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Thu Dec 04 10:43:52 2014 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Thu Dec 04 10:43:52 2014 +0000"
      },
      "message": "Remove heat_stack_owner role\n\nSince https://review.openstack.org/#/c/128509/ heat no longer requires\nthe \"heat_stack_owner\" role by default, as we now delegate all roles\nvia the trust.  So remove the now unnecessary role creation and assignment\nfrom lib/heat.\n\nChange-Id: Ia097ac9a76b3242ed6e62b11ca64c7ac7680b97c\n"
    },
    {
      "commit": "bfadd227ecd593d1aa151246fdc18952fcbe9d37",
      "tree": "a6c56b61232c977580b586c77cc3e5dfea84f512",
      "parents": [
        "47a81c912323adb6ef0a8254e35de311c41efe9b"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Wed Dec 03 23:15:08 2014 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Wed Dec 03 23:15:08 2014 +0000"
      },
      "message": "heat remove copy of sample config file\n\nWe\u0027re moving to a model like nova where we don\u0027t maintain a static\nsample config, instead providing a readme showing how to generate\nit in https://review.openstack.org/#/c/138800/, so this change\nis needed before we can land that change.\n\nChange-Id: I335a33646eef72962c9036dcd1de50144d8575c8\n"
    },
    {
      "commit": "e08ab104e62da041fcc6b2aafba4349326f4a969",
      "tree": "859fc4953f6b45b75b9f4810ba0bf33477799f31",
      "parents": [
        "94f8bea9e4ff0434df1723cf269c4300a4373524"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Nov 13 17:09:28 2014 -0500"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Nov 13 17:17:38 2014 -0500"
      },
      "message": "fix python-* lib from git installation\n\nWe\u0027re using all the magic variables based on python-fooclient, however\nall the inline code was using fooclient for variables. So we had a\nmismatch, which was kindly pointed out by some of the 3rd party ci\ntesters.\n\nChange-Id: I27a56222c7e8e610fba8bf97672d2a42f5cf14ca\n"
    },
    {
      "commit": "5cb190697c1bce5dcd2ad843922813b0cc74bd24",
      "tree": "ba87095ef1603c957902abadcb692ccf653e6f59",
      "parents": [
        "2d18b83600bf53df3a41aec619eee67328fe154f"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Sat Nov 01 01:37:45 2014 +0100"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue Nov 04 10:18:58 2014 +0100"
      },
      "message": "support installing clients at released versions\n\nexpand the devstack support for libraries from released versions to\nsupport python-* clients and tempest_lib.\n\nDepends-On: I81b0d228e7769758c61e5b0323ecfce8c8886d39\n\nChange-Id: I26fac0ccf8fd4818e24618d56bf04b32306f88f6\n"
    },
    {
      "commit": "2f92c8d723f6e244faf410c5121de4c462c08a35",
      "tree": "935689788c1a2f094f50665cbde6e40407aca658",
      "parents": [
        "f33e76bf9bd9a3bc39e8b3b99257a4ae98a10d25"
      ],
      "author": {
        "name": "Sirushti Murugesan",
        "email": "sirushti.murugesan@hp.com",
        "time": "Thu Oct 09 14:35:38 2014 +0530"
      },
      "committer": {
        "name": "Sirushti Murugesan",
        "email": "sirushti.murugesan@hp.com",
        "time": "Thu Oct 09 14:38:14 2014 +0530"
      },
      "message": "Replace deprecated conf option for heat\n\nChange-Id: I0419b188ecc2bd946c1c1f565875c6a04f4afd9b\nCloses-Bug: #1379234\n"
    },
    {
      "commit": "aaee3dc777f3dc452c8c06fed119fc523a3d4e08",
      "tree": "0801d58560ff5b956457e3ed93a8ebc48b430e0c",
      "parents": [
        "8e087fa83b1a1b1a2cdbae6f855c9d742e5650f5",
        "e389aed5bdb6d0a0c5b1fbc672f62628726a6544"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Oct 02 02:40:18 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Oct 02 02:40:18 2014 +0000"
      },
      "message": "Merge \"Allow heat standalone to work devstack stack\""
    },
    {
      "commit": "18d4778cf7bffa60eb2e996a13c129c64f83575f",
      "tree": "d6d934b05026d32d6942b34a5e3a359202b3996c",
      "parents": [
        "d60c10d6dbe44445aaab9e3fcc0127e39e989f40"
      ],
      "author": {
        "name": "Rob Crittenden",
        "email": "rcritten@redhat.com",
        "time": "Wed Mar 19 17:47:42 2014 -0400"
      },
      "committer": {
        "name": "Rob Crittenden",
        "email": "rcritten@redhat.com",
        "time": "Wed Sep 24 18:36:37 2014 -0400"
      },
      "message": "Configure endpoints to use SSL natively or via proxy\n\nConfigure nova, cinder, glance, swift and neutron to use SSL\non the endpoints using either SSL natively or via a TLS proxy\nusing stud.\n\nTo enable SSL via proxy, in local.conf add\n\nENABLED_SERVICES+\u003d,tls-proxy\n\nThis will create a new test root CA, a subordinate CA and an SSL\nserver cert. It uses the value of hostname -f for the certificate\nsubject. The CA certicates are also added to the system CA bundle.\n\nTo enable SSL natively, in local.conf add:\n\nUSE_SSL\u003dTrue\n\nNative SSL by default will also use the devstack-generate root and\nsubordinate CA.\n\nYou can override this on a per-service basis by setting\n\n\u003cSERVICE\u003e_SSL_CERT\u003d/path/to/cert\n\u003cSERVICE\u003e_SSL_KEY\u003d/path/to/key\n\u003cSERVICE\u003e_SSL_PATH\u003d/path/to/ca\n\nYou should also set SERVICE_HOST to the FQDN of the host. This\nvalue defaults to the host IP address.\n\nChange-Id: I36fe56c063ca921131ad98439bd452cb135916ac\nCloses-Bug: 1328226\n"
    },
    {
      "commit": "e389aed5bdb6d0a0c5b1fbc672f62628726a6544",
      "tree": "626e3d0af7565731e5fbb41b7f29179a3550c24d",
      "parents": [
        "47ccb7fa36ffe7a89a793902793921e0aa5fa8a8"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Tue Sep 23 17:10:39 2014 +1200"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Tue Sep 23 17:18:04 2014 +1200"
      },
      "message": "Allow heat standalone to work devstack stack\n\nFor functional testing of heat-standalone it is desirable for\nheat to orchestrate on the rest of the cloud which is brought up\nby devstack. This change makes the following changes to enable\nthis when HEAT_STANDALONE\u003dTrue:\n\n- Don\u0027t register the orchestration endpoint or create any dedicated\n  heat accounts\n- Install and configure the heat keystone V2 auth plugin instead of\n  the default v3\n- set heat.conf [clients_heat] url so that heat can call its own\n  API when no orchestration endpoint is registered\n- Modify create_userrc.sh to set the required heat client env\n  variables to work with the standalone heat\n\nChange-Id: Idae33bf1a9d550e2575e6390d2d7c8d3b94c401d\n"
    },
    {
      "commit": "0595237e8adee0320dbcabe5647f7aa179378741",
      "tree": "2bfac494b50c567e9816778b3f6cbf0b80d8012d",
      "parents": [
        "d13eb8ec4066c2f52313351053021e456de60883"
      ],
      "author": {
        "name": "Brant Knudson",
        "email": "bknudson@us.ibm.com",
        "time": "Fri Sep 19 17:22:22 2014 -0500"
      },
      "committer": {
        "name": "Brant Knudson",
        "email": "bknudson@us.ibm.com",
        "time": "Sun Sep 21 11:18:01 2014 -0500"
      },
      "message": "Function for auth_token middleware config\n\nEach project was configuring the auth_token middleware using several\nlines of inisets. Since all the projects should configure the\nauth_token middleware in the same way create a function and call it.\n\nChange-Id: I3b6727d5a3bdc0ca600d8faa23bc6db32bb32260\n"
    },
    {
      "commit": "2f27a0ed3c609bfcd6344a55c121e56d5569afc9",
      "tree": "abe0c02c1d2fd9d57f6b786ff8105896969d0e3c",
      "parents": [
        "58deafcd63ae996e0973c864e249c4a3cb82a74f"
      ],
      "author": {
        "name": "Chris Dent",
        "email": "chdent@redhat.com",
        "time": "Tue Sep 09 13:46:02 2014 +0100"
      },
      "committer": {
        "name": "Chris Dent",
        "email": "chdent@redhat.com",
        "time": "Thu Sep 11 18:59:39 2014 +0100"
      },
      "message": "Replace screen_it() with run_process() throughout\n\nrun_process will use screen if USE_SCREEN\u003dTrue (the default),\notherwise it will simply start the requested service. Therefore\nwherever screen_it used, run_process can be instead.\n\nWhere stop_screen was found it has been replaced with stop_process.\n\nA tail_log function has been added which will tail a logfile in a\nscreen if USE_SCREEN is True.\n\nlib/template has been updated to reflect the use of the new\nfunctions.\n\nWhen using sg the quoting in run_process gets very complicated.\nTo get around this run_process and the functions it calls accepts\nan optional third argument. If set it is a group to be used with sg.\n\nChange-Id: Ia3843818014f7c6c7526ef3aa9676bbddb8a85ca\n"
    },
    {
      "commit": "f71b500beaf3d09c0388fed8480c9a5a25524c87",
      "tree": "94556915d766ecfb8e7a759122d06321bc2f4d2f",
      "parents": [
        "a7a2b883b28a6a2137f9b56be956a5d3798a0479"
      ],
      "author": {
        "name": "Attila Fazekas",
        "email": "afazekas@redhat.com",
        "time": "Wed May 28 09:52:22 2014 +0200"
      },
      "committer": {
        "name": "Attila Fazekas",
        "email": "afazekas@redhat.com",
        "time": "Wed Aug 27 09:21:13 2014 +0200"
      },
      "message": "Faster nova fixed key generation\n\nUsing bc 64 times in loop is too verbose and slow,\nreplacing the echo/bc loop with hexdump and urandom.\n\nThe hexdump approach is 75 times faster and\ndoes not floods the debug logs.\n\nUsing the common function for generating,\nthis kind of string with lib/heat and by the read_password.\n\nChange-Id: If6a86dfaf0c21e2635c6de0a7b96a8ed7ec5b507\n"
    },
    {
      "commit": "2a6009cd00c73b187f0cbd3541361c7d46837856",
      "tree": "86005c3018ebca0e4cdf978319676106c30ac3af",
      "parents": [
        "da786b2fd9ca3a0641dcb1a7cb6aec7754e76a97"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Mon May 05 16:13:39 2014 +1200"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Fri Aug 22 15:02:26 2014 +1200"
      },
      "message": "Build an image for heat functional tests\n\nThis is only triggered if HEAT_CREATE_TEST_IMAGE is True\n\nThis custom image contains the following:\n* heat-cfntools from git rather than the packaged version, which\n  will allow gating on heat-cfntools changes\n* os-collect-config, os-apply-config, os-refresh-config, which\n  will allow gating on these projects, and will allow heat\n  software-config tests to be written\n* software-config hooks from heat-templates, which will allow tempest\n  tests to be written for software-config with different configuration\n  tools (script, puppet, cfn-init etc)\n\nThe heat functional tests will soon replace the heat-slow tempest job,\nso heat-slow tempest configuration will be removed after the heat\nfunctional test job is gating.\n\nChange-Id: I2e0490c1662a184d4c6d8c7e9ebb128e1912f1b0\n"
    },
    {
      "commit": "da786b2fd9ca3a0641dcb1a7cb6aec7754e76a97",
      "tree": "85710e5794e7509035f313b00fe49331485c4530",
      "parents": [
        "89a263bc419cea239119e7d208a0cd6d02b4b54e"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Tue May 27 12:24:40 2014 +1200"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Fri Aug 22 15:02:26 2014 +1200"
      },
      "message": "Utility functions for building test images\n\nThese functions allow images to be built using diskimage-builder which\ncontain packages built from local project checkouts:\nbuild_dib_pip_repo() - Builds a local pip repo from local projects and configures\n                       apache to serve it\ndisk_image_create_upload() - Creates and uploads a diskimage-builder built image\n\nThe unused function lib/heat disk_image_create has been deleted.\n\nChange-Id: Ia75c7c35bfd48dbe6ae3cb9c3241de0b598cbf84\n"
    },
    {
      "commit": "315971d972e26d1444a103965a10c0be5ffe6396",
      "tree": "8c288c4091a3ad159d80413027da9a794c5fa71e",
      "parents": [
        "cbfb3ae1c85647d8f84e8a4d1ddb616541cc09ba"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Tue May 27 12:24:18 2014 +1200"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Wed Aug 20 09:06:34 2014 +1200"
      },
      "message": "Install heat-cfntools and heat-templates repos\n\nThese projects contain agents which can be installed on custom\nimages. Installing these repos will allow a future change to\nbuild a custom image containing these projects. This will allow\ngating on any changes in these projects by running heat-slow\non the custom image.\nThe corresponding devstack-gate change is\nhttps://review.openstack.org/#/c/92055/\nChange-Id: I7b1343c094f755f79ddeb1bac3ff4c0daa3fb70c\n"
    },
    {
      "commit": "7d31bdcfdaa130a75be1ecb7c475e423891a1a69",
      "tree": "e6b918949a48724018073e194b727646c99d31dd",
      "parents": [
        "d3121f649d672fdaf757655b94ecd68c71b56b8e"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Fri Jul 25 12:50:05 2014 -0500"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Fri Jul 25 14:05:24 2014 -0500"
      },
      "message": "Clean up local variable usage - Heat\n\nChange-Id: Ia912a8d3ea764dc713e8fdc380175ab98f887a60\n"
    },
    {
      "commit": "6dd8a8bee402a6be683075e0669a010a279950ae",
      "tree": "863dda081a4cf9cbf78f911ac66178b7ffc9f11e",
      "parents": [
        "2bb05fdb84aa472299efc714b7c1114a25a3ada2"
      ],
      "author": {
        "name": "Gael Chamoulaud",
        "email": "gchamoul@redhat.com",
        "time": "Tue Jul 22 01:12:12 2014 +0200"
      },
      "committer": {
        "name": "Gael Chamoulaud",
        "email": "gchamoul@redhat.com",
        "time": "Tue Jul 22 17:29:04 2014 +0200"
      },
      "message": "Users in service group should not have email addresses\n\nChange-Id: Ieed9dffce5cf1e735e482dd3494ac1e103b50955\nCloses-Bug: 1185201\nSigned-off-by: Gael Chamoulaud \u003cgchamoul@redhat.com\u003e\n"
    },
    {
      "commit": "0abde393c5e2d15e840c0321b736e22291b59780",
      "tree": "a78ecff37749175c95a5cbc7eae78cfecd02d1c8",
      "parents": [
        "c06c9e1f904a81e0fef646273b07510e90995364"
      ],
      "author": {
        "name": "Bartosz Górski",
        "email": "bartosz.gorski@ntti3.com",
        "time": "Fri Feb 28 14:15:19 2014 +0100"
      },
      "committer": {
        "name": "Bartosz Górski",
        "email": "bartosz.gorski@ntti3.com",
        "time": "Tue Jul 01 14:58:35 2014 +0000"
      },
      "message": "Adds support for multi-region\n\nChange-Id: Ib85fe7cb375692b04aca4c46f61ba7e1fbfa501b\nImplements: blueprint multi-region\n"
    },
    {
      "commit": "ef837e4c7fdf551685385953dd1dc6e935f482fd",
      "tree": "98e02e7234f482a36e49bc63e236077046c72af9",
      "parents": [
        "a4de9a9c350dc89b1a108bbecba549da0e5d6579",
        "fefd64b878a3e4ecfc2b1b385f47c1d7f7593648"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Jun 17 19:47:12 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jun 17 19:47:12 2014 +0000"
      },
      "message": "Merge \"Configure heat keystone client for SSL when keystone uses SSL\""
    },
    {
      "commit": "3561d7f9edc6dd0d00be097a78b83f38aa8cbf5f",
      "tree": "8025c7ada1e73ed26ada7e9bea9c000b112d0283",
      "parents": [
        "7006105997a7d9264dde69b55d109f52cd4c015e"
      ],
      "author": {
        "name": "Jamie Lennox",
        "email": "jamielennox@redhat.com",
        "time": "Wed May 21 17:18:43 2014 +1000"
      },
      "committer": {
        "name": "Jamie Lennox",
        "email": "jamielennox@redhat.com",
        "time": "Mon Jun 16 15:16:48 2014 +1000"
      },
      "message": "Use identity_uri instead of auth fragments\n\nauth_token middleware now accepts a standard URL string as the parameter\nidentity_uri instead of specifying protocol etc individually. Change the\nservices over to use this.\n\nAlso changes over some other places in which the auth fragments are used\nindividually to the new variables and fixes up some misconfigurations of\nauth_token.\n\nidentity_uri option was release in keystoneclient 0.8.0\n\nChange-Id: Iac13bc3d08c524a6a0f39cdfbc1009e2f5c45c2a\n"
    },
    {
      "commit": "fefd64b878a3e4ecfc2b1b385f47c1d7f7593648",
      "tree": "142bbf2b233ae3ca9cc76a55a1591826ac9fa8c1",
      "parents": [
        "5069ae9eef30468bff0d610091ad7e0e17a66a4d"
      ],
      "author": {
        "name": "Rob Crittenden",
        "email": "rcritten@redhat.com",
        "time": "Tue May 27 22:27:15 2014 -0400"
      },
      "committer": {
        "name": "Rob Crittenden",
        "email": "rcritten@redhat.com",
        "time": "Tue May 27 22:27:15 2014 -0400"
      },
      "message": "Configure heat keystone client for SSL when keystone uses SSL\n\nWhen SSL is enabled in Keystone, the path to the Keystone CA file\nneeds to be set in ca_file in the clients_keystone section.\n\nChange-Id: Ic324e09b42a96d0ba31e13f8e8042cb3ac24d0b6\nCloses-Bug: 1324207\n"
    },
    {
      "commit": "ffeeea132796eac443928ac8f63bb54592a65d8f",
      "tree": "551417c43752d17ca12db62fd6964abbd13b9d0c",
      "parents": [
        "1844e9f9005f6d8f74b1953d5941ca9060c1250e",
        "cebd563508bcf163aa39fa1999e2e423577db13b"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Apr 14 12:18:07 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Apr 14 12:18:07 2014 +0000"
      },
      "message": "Merge \"Remove keystone_ec2_uri flag from lib/heat\""
    },
    {
      "commit": "cebd563508bcf163aa39fa1999e2e423577db13b",
      "tree": "564ba381753d8c8666988b262ede527f4e5443b5",
      "parents": [
        "4c0e728780d49bfca80b147676ad1b96d16e24e4"
      ],
      "author": {
        "name": "JordanP",
        "email": "jordan.pittier@cloudwatt.com",
        "time": "Fri Mar 28 16:15:50 2014 +0100"
      },
      "committer": {
        "name": "JordanP",
        "email": "jordan.pittier@cloudwatt.com",
        "time": "Fri Mar 28 16:15:50 2014 +0100"
      },
      "message": "Remove keystone_ec2_uri flag from lib/heat\n\nAs per I9908e17bed33fdc64d058a6d6db7b29f9c8d53d6 keystone_ec2_uri\nis now derived from auth_uri. Thus keystone_ec2_uri is useless\nnow\n\nChange-Id: I97954fdbbd74a6920b307f33873bcc8d70331bf4\n"
    },
    {
      "commit": "499315fb655680a97042d09787d377c754b28fc3",
      "tree": "c9bd00427d09f5ab20bdf6ad94563a53d0c0747c",
      "parents": [
        "d31b2bde469817106ce10745c89cc90b07f36354"
      ],
      "author": {
        "name": "Attila Fazekas",
        "email": "afazekas@redhat.com",
        "time": "Tue Mar 25 10:42:14 2014 +0100"
      },
      "committer": {
        "name": "Attila Fazekas",
        "email": "afazekas@redhat.com",
        "time": "Tue Mar 25 10:42:14 2014 +0100"
      },
      "message": "Use urandom for heat key generation\n\nReading from /dev/random can block an virtual machine\neven for several minutes, when the entropy pool is empty at the read time.\n\nI have doubts we really need to use /dev/random here.\nEven the ssh-keygen uses /dev/urandom by default,\n so the /dev/random is a little bit overkill here.\n\nChange-Id: I6d2c6364c2b445304a33b0140e3cdc6804404b63\n"
    },
    {
      "commit": "833357f8ce5356400f7fb2dbc1035dba15810411",
      "tree": "4e0391b721e71c4039727c79255c0d026b87beae",
      "parents": [
        "e93a9cf79a3a91296c32b078f43cabbe00b0849f",
        "f83cf93618ffc6e8c90c50fe567ba9329946718d"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Mar 24 20:03:00 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Mar 24 20:03:00 2014 +0000"
      },
      "message": "Merge \"heat add HEAT_DEFERRED_AUTH option\""
    },
    {
      "commit": "3de6b0a7509973c662c4ae4dc1057e61dc434a98",
      "tree": "c5866c14605e95bfa8d488d7f28c60870a4d2680",
      "parents": [
        "116023f8e4a6857321a0ea245e91695e203541b0",
        "16aca8a37a23bd62b0047a12f67ed774f93e37c3"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Mar 21 18:58:21 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Mar 21 18:58:21 2014 +0000"
      },
      "message": "Merge \"Make configurable the creation of heat stack domain\""
    },
    {
      "commit": "f83cf93618ffc6e8c90c50fe567ba9329946718d",
      "tree": "ad6cb46038ae8983a6575310f2abe52f4703dfe9",
      "parents": [
        "fbedabde06b60b9c3110d07950403ffb17d2e878"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Wed Mar 12 16:54:01 2014 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Fri Mar 21 12:57:22 2014 +0000"
      },
      "message": "heat add HEAT_DEFERRED_AUTH option\n\nAdds a HEAT_DEFERRED_AUTH, defaulted to trusts, so users can\nby default take advantage of the heat trusts functionality\nwhich provides the following benefits:\n- Deferred operations (e.g autoscaling) work with token-only auth\n- The password field in the heat page of horizon can be made optional\n  (horizon patch pending)\n- It\u0027s more secure because heat no longers stores username/password\n  credentials in the DB, only a trust ID.\n\nThe previous behavior can be obtained by setting HEAT_DEFERRED_AUTH\nto something other than \"trusts\" - the value will only be set in\nthe heat.conf if the value of \"trusts\" is found, otherwise the\nheat.conf default will be used (currently \"password\" which doesn\u0027t\nuse trusts)\n\nChange-Id: I549f1e0071a082ac5d07d0f99db633f8337f3d87\nRelated-Bug: #1286157\n"
    },
    {
      "commit": "16aca8a37a23bd62b0047a12f67ed774f93e37c3",
      "tree": "24ef8a88e189f3a3daaa469f51dd08ec145f0d86",
      "parents": [
        "a508d1a00195b56b13aa3c89a2aa2e978ba33361"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Tue Mar 11 14:01:57 2014 +1300"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Mon Mar 17 15:52:40 2014 +1300"
      },
      "message": "Make configurable the creation of heat stack domain\n\nHeat has graceful fallback code if stack_user_domain is not configured.\n\nIt is important that this be configurable, for testing and for those who choose to\nnot run with a stack_user_domain yet.\n\nChange-Id: I08f017412636327853b3c606afd36ae93aa09288\n"
    },
    {
      "commit": "29870cce3214766ecc208d0bb404724cf232ad69",
      "tree": "e25707209d42fb7f9b93f91e7c1d4ee45b5b8a91",
      "parents": [
        "1fef36e526727b6057ba0d54049e07260a49b1f4"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean.dague@samsung.com",
        "time": "Fri Mar 14 14:32:01 2014 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean.dague@samsung.com",
        "time": "Fri Mar 14 14:32:01 2014 -0400"
      },
      "message": "as is_heat_enabled\n\nthis is missing, and the code assumes \"heat\" to be in the\nenabled services list otherwise.\n\nChange-Id: Ib0a7db04d8e38b58aca48261308e7c4d1fd43972\n"
    },
    {
      "commit": "2ca3bf18dd756621f012ebb7ffb338f2fa38d6f2",
      "tree": "ce2deb5a85b40978916cd3fa986e90e29f4a6627",
      "parents": [
        "57d478d87438912e1a33d4a2d00d4a300148e2fc"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Mon Mar 03 18:07:33 2014 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Mon Mar 03 18:18:43 2014 +0000"
      },
      "message": "Add heat_stack_owner role for heat trusts usage\n\nHeat supports deferred operations via keystone trusts,\nand we\u0027d like to make that the default.  To do this, we\nrequire a new role, which is the default role specified\nin heat.conf trusts_delegated_roles, heat_stack_owner.\n\nAdd the role to the admin/demo users so they can create\nheat stacks when we make deferred_auth_method\u003dtrusts the\ndefault.\n\nChange-Id: Idfc70ee89428c23f5965e643486ff2ad9566471c\nRelated-Bug: #1286157\n"
    },
    {
      "commit": "57d478d87438912e1a33d4a2d00d4a300148e2fc",
      "tree": "00434108a8928d87680ae3a9c4affc7e6c8a9a12",
      "parents": [
        "bd9dbef9329ef4dad0a5ecb3dca29dd9a282c2dc"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Fri Feb 28 16:37:43 2014 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Mon Mar 03 18:18:28 2014 +0000"
      },
      "message": "Move heat keystone setup into lib/heat\n\nMove the heat setup which currently happens in files/keystone_data.sh\nto lib/heat, where we have create_heat_accounts.\n\nMove the user, role, service and endpoint creation as that is consistent\nwith what other services, e.g lib/nova are doing.\n\nChange-Id: Iaa2c822cad581d6b2b4f22f8863daf81e25f8485\n"
    },
    {
      "commit": "aee18c749b0e3a1a3a6907a33db76ae83b8d41d9",
      "tree": "01a8ab5abb9867986f3e848918abd9e749b691cd",
      "parents": [
        "0ed4af02da0bd4a0f757dd8c2156913e6c7a724c"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Fri Feb 21 15:35:08 2014 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Fri Feb 28 07:59:03 2014 +1100"
      },
      "message": "Enforce function declaration format in bash8\n\nCheck that function calls look like ^function foo {$ in bash8, and fix\nall existing failures of that check.  Add a note to HACKING.rst\n\nChange-Id: Ic19eecb39e0b20273d1bcd551a42fe400d54e938\n"
    },
    {
      "commit": "1755f689e807cd73b7bb2c67ac0531afbc8c6448",
      "tree": "6af691384f6168441465f561b6ce7fd86c38151e",
      "parents": [
        "ebd1321fcbbd3a010798a5bb1aaab523b078b385"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Wed Feb 26 13:08:00 2014 -0600"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Wed Feb 26 13:08:04 2014 -0600"
      },
      "message": "Fix heat role create error\n\nhttps://review.openstack.org/#/c/76036/ changed the user creat commands,\nmissed the argument to --user\n\nChange-Id: Iaf10ef80a2fb0227dd66a314e7ec253dfb4dc4fe\n"
    },
    {
      "commit": "dd029da5b9b5600b8f6893247645db4fb0b95efe",
      "tree": "20f9ce2854dfda7b92fb59228b9284107ed9b041",
      "parents": [
        "f1eb0475d9320875f1a6c4a9c398e9388350d206"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Mon Feb 24 18:09:10 2014 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Tue Feb 25 11:25:55 2014 +0000"
      },
      "message": "Create stack_domain_admin user\n\nCreate an additional service user for Heat, which is a domain admin\nfor the stack_user_domain - this is necessary since the normal service\nuser cannot manage the projects/users in the stack_user_domain when\nkeystone is configured to use the v3cloudsample policy (such as in\ngate integration tests).\n\nChange-Id: If59c11a74145b9bd02f78a7e0882afe1b0a72e40\n"
    },
    {
      "commit": "8e1a1ffdfbf59e01688fd2e6e007ab72d49263ed",
      "tree": "4bb246e4ecd268891d62370a3b75ebaede3ea75a",
      "parents": [
        "5d920e02e30f375253ff9a5f6fef010c95c2fb4b"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Fri Feb 21 14:45:48 2014 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Fri Feb 21 14:51:28 2014 +0000"
      },
      "message": "Set stack_user_domain config correctly\n\nThe recently merged patch which creates a domain for heat\nfails to correctly set the domain ID in heat.conf, so move the\nsetting of the config option to immediately after we create the\ndomain.  Also add the missing DEFAULT section identifier in the\niniset, and use OS_TOKEN instead of OS_SERVICE token, because\nthe stack.sh comment says this is exported for the openstackclient\nworkaround.\n\nChange-Id: I912f774f1215d68cbcfe44229b371f318d92966a\nCloses-Bug: #1283075\n"
    },
    {
      "commit": "33d1f86a4931de76fba555a9a3f5e5fa3fd7c171",
      "tree": "87074babd899060c0d01bc09172506f0364c235c",
      "parents": [
        "824fac2cc740fa83086ac65ff8a5657eafbc1166"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Thu Feb 13 15:00:33 2014 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Sat Feb 15 07:45:55 2014 +0000"
      },
      "message": "Add support for creating heat stack domain\n\nThe Heat instance-users blueprint requires an additional domain\nwhere heat creates projects and users related to stack resources\nso add support for creating this domain when configured to install\nHeat.  Note a workaround is currently required to make the\nopenstack command work with the v3 keystone API.\n\nChange-Id: I36157372d85b577952b55481ca5cc42146011a54\n"
    },
    {
      "commit": "16dd8b3ed94d5cd217d22a26c18dca52bfca115e",
      "tree": "62994b309b39fc5d4920808f506e763feb3b6f07",
      "parents": [
        "e38cad092ff96dc0178a19fe6f33f13db99eebb0"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean.dague@samsung.com",
        "time": "Mon Feb 03 09:10:54 2014 +0900"
      },
      "committer": {
        "name": "Chmouel Boudjnah",
        "email": "chmouel@enovance.com",
        "time": "Wed Feb 05 07:52:54 2014 +0100"
      },
      "message": "introduce if/then \u0026 for/do rules\n\nwe mostly have a consistent style on if/then \u0026 for/do in devstack,\nexcept when we don\u0027t. This attempts to build a set of rules to\nenforce this.\n\nBecause there are times when lines are legitimately long, and there\nis a continuation, this starts off ignoring if and for loops with\ncontinuations. But for short versions, we should enforce this.\n\nChanges to make devstack pass are included. The fact that the\ncleanup patch was so small is pretty solid reason that this is\nactually the style we\u0027ve all agreed to.\n\nPart of a git stash from hong kong that I finally cleaned up.\n\nChange-Id: I6376d7afd59cc5ebba9ed69e5ee784a3d5934a10\n"
    },
    {
      "commit": "8664ca53f80849553043aba9663f7cb72a9cec42",
      "tree": "dc2ba7d79587b49210bd7093040242ac78f4fcc4",
      "parents": [
        "78ab80e5589a7df21a03f06f38c4bae3e79bf756"
      ],
      "author": {
        "name": "Attila Fazekas",
        "email": "afazekas@redhat.com",
        "time": "Sun Feb 02 10:07:39 2014 +0100"
      },
      "committer": {
        "name": "Attila Fazekas",
        "email": "afazekas@redhat.com",
        "time": "Sun Feb 02 10:50:54 2014 +0100"
      },
      "message": "bash_completion for heat and ceilometer\n\nInstalling bash completion for heat and ceilometer by using a\nsimilar way used with other services.\n\nChange-Id: I5094648272f2666f6bff181bfa3aeb35e863bd97\n"
    },
    {
      "commit": "4237f590b7b93117e59f9f777bc70d212969f61a",
      "tree": "d7ce919c2979323408fa137fd13db738eb962a7f",
      "parents": [
        "b160640d47446bf379b3299460c4e76cb6e6c7c6"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Wed Jan 29 16:22:11 2014 -0600"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Wed Jan 29 17:25:45 2014 -0600"
      },
      "message": "Generate Tempest service list rather than hard-code it\n\nThe list of services that Tempest used to set its \u0027service_available\u0027\nconfig values was hard-coded. To be plugin-friendly have each\nservice (project) add its name to the TEMPEST_SERVICES variable\nand use that for setting the \u0027service_avilable\u0027 values.\n\nChange-Id: I208efd7fd0798b18ac2e6353ee70b773e84a2683\n"
    }
  ],
  "next": "e61bc61a31ba05c9af5d0801d2f120e919e0bd5f"
}
