)]}'
{
  "log": [
    {
      "commit": "c626457f9546968d726df6499527001710e9efc1",
      "tree": "e1b16a692484cbcf74d34e1949e974de14b02f46",
      "parents": [
        "5a4f09ade63262ad7fe0f4c9a22af8a1e588e74d"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Wed Jul 01 12:14:25 2015 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Tue Nov 22 18:35:17 2016 +0800"
      },
      "message": "Allow \u0027mac_address\u0027 updatable for neutron port\n\nSupport \u0027mac_address\u0027 updatable for neutron port.\n\nChange-Id: Ia2347bc348686400dd12a017daca2452ed677a63\nCloses-Bug: #1437128\n"
    },
    {
      "commit": "5a4f09ade63262ad7fe0f4c9a22af8a1e588e74d",
      "tree": "112e28f58a8a17377103ebc643f12145977470d4",
      "parents": [
        "b8259274093ce91aea7d873cbf45982d66ac123d",
        "fa535cfeda40212af56f237c8c39daf184aed862"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Nov 09 02:21:54 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Nov 09 02:21:54 2016 +0000"
      },
      "message": "Merge \"m1.tiny is not always there\""
    },
    {
      "commit": "fa535cfeda40212af56f237c8c39daf184aed862",
      "tree": "f971c77d76a2f3e9153ee350240ec611e94b0508",
      "parents": [
        "f9681be6a16a087fb642a3949d8d1d592f165e0f"
      ],
      "author": {
        "name": "Amit Ugol",
        "email": "amit.ugol@gmail.com",
        "time": "Thu Nov 03 13:15:29 2016 +0200"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Tue Nov 08 05:19:10 2016 +0000"
      },
      "message": "m1.tiny is not always there\n\nm1.tiny flavor is hard coded to some tests.\nThis flavor is not always there, for instance if I don\u0027t use devstack.\nheat_integrationtests/prepare_test_env.sh creates m1.heat_int flavor\nwhich is the same size as m1.tiny according to the document at\nadmin-guide/cli-manage-flavors.html\n\nChange-Id: I36524e069eacb36c7e6e7e0297c600ee68be88d6\n"
    },
    {
      "commit": "b8259274093ce91aea7d873cbf45982d66ac123d",
      "tree": "c23652092ab6c9bdb7e63125a8ade07a30ff83ad",
      "parents": [
        "f9681be6a16a087fb642a3949d8d1d592f165e0f"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Mon Aug 29 14:08:15 2016 +0200"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Wed Nov 02 10:20:05 2016 +0000"
      },
      "message": "Speed up lbaasv2 test\n\nIf we reached the number of expected responses, return in the loop that\ncheck for lbaas.\n\nChange-Id: Ic18e5589a70b10aefabe22cb51891478500e8128\nRelated-Bug: #1617992\n"
    },
    {
      "commit": "f9681be6a16a087fb642a3949d8d1d592f165e0f",
      "tree": "9a2f8b479f6c08c2ee053a4746ce9fa9870beae7",
      "parents": [
        "ac474e8afe3fadb6a4b906d0fdb681607dbff05f"
      ],
      "author": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Wed Sep 07 09:08:50 2016 +0530"
      },
      "committer": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Wed Oct 05 16:00:14 2016 +0530"
      },
      "message": "Resolve all functions before RESOLVE translation\n\nAs functions can be inside other functions, there is no\npoint in checking for specific functions that can be\ntemplate specific. Better to resolve all before\ntranslating.\n\nThis also adds a functional test to avoid breaking this\nin the future.\n\nChange-Id: I5f72f7455384b3fd5650bd01e77e64bf485dd178\nPartial-Bug: #1620859\n"
    },
    {
      "commit": "ac474e8afe3fadb6a4b906d0fdb681607dbff05f",
      "tree": "1ecd0f33e2723b5a17e2450339c3e0d441ba31ce",
      "parents": [
        "c333f76918990d1ea432b2b74baa90c375ea4bf4"
      ],
      "author": {
        "name": "zhufl",
        "email": "zhu.fanglei@zte.com.cn",
        "time": "Wed Sep 21 10:11:49 2016 +0800"
      },
      "committer": {
        "name": "zhufl",
        "email": "zhu.fanglei@zte.com.cn",
        "time": "Fri Sep 30 10:56:31 2016 +0800"
      },
      "message": "Remove unnecessary setUp and tearDown\n\nsetUp and tearDown will be automatically called around each\ntestcase, so this is to remove setUp and tearDown that doing\nnothing additional than super to keep code clean.\n\nChange-Id: I8b6943602419d3f360991721d90b61888b55ea60\n"
    },
    {
      "commit": "c333f76918990d1ea432b2b74baa90c375ea4bf4",
      "tree": "88634d723f2b2bf733ad893257ec1c3feaa7994a",
      "parents": [
        "8def93912b126ff4755b215d663433be6a9c7583"
      ],
      "author": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Thu Sep 29 08:34:03 2016 +0530"
      },
      "committer": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Thu Sep 29 12:18:17 2016 +0530"
      },
      "message": "Use minimal image wherever possible\n\nThis changes most of the tests to use minimal image. There are\nnow two tests left that use fedora image.\n\n[1] SoftwareConfigIntegrationTest.test_server_software_config\n[2] CfnInitIntegrationTest.test_server_cfn_init\n\nOut of which [1] is already disabled at the gate.\n\nChange-Id: I309989de1e5584f3e345213c4b62893159365973\nRelated-Bug: #1628302\n"
    },
    {
      "commit": "8def93912b126ff4755b215d663433be6a9c7583",
      "tree": "93fe17ba05f02da98fd7886e41de3e9dd9ca51d2",
      "parents": [
        "7cb6bb7fa2c1ebb65f04d2c811a6b6b06c00d73a",
        "62c6360660e21d00c80d2b359f70e57423052f0c"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Sep 28 03:44:24 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Sep 28 03:44:24 2016 +0000"
      },
      "message": "Merge \"Add a new HOT template version for Ocata\""
    },
    {
      "commit": "7cb6bb7fa2c1ebb65f04d2c811a6b6b06c00d73a",
      "tree": "2506c57f9bc72ec17fa59506f33e0b8c856e7ed5",
      "parents": [
        "d075e22192a29af8d373b635d9a6045063b50518",
        "0e8567efab4749065be00a1eee6db6f071db324d"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Sep 23 06:39:21 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Sep 23 06:39:21 2016 +0000"
      },
      "message": "Merge \"Wait for deletion_time in integration tests\""
    },
    {
      "commit": "d075e22192a29af8d373b635d9a6045063b50518",
      "tree": "632a3250e84cb5bdf3332ea5f345fe3829bd4f03",
      "parents": [
        "fc2c58fd0eeaa217591846ef1dc6f39f1ca6028c"
      ],
      "author": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Thu Sep 22 09:44:56 2016 -0400"
      },
      "committer": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Thu Sep 22 09:45:08 2016 -0400"
      },
      "message": "Increase the timeout for the stop_stack message\n\nPreviously, the stop_stack message accidentally used the\nengine_life_check_timeout (by default, 2s). But unlike other messages sent\nusing that timeout, stop_stack needs to synchronously kill all running\nthreads operating on the stack. For a very large stack, this can easily\ntake much longer than a couple of seconds. This patch increases the timeout\nto give a better chance of being able to start the delete.\n\nChange-Id: I4b36ed7f1025b6439aeab63d71041bb2000363a0\nCloses-Bug: #1499669\n"
    },
    {
      "commit": "0e8567efab4749065be00a1eee6db6f071db324d",
      "tree": "c5afd079a0e17d8be56378a59ee307aeb7634c89",
      "parents": [
        "fc2c58fd0eeaa217591846ef1dc6f39f1ca6028c"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Thu Sep 22 15:07:37 2016 +0200"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Thu Sep 22 15:20:07 2016 +0200"
      },
      "message": "Wait for deletion_time in integration tests\n\nWhen we check for DELETE_COMPLETE, we can have a window where the stack\nis mark as such but without deletion_time. Let\u0027s wait for that\ninformation.\n\nChange-Id: Ia8c225aab8b0f118e99963fc22341d743e9182a1\nCloses-Bug: #1625661\n"
    },
    {
      "commit": "62c6360660e21d00c80d2b359f70e57423052f0c",
      "tree": "c8dff0ab9d313e61139f3606a997c3f1c47e83e3",
      "parents": [
        "fc2c58fd0eeaa217591846ef1dc6f39f1ca6028c"
      ],
      "author": {
        "name": "ricolin",
        "email": "rico.l@inwinstack.com",
        "time": "Wed Sep 21 15:23:10 2016 +0800"
      },
      "committer": {
        "name": "ricolin",
        "email": "rico.l@inwinstack.com",
        "time": "Thu Sep 22 09:34:07 2016 +0800"
      },
      "message": "Add a new HOT template version for Ocata\n\nAdd new template version `heat_template_version.2017-02-24`, and\nadd version `heat_template_version.ocata` refering to\n`heat_template_version.2017-02-24`.\n\nChange-Id: Ic89fc1a02988091dd2833cc50abee61edfabbb00\n"
    },
    {
      "commit": "fc2c58fd0eeaa217591846ef1dc6f39f1ca6028c",
      "tree": "13eb3aeba69252c667a98fdff8a14c6a14a784b9",
      "parents": [
        "a7b6c6704e9375df4acad64adbef4806dd2d78d6"
      ],
      "author": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Fri Apr 29 17:03:17 2016 +0300"
      },
      "committer": {
        "name": "Anant Patil",
        "email": "anant.patil@hpe.com",
        "time": "Tue Sep 20 12:00:54 2016 +0000"
      },
      "message": "Fix cancel update for nova server with defined port\n\nThis particular patch fixes a behaviour of cancel update for\nnova server with defined port, so there are no ports manageable\nby nova. We have these issues while restoring ports after rollback:\n1) We doesn\u0027t detach any ports from current server, because we\ndoesn\u0027t save them to resoruce data. (we store this data after\nsuccesfull create of the server)\n2) Detaching an interface from current server will fail, if the server\nwill be in building state, so we need to wait until server will be\nin active or in error state.\nRefresh ports list to solve problem (1).\nWait until nova moves to active/error state to solve (2).\nA functional test to prove the fix was added. Note, that this test is\nskipped for convergence engine tests until cancel update will work\nproperly in convergence mode (see bug 1533176).\nPartial-Bug: #1570908\nChange-Id: If6fd916068a425eea6dc795192f286cb5ffcb794\n"
    },
    {
      "commit": "a7b6c6704e9375df4acad64adbef4806dd2d78d6",
      "tree": "8c02b8790d6e7cb1f881b3cb02df22c0a9b60c8c",
      "parents": [
        "580fd551505665a78dc12681c0a2fbd570597817",
        "1a977c62f116b25f1759d32d2f0a7a69d56f8f3a"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Sep 14 22:43:56 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Sep 14 22:43:56 2016 +0000"
      },
      "message": "Merge \"Allow referencing conditions by name\""
    },
    {
      "commit": "580fd551505665a78dc12681c0a2fbd570597817",
      "tree": "788b62fac088c082a853e68b4fe6873444cde9c8",
      "parents": [
        "81ca6bc2e8759170c0a98fffd9b749fc17aa009e",
        "a9b5aafe974b97abdc206e84b620e76bfe374a8f"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Sep 13 07:58:47 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Sep 13 07:58:47 2016 +0000"
      },
      "message": "Merge \"Copy correct definition to the backup stack\""
    },
    {
      "commit": "1a977c62f116b25f1759d32d2f0a7a69d56f8f3a",
      "tree": "30600e1e2b0a4ca144a0a0bc29617b9038121d3d",
      "parents": [
        "a9b5aafe974b97abdc206e84b620e76bfe374a8f"
      ],
      "author": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Thu Sep 08 15:37:51 2016 -0400"
      },
      "committer": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Mon Sep 12 21:39:01 2016 -0400"
      },
      "message": "Allow referencing conditions by name\n\nThis change allows reference with other conditions by name in\ndefinition of a condition, something like:\n   conditions:\n     cd1: {equals: [{get_param: env_type}, \u0027prod\u0027]}\n     cd2: {not: cd1}\n     cd3: {equals: [{get_param: zone}, \u0027fujian\u0027]}\n     cd4: {and: [cd1, cd3]}\n\nChange-Id: I6a0a00c23aa7d559dedd6998adaa7962d607f315\nCo-Authored-By: huangtianhua \u003chuangtianhua@huawei.com\u003e\nBlueprint: support-conditions-function\nRelated-Bug: #1621529\n"
    },
    {
      "commit": "a9b5aafe974b97abdc206e84b620e76bfe374a8f",
      "tree": "4a54ec28576db37376f8176f0b2a9c3e391286dc",
      "parents": [
        "ee582d9169eae3273114cc554c4b425418508573"
      ],
      "author": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Mon Sep 12 20:51:52 2016 -0400"
      },
      "committer": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Mon Sep 12 20:51:52 2016 -0400"
      },
      "message": "Copy correct definition to the backup stack\n\nWe were using the definition of the existing resource, immediately after\nupdating it in place, to copy to the backup stack. This turns out to be\nincorrect, because the definition of the new resource is only copied to the\nexisting resource if it was actually updated. It doesn\u0027t follow that the\nexisting resource\u0027s definition must be the same, because it\u0027s actually the\nfrozen definition (using the stored property values from the DB) that\u0027s\ncompared with the new definition when deciding to update. The existing\ndefinition might well be rubbish if a previous update is failed, because it\ndoes not get updated in the existing template after the resource is updated\nin place. This caused bug 1622795 when combined with the new conditionals\nfeature.\n\nWe were also using the wrong template to do the parsing in both cases: when\nupdating in-place we are passing the new definition, but we were reparsing\nusing the existing template. And we were effectively doing the same when\ncreating a new resource, because we accessed the template through the new\nresource only *after* it had been moved to the existing stack. In both\ncases the correct code would have been:\n\n  definition \u003d new_res.t.reparse(self.previous_stack,\n                                 new_res.stack.t)\n\nHowever, there\u0027s no actual need to reparse the resource definitions before\npassing them to Template.add_resource(), because that method immediately\ncalls render_hot() to get back to the unparsed definition anyway. So just\ndon\u0027t bother. These issues have been requiring us up until now to cache the\nconditionals from the new_stack in the Template, to prevent the reparsing\nfrom looking at the wrong set of conditionals. This change relieves us of\nthat restriction.\n\nFinally, change the debug error messages to distinguish this case (copying\na resource definition into the backup template) from \"backing up\" a\nresource (moving an actual physical resource into the backup stack).\n\nChange-Id: I7be92f2e1b812c23fa52d87c18c7f22f1be94446\nCloses-Bug: #1622795\n"
    },
    {
      "commit": "81ca6bc2e8759170c0a98fffd9b749fc17aa009e",
      "tree": "cac13842181d26787073a4e9d8131173bec9fc09",
      "parents": [
        "d448dae926dd02f07420031e1dcf7edf5e5ffe0a"
      ],
      "author": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Thu Jun 16 15:09:20 2016 +0530"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Tue Sep 13 00:38:35 2016 +0000"
      },
      "message": "Add functional test for SDG rolling_update\n\nAdds functional test for SoftwareDeploymentGroup\nrolling_update.\n\nChange-Id: Id575765d52c84e3c29f443a18417b5f14d9331cc\n"
    },
    {
      "commit": "d448dae926dd02f07420031e1dcf7edf5e5ffe0a",
      "tree": "1b344bbd51b6528c3415fa3282ec1bebaf24f14e",
      "parents": [
        "ee582d9169eae3273114cc554c4b425418508573"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Tue Jun 14 14:57:28 2016 +0100"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Mon Sep 12 07:25:26 2016 +0000"
      },
      "message": "Add test for SoftwareDeploymentGroup resource\n\nAdds an initial test which tests create/delete for this resource,\nand that signalling works.\n\nAlso tests deleting an in-progress stack as this has been a repeated\nsource of bugs related to deleting the child stack correctly.\n\nChange-Id: I0d5acdca50467da344388d6c262e61aaaaae22eb\nRelated-Bug: #1592374\n"
    },
    {
      "commit": "ee582d9169eae3273114cc554c4b425418508573",
      "tree": "c64b01bdb8cdf2dd1ccb8aef50b56b5ac1bf3aa2",
      "parents": [
        "63d7aadb342b1193f3e6fb3a18a637d6d8b982fb"
      ],
      "author": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Thu Sep 08 11:33:46 2016 -0400"
      },
      "committer": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Thu Sep 08 11:37:19 2016 -0400"
      },
      "message": "Revert \"Allow reference conditions by name\"\n\nThis reverts commit 4a8ad39a3881c0743916f016b4763015946f127d.\n\nThere was no protection against circular references causing infinite\nrecursion.\n\nChange-Id: I35226420c458474e75716591d587e73a82e75688\nCloses-Bug: #1621529\n"
    },
    {
      "commit": "63d7aadb342b1193f3e6fb3a18a637d6d8b982fb",
      "tree": "ee4e13602efa80559b0381b066f627b309a2dbdb",
      "parents": [
        "b23ce1a0d1ffb8921e98d1e2a1647f98b8e5a455",
        "e436574be1c14199a9b746df8bb6dadca023c276"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Sep 07 10:10:59 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Sep 07 10:10:59 2016 +0000"
      },
      "message": "Merge \"Allow reference conditions by name\""
    },
    {
      "commit": "e436574be1c14199a9b746df8bb6dadca023c276",
      "tree": "29d06d106ba1b1823515d7dbf15f3c1afc1dfa66",
      "parents": [
        "26da898323d23bc3a8a31944e1e0c7e9d19ed983"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Tue Aug 30 10:27:21 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Tue Sep 06 09:10:46 2016 +0800"
      },
      "message": "Allow reference conditions by name\n\nThis change allows reference with other conditions by name in\ndefinition of a condition, something like:\n   conditions:\n     cd1: {equals: [{get_param: env_type}, \u0027prod\u0027]}\n     cd2: {not: cd1}\n     cd3: {equals: [{get_param: zone}, \u0027fujian\u0027]}\n     cd4: {and: [cd1, cd3]}\n\nChange-Id: I4fbc3839977d2d4299d65d4d56e3d41d56d07aef\nBlueprint: support-conditions-function\n"
    },
    {
      "commit": "b23ce1a0d1ffb8921e98d1e2a1647f98b8e5a455",
      "tree": "c64b01bdb8cdf2dd1ccb8aef50b56b5ac1bf3aa2",
      "parents": [
        "790ae6edef58da15be8d68035c397198d23efbcd",
        "2b642c20bcaf1159035faacb90dcbf9e5d0caba2"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Sep 05 10:39:01 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Sep 05 10:39:01 2016 +0000"
      },
      "message": "Merge \"Modify use of assertTrue(A in B)\""
    },
    {
      "commit": "790ae6edef58da15be8d68035c397198d23efbcd",
      "tree": "a39fc645ee960a6dcfec65a921d1fc803ce908a6",
      "parents": [
        "26da898323d23bc3a8a31944e1e0c7e9d19ed983",
        "945e14bd70b23af86889b3d1046921f76c099347"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Sat Sep 03 06:04:39 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sat Sep 03 06:04:39 2016 +0000"
      },
      "message": "Merge \"Non-destructive upgrade for deprecated resources\""
    },
    {
      "commit": "2b642c20bcaf1159035faacb90dcbf9e5d0caba2",
      "tree": "66b15d644163d60bcb241f2bbcc3f88d27e5ab2d",
      "parents": [
        "26da898323d23bc3a8a31944e1e0c7e9d19ed983"
      ],
      "author": {
        "name": "Bin Zhou",
        "email": "zhou.bin9@zte.com.cn",
        "time": "Fri Sep 02 13:10:32 2016 +0800"
      },
      "committer": {
        "name": "Bin Zhou",
        "email": "zhou.bin9@zte.com.cn",
        "time": "Fri Sep 02 08:30:00 2016 +0000"
      },
      "message": "Modify use of assertTrue(A in B)\n\nDevelopers should use assertIn(A, B) instead of assertTrue(A in B ).\n\nTrivialFix\n\nChange-Id: I6f2b33e73ff3ebf28a681021d58c9b2485a016fd\n"
    },
    {
      "commit": "945e14bd70b23af86889b3d1046921f76c099347",
      "tree": "1d41e591448297f09331b8e3c02d6bea53050fa0",
      "parents": [
        "fb8b51fd112ef49e7af29a4cced766aab7309523"
      ],
      "author": {
        "name": "ricolin",
        "email": "rico.l@inwinstack.com",
        "time": "Sun Apr 03 17:34:52 2016 +0800"
      },
      "committer": {
        "name": "ricolin",
        "email": "rico.l@inwinstack.com",
        "time": "Fri Sep 02 13:09:11 2016 +0800"
      },
      "message": "Non-destructive upgrade for deprecated resources\n\nIf you attempt to update a stack containing\nOS::Heat::SoftwareDeployments resources, so it uses the new\nnon-deprecated OS::Heat::SoftwareDeploymentGroup type instead, it\ndeletes the group, and all of the deployments.\n\nThis means that any deployment \"actions\" property will be\nmisinterpreted, e.g if you have actions: CREATE, all the deployments\nwill re-run on the update, even though it\u0027s an update, not a create.\n\nThis issue exists on all deprecated resoruces, when we trying to upgrade\nto new version of it by update.\n\nThis patch fix above update issue by check if resoruce was deprecated\nand been update by replacing resource (which is the parent class of\nexisting resource).\n\nChange-Id: Ib7880120a90c4497a7ceea53eee55c220a28d14e\nCloses-Bug: #1528958\n"
    },
    {
      "commit": "26da898323d23bc3a8a31944e1e0c7e9d19ed983",
      "tree": "70ba064d9c57358c1df44cd43d84987ff3323b64",
      "parents": [
        "d02f2d59f24f345425221acc7779e75fb3f467a1"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Wed Jul 27 18:11:58 2016 +0800"
      },
      "committer": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Mon Aug 29 14:31:19 2016 -0400"
      },
      "message": "Provide \u0027or\u0027 function\n\nProvides condition function \u0027or\u0027 for templates:\nAWSTemplateFormatVersion.2010-09-09\nheat_template_version.2016-10-14\n\nChange-Id: I6888453404a2cba5127e5d89f7445c5dfe2b7a37\nBlueprint: support-conditions-function\n"
    },
    {
      "commit": "d02f2d59f24f345425221acc7779e75fb3f467a1",
      "tree": "c942542bf56a0661f1bd7e4f0d5093539249d726",
      "parents": [
        "7bdc751e1a79117e8e3bff8703fb18e1bc2ba15c",
        "78d0993b19b1aa0a0a300e195c810e9d9d07d1b7"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Aug 29 13:10:46 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Aug 29 13:10:46 2016 +0000"
      },
      "message": "Merge \"Add functional test coverage for files API\""
    },
    {
      "commit": "7bdc751e1a79117e8e3bff8703fb18e1bc2ba15c",
      "tree": "5c6e2a1a9e8f89c62207400026a863f66900994f",
      "parents": [
        "bf63fcb0fee04cef93051aee564d7b704f21e87a"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Fri Jun 17 09:25:38 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Fri Aug 26 01:44:24 2016 +0000"
      },
      "message": "Provide \u0027and\u0027 function\n\nProvides condition function \u0027and\u0027 for templates:\nAWSTemplateFormatVersion.2010-09-09\nheat_template_version.2016-10-14\n\nBlueprint: support-conditions-function\nChange-Id: I7a9a10b871f50a5a2885adc72d60d626f960557c\n"
    },
    {
      "commit": "bf63fcb0fee04cef93051aee564d7b704f21e87a",
      "tree": "16a4e76d2219afa23e1b802108547c207abee95a",
      "parents": [
        "fb8b51fd112ef49e7af29a4cced766aab7309523"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Wed Jul 27 13:02:39 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Thu Aug 25 01:14:34 2016 +0000"
      },
      "message": "Provides \u0027not\u0027 condition function\n\nSupport \u0027not\u0027 and \u0027Fn::Not\u0027 for templates:\nAWSTemplateFormatVersion.2010-09-09\nheat_template_version.2016-10-14\n\nChange-Id: I6a9c89a23160a2cf06c37677871bcfbfab9599be\nBlueprint: support-conditions-function\n"
    },
    {
      "commit": "fb8b51fd112ef49e7af29a4cced766aab7309523",
      "tree": "699e32e47331a811eb54254f8304cfe8b30716bd",
      "parents": [
        "27075a9f07dc96e6cc3babc97e070090255065e5"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Tue Feb 23 17:03:10 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Thu Aug 25 01:14:14 2016 +0000"
      },
      "message": "Provides \u0027if\u0027 intrinsic function\n\nProvides condition function \u0027if\u0027 for templates:\nAWSTemplateFormatVersion.2010-09-09\nheat_template_version.2016-10-14\n\nChange-Id: I34c342de176bc87c9cde41aa32478e386f045422\nBlueprint: support-conditions-function\n"
    },
    {
      "commit": "27075a9f07dc96e6cc3babc97e070090255065e5",
      "tree": "e37b0c24ef2ea31cdeb5a2d709dee7e087f0790a",
      "parents": [
        "ba05659222bd36d55ceac966a2961966f2dc247b"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Tue Jul 26 14:32:40 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Thu Aug 25 09:10:33 2016 +0800"
      },
      "message": "Support condition for output\n\nProvides output condition for cfn/hot templates,\nif the condition of output evaluates to false, will\nset output value to None.\n\nChange-Id: I0398e39541a4176ef5699331c10536c59f1cb3e7\nBlueprint: support-conditions-function\n"
    },
    {
      "commit": "ba05659222bd36d55ceac966a2961966f2dc247b",
      "tree": "5e0cfcc76c3c5cc0614c0168af06b2a22dcb2500",
      "parents": [
        "a8d24d5dc4ec9f8771e41ad101d1974f4588fd7c",
        "99a25de95b97afd753c44a590e6bcf5c5f687d72"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Aug 25 00:39:02 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Aug 25 00:39:02 2016 +0000"
      },
      "message": "Merge \"Support condition for resource\""
    },
    {
      "commit": "78d0993b19b1aa0a0a300e195c810e9d9d07d1b7",
      "tree": "fd03607e48f653b339fc7437bb8c6b512d18fb53",
      "parents": [
        "a8d24d5dc4ec9f8771e41ad101d1974f4588fd7c"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Tue Jul 12 14:04:06 2016 +0100"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Wed Aug 24 14:22:36 2016 +0000"
      },
      "message": "Add functional test coverage for files API\n\nAdds simple validation of the new files API to an existing\ntest\n\nChange-Id: Ibd94532fad216516e98bbd859547f8d8f8f851fa\nblueprint: files-show\nDepends-On: Ib7d033a660fe294bf3f7b42e4aa7020149ce24c1\n"
    },
    {
      "commit": "a8d24d5dc4ec9f8771e41ad101d1974f4588fd7c",
      "tree": "6bd7fc6f616295beb969bffb03a6a63ef6753dfc",
      "parents": [
        "82427771c6f48e19012687ace7e8060a0a027339",
        "ae90e13ccc23fb4f4626b12770608cd3bd5f4171"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Aug 24 14:12:43 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Aug 24 14:12:43 2016 +0000"
      },
      "message": "Merge \"Run heat_integrationtests as a tempest plugin\""
    },
    {
      "commit": "99a25de95b97afd753c44a590e6bcf5c5f687d72",
      "tree": "b781cb8c09921eb63262b2b9d24ac8a3662ae0d5",
      "parents": [
        "82427771c6f48e19012687ace7e8060a0a027339"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Tue Jul 26 10:58:33 2016 +0800"
      },
      "committer": {
        "name": "Sergey Kraynev",
        "email": "skraynev@mirantis.com",
        "time": "Wed Aug 24 09:57:07 2016 +0000"
      },
      "message": "Support condition for resource\n\nSupport condition section in resource definition.\n\nChange-Id: Ic63debbf71c158e397ca3d9b9047eafdd598830b\nBlueprint: support-conditions-function\nCloses-Bug: #1605485\n"
    },
    {
      "commit": "82427771c6f48e19012687ace7e8060a0a027339",
      "tree": "ab34c466e3a9263e1171f943a835ea0659e857cb",
      "parents": [
        "06fec6df4a52e3f825cd692e9ed8d7e3ab2b0606",
        "a887b63b96357fae64c52b2c2e06cd832c65904c"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Aug 24 09:46:35 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Aug 24 09:46:35 2016 +0000"
      },
      "message": "Merge \"Do not use env var conf defaults\""
    },
    {
      "commit": "06fec6df4a52e3f825cd692e9ed8d7e3ab2b0606",
      "tree": "18651d7a7ced73ebb109eba83e67ea8642f7cd7c",
      "parents": [
        "772ccfd1fff975fb177189853cd61b228b3b27ba",
        "21904b5519255d3ff246b0be6e72a8a1be38a468"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Aug 23 06:54:29 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Aug 23 06:54:29 2016 +0000"
      },
      "message": "Merge \"Use tempest.conf when running under tempest\""
    },
    {
      "commit": "772ccfd1fff975fb177189853cd61b228b3b27ba",
      "tree": "8facc0343c967710e597dc92f310c4e9a5d249b8",
      "parents": [
        "8e5bce5de21ab2da485254cdfb727f8e99d0edd7",
        "b752e91f94a8b1949da8298803d37142b1b88fc9"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Aug 22 06:41:47 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Aug 22 06:41:47 2016 +0000"
      },
      "message": "Merge \"Don\u0027t manipulate config for admin creds\""
    },
    {
      "commit": "8e5bce5de21ab2da485254cdfb727f8e99d0edd7",
      "tree": "7b810f1cd571a6c38be539448ff2c5234f8981d2",
      "parents": [
        "f61390f8c6feb86fc01df433fa897adff34b3720",
        "39ed19e28f804ff2e2ef33b3fa95d9d649704b93"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Aug 22 06:41:38 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Aug 22 06:41:38 2016 +0000"
      },
      "message": "Merge \"Register heat tempest plugin\""
    },
    {
      "commit": "ae90e13ccc23fb4f4626b12770608cd3bd5f4171",
      "tree": "e4b4cc2c9b3a1172cd207bf82e41cd2bae0c2730",
      "parents": [
        "a887b63b96357fae64c52b2c2e06cd832c65904c"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Sat Aug 13 09:53:07 2016 +1200"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Sat Aug 13 09:53:07 2016 +1200"
      },
      "message": "Run heat_integrationtests as a tempest plugin\n\ncompletes blueprint tempest-plugin-support\n\nChange-Id: I0109e68bb135cd257e2fff74e75575a7e2f91539\n"
    },
    {
      "commit": "a887b63b96357fae64c52b2c2e06cd832c65904c",
      "tree": "7eeb6e18f989345630ba3bfdbba904f6a1eed7f6",
      "parents": [
        "21904b5519255d3ff246b0be6e72a8a1be38a468"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Sat Aug 13 09:52:41 2016 +1200"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Sat Aug 13 09:52:41 2016 +1200"
      },
      "message": "Do not use env var conf defaults\n\nFalling back to environment variable credentials is convenient for\ndevelopment but could lead to unexpected credentials being used during\ntests. Also this is not a known practice for tempest tests.\n\nThis change removes the env var defaults and explicitly sets the\ncredentials to use in prepare_test_env.sh.\n\nPre and post grenade tests also get their config from the conf file\nrather than the environment.\n\nblueprint tempest-plugin-support\n\nChange-Id: Icf9fb4c58ed11483106c2b62d1e1093223f7dc51\n"
    },
    {
      "commit": "21904b5519255d3ff246b0be6e72a8a1be38a468",
      "tree": "f3adb14719f3d18fcbdf364752415dad68e4490b",
      "parents": [
        "b752e91f94a8b1949da8298803d37142b1b88fc9"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Mon Aug 01 00:36:02 2016 +0000"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Sat Aug 13 09:51:11 2016 +1200"
      },
      "message": "Use tempest.conf when running under tempest\n\nThis change switches to a global config for heat_integrationtests, and\nmakes that global config the tempest config when running under\ntempest.\n\nAfter the transition to tempest init_conf won\u0027t be required at all.\n\nblueprint tempest-plugin-support\n\nChange-Id: Id22e7a03601db5adfc0b428004a75990278369a6\n"
    },
    {
      "commit": "b752e91f94a8b1949da8298803d37142b1b88fc9",
      "tree": "e77b09afb30af714f84fbda27457fb7cd2ceae8e",
      "parents": [
        "39ed19e28f804ff2e2ef33b3fa95d9d649704b93"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Mon Aug 01 22:05:37 2016 +0000"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Sat Aug 13 09:51:11 2016 +1200"
      },
      "message": "Don\u0027t manipulate config for admin creds\n\nSoon this will be global tempest config, so modifying it is not an\noption.\n\nInstead the client manager can now be replaced with one which uses admin\ncredentials when setup_clients_for_admin is called.\n\nblueprint tempest-plugin-support\n\nChange-Id: I9c1b80ec2048d227cc99c06808da90745fcf516e\n"
    },
    {
      "commit": "39ed19e28f804ff2e2ef33b3fa95d9d649704b93",
      "tree": "8a123a81fe0a88c1856551b08da6f147b0274201",
      "parents": [
        "bc0c08c101508b4b85ade4a088203e1a56daabbc"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Mon Aug 01 00:55:34 2016 +0000"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Sat Aug 13 09:51:11 2016 +1200"
      },
      "message": "Register heat tempest plugin\n\nThis allows heat_integrationtests tests to be run with the current\nmethod *or* with the tempest runner. To run with tempest, configure\nheat_integrationtests/heat_integrationtests.conf as before, then add\nthe following to the configured tempest.conf:\n\n  [service_available]\n  heat_plugin \u003d True\n\nThen run with tempest, for example\n\n  tempest run --regex heat_integrationtests\n\nThe next step will be for tempest runs to take configuration values\nfrom tempest.conf rather than heat_integrationtests.conf\n\nblueprint tempest-plugin-support\n\nChange-Id: I920a6616dbd79092d5bf9a8c4f48da2f94c0a326\n"
    },
    {
      "commit": "f61390f8c6feb86fc01df433fa897adff34b3720",
      "tree": "dcfa3f58ee414579bf37d51dd01c1ceadf37e6e3",
      "parents": [
        "bc0c08c101508b4b85ade4a088203e1a56daabbc"
      ],
      "author": {
        "name": "ricolin",
        "email": "rico.l@inwinstack.com",
        "time": "Wed Jul 20 10:36:07 2016 +0800"
      },
      "committer": {
        "name": "ricolin",
        "email": "rico.l@inwinstack.com",
        "time": "Fri Aug 12 15:59:14 2016 +0800"
      },
      "message": "Add support for a resource level external_id\n\nThis adds support for the following to the template:\n heat_template_version: 2016-10-14\n resources:\n   ...\n   res_a:\n     type: OS::Nova::Server\n     external_id: the-new-server-id\n     properties:\n     ...\n\nCo-Authored-By: Rico Lin \u003crico.l@inwinstack.com\u003e\n\nblueprint external-resources\nChange-Id: I8fda1380504d1d8b1e96649bf20b86d6309fdeca\n"
    },
    {
      "commit": "bc0c08c101508b4b85ade4a088203e1a56daabbc",
      "tree": "d64f67befcc5d41e48a6d0c883c13d3b111480c6",
      "parents": [
        "6dc6486b57ff3fecba7ae0de68ca42d60e4cdf5e",
        "dc769c35c9c5b095bcc5c126f33653246cbfb392"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Aug 11 22:32:03 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Aug 11 22:32:03 2016 +0000"
      },
      "message": "Merge \"Adopt tempest plugin config namespace\""
    },
    {
      "commit": "6dc6486b57ff3fecba7ae0de68ca42d60e4cdf5e",
      "tree": "a7e3fa453517cd016107387edb0a2cabec964259",
      "parents": [
        "db193a1ff0fac0c9f93b295771c30507e6f433f2",
        "c2f84ee1b45a3368416c67eae5abcc70fd282a6e"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Aug 04 13:26:29 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Aug 04 13:26:29 2016 +0000"
      },
      "message": "Merge \"Add scenario test_server_signal\""
    },
    {
      "commit": "c2f84ee1b45a3368416c67eae5abcc70fd282a6e",
      "tree": "9ba8bed7274dcdb59889db5f4c52c608e79b1959",
      "parents": [
        "834617a54e41068b0dd2288a574baeac7eb681e9"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Thu Jun 30 00:56:13 2016 +0000"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Thu Aug 04 02:04:50 2016 +0000"
      },
      "message": "Add scenario test_server_signal\n\nThis is similar to test_server_cfn_init with the following\ndifferences:\n- Use heat instead of AWS resources\n- Use HOT template format\n- Create and configure a neutron network which the server will be\n  booted into\n\nThe last difference will allow the tempest test\ntempest.api.orchestration.stacks.test_neutron_resources to be deleted.\nThis tempest test is more appropriate as a scenario test, so it\nwouldn\u0027t even be considered for defcore and really doesn\u0027t belong in\ntempest.\n\nChange-Id: Id4f76be2114fb07b3c608d7d0ec0f76f43ad1d21\n"
    },
    {
      "commit": "db193a1ff0fac0c9f93b295771c30507e6f433f2",
      "tree": "17736bd372d4862b617b0c8b433b269aac95a560",
      "parents": [
        "84a6560a3c70c7dfd8045a9c26d583120befa3fd"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Wed Aug 03 10:31:09 2016 +0200"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Wed Aug 03 10:31:09 2016 +0200"
      },
      "message": "Remove additional purge test\n\nWe recently added a new integration test for purge to check purge per\nproject. It doesn\u0027t provide much more testing, and we can\u0027t actually\nhave 2 purge tests because they can\u0027t run in parallel to each other, so\nlet\u0027s remove it for now.\n\nChange-Id: I9f0b97adae9ea532bc2453441c327e30b849d006\nCloses-Bug: #1608910\n"
    },
    {
      "commit": "dc769c35c9c5b095bcc5c126f33653246cbfb392",
      "tree": "ed9ee502d184ecdcd8b92c263befba02e46f9eba",
      "parents": [
        "84a6560a3c70c7dfd8045a9c26d583120befa3fd"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Wed Jul 27 23:31:50 2016 +0000"
      },
      "committer": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Wed Aug 03 01:59:46 2016 +0000"
      },
      "message": "Adopt tempest plugin config namespace\n\nAs a transition strategy to running heat_integrationtests as a\ntempest plugin, this change puts the test config values in the\n\"heat_plugin\" section. This will allow for either test runner\nto be used during the transition.\n\nblueprint tempest-plugin-support\n\nChange-Id: I2eab50be92c998aeb1ee98011908a9828a7efe6c\n"
    },
    {
      "commit": "84a6560a3c70c7dfd8045a9c26d583120befa3fd",
      "tree": "33e24fa1b68cdb5d5e6d45db0cfba8882e2a88b0",
      "parents": [
        "7629e8a087e7b28307d62e01037d32ab911c9c1b",
        "706fce9b78af7f4df45406b4343c17410e832dad"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Aug 02 09:34:56 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Aug 02 09:34:56 2016 +0000"
      },
      "message": "Merge \"Purge deleted stacks for specific project\""
    },
    {
      "commit": "7629e8a087e7b28307d62e01037d32ab911c9c1b",
      "tree": "17736bd372d4862b617b0c8b433b269aac95a560",
      "parents": [
        "834617a54e41068b0dd2288a574baeac7eb681e9",
        "1d76d5c47680a7c09e2913061d5b7cf81c61fb6a"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Aug 02 04:15:04 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Aug 02 04:15:04 2016 +0000"
      },
      "message": "Merge \"Supplement：use assertEqual() instead of assertDictEqual()\""
    },
    {
      "commit": "834617a54e41068b0dd2288a574baeac7eb681e9",
      "tree": "7b2a52794b3bfc5e1e93e31eac8a0e2be2bef400",
      "parents": [
        "cfffc8339f4e7e82f0cd2264d12d91bb60eb2609",
        "87af9005c14b2a6617e8104817bf0c02dc9e81b3"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Jul 29 16:54:23 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Jul 29 16:54:23 2016 +0000"
      },
      "message": "Merge \"Add an integration for server using neutron\""
    },
    {
      "commit": "87af9005c14b2a6617e8104817bf0c02dc9e81b3",
      "tree": "7c0074a529270dd1b5b1bece25c901b725772836",
      "parents": [
        "20276cf7d4b9cf659054fabcfe2e7602a9bf58e9"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Thu Jul 28 13:55:16 2016 +0200"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Thu Jul 28 13:55:16 2016 +0200"
      },
      "message": "Add an integration for server using neutron\n\nThis adds a new test which actually trigger the \u0027is_using_neutron\u0027\nresource method by creating a server using a port.\n\nChange-Id: Ic9a3f42fa5b24048472256832496eb630cdba2c9\n"
    },
    {
      "commit": "cfffc8339f4e7e82f0cd2264d12d91bb60eb2609",
      "tree": "07366dd4b3d1e1d433970c5e31c8c9d497ef429f",
      "parents": [
        "20276cf7d4b9cf659054fabcfe2e7602a9bf58e9"
      ],
      "author": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Thu Jul 28 12:15:32 2016 +0530"
      },
      "committer": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Thu Jul 28 12:21:53 2016 +0530"
      },
      "message": "Increase default sighup_timeout\n\nIt seems at times it takes more time than the current default\nfor the child processes to exit normally. Increasing it to\n120 seconds.\n\nChange-Id: Ic54d2d7edc97cbe07ed4a4445cb865bd1b157f9d\nCloses-Bug: #1607177\n"
    },
    {
      "commit": "1d76d5c47680a7c09e2913061d5b7cf81c61fb6a",
      "tree": "2dd9c9f6d7ce98b047e4a25b5f7313900193cc19",
      "parents": [
        "20276cf7d4b9cf659054fabcfe2e7602a9bf58e9"
      ],
      "author": {
        "name": "shizhihui",
        "email": "zhihui.shi@easystack.cn",
        "time": "Wed Jul 27 09:47:29 2016 +0800"
      },
      "committer": {
        "name": "shizhihui",
        "email": "zhihui.shi@easystack.cn",
        "time": "Wed Jul 27 15:42:23 2016 +0800"
      },
      "message": "Supplement：use assertEqual() instead of assertDictEqual()\n\nwe can use assertEqual() instead of assertDictEqual().\nThis will make the unit test code more consistent,\nand will also simplify the development of unit tests.\nThis patch is left by the patch above of mine.\n\nChange-Id: I05cdbb3fde2476f0e92dd0aca1d44d21a4f2af69\n"
    },
    {
      "commit": "20276cf7d4b9cf659054fabcfe2e7602a9bf58e9",
      "tree": "7849da87e86dcd2a2624008956b50f4330baa41f",
      "parents": [
        "aa8eef2441f86de853777ebad3594d77930840a9",
        "80e0ad6d510779739ff5a9bbfcfebcb5bc804145"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Jul 26 00:39:41 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jul 26 00:39:41 2016 +0000"
      },
      "message": "Merge \"Correct reraising of exception\""
    },
    {
      "commit": "706fce9b78af7f4df45406b4343c17410e832dad",
      "tree": "00f16cfeb63b5b1ea0f76e601b23d6a1035c49c0",
      "parents": [
        "aa8eef2441f86de853777ebad3594d77930840a9"
      ],
      "author": {
        "name": "Ala Rezmerita",
        "email": "ala.rezmerita@orange.com",
        "time": "Thu Jun 30 10:31:54 2016 +0200"
      },
      "committer": {
        "name": "Ala Rezmerita",
        "email": "ala.rezmerita@orange.com",
        "time": "Wed Jul 20 17:02:12 2016 +0000"
      },
      "message": "Purge deleted stacks for specific project\n\nAdd project-id argument to heat-manage purge_deleted command in order\nto be able to hard delete DB entries for a specific project.\n\nChange-Id: Ifffe5657a40ce97db9d059ff1516b8e1eb801132\nImplements: bp heat-manage-purge-deleted-tenant\n"
    },
    {
      "commit": "80e0ad6d510779739ff5a9bbfcfebcb5bc804145",
      "tree": "c3b1b7ce05dacfb1d070b07301fbbab1bc275a72",
      "parents": [
        "aadfd2b2f80b0c3981814f4148aa903acce1b478"
      ],
      "author": {
        "name": "Bin Zhou",
        "email": "zhou.bin9@zte.com.cn",
        "time": "Wed Jul 06 16:33:45 2016 +0800"
      },
      "committer": {
        "name": "Bin Zhou",
        "email": "zhou.bin9@zte.com.cn",
        "time": "Mon Jul 11 08:15:03 2016 +0000"
      },
      "message": "Correct reraising of exception\n\nwhen an exception was caught and rethrown, it should call \u0027raise\u0027\nwithout any arguments.\n\nChange-Id: Id31c042bab14097b13e9ef8c088ff637dc85903f\n"
    },
    {
      "commit": "aa8eef2441f86de853777ebad3594d77930840a9",
      "tree": "9284d270fdc0a9b42f75cd2c12b778e385569d49",
      "parents": [
        "aadfd2b2f80b0c3981814f4148aa903acce1b478"
      ],
      "author": {
        "name": "zhanghao",
        "email": "zhang.hao16@zte.com.cn",
        "time": "Sat Jul 09 17:30:44 2016 +0800"
      },
      "committer": {
        "name": "zhanghao",
        "email": "zhang.hao16@zte.com.cn",
        "time": "Sun Jul 10 11:11:00 2016 +0000"
      },
      "message": "Remove unused LOG to keep code clean\n\nTrivialFix\n\nChange-Id: I2e1985306da45f8f9021122590ffdc8b5d44f476\n"
    },
    {
      "commit": "aadfd2b2f80b0c3981814f4148aa903acce1b478",
      "tree": "e6c728020959225885f2fcd4a007f118de1eec63",
      "parents": [
        "ef38f59ced0775a60539b404df51df4090dfcf91",
        "17f41deed78dc7058daefcbec18497b8127bd09d"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Jul 06 04:03:35 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Jul 06 04:03:35 2016 +0000"
      },
      "message": "Merge \"Pass keystone session to clients\""
    },
    {
      "commit": "ef38f59ced0775a60539b404df51df4090dfcf91",
      "tree": "47af4076452abe50220f88c950188875ffa347b0",
      "parents": [
        "c8d8ee8a0404550e788c40fe3b93195aac9efaa7",
        "f54ccd0608138f4c0f2e2897d0156254a9bdb510"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Jul 05 06:52:43 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jul 05 06:52:43 2016 +0000"
      },
      "message": "Merge \"Add default release names for template versions\""
    },
    {
      "commit": "c8d8ee8a0404550e788c40fe3b93195aac9efaa7",
      "tree": "490a4c81f93a540b52d9cfb583136d2b8693bb64",
      "parents": [
        "31e047b5deb6a2abc1edd0a354e53f4942e83a1f",
        "647406e82853ae71ddf20c8f20c6fcf521bd2cb9"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jul 04 15:10:15 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jul 04 15:10:16 2016 +0000"
      },
      "message": "Merge \"Wait for stack status instead of group status\""
    },
    {
      "commit": "31e047b5deb6a2abc1edd0a354e53f4942e83a1f",
      "tree": "415aa6b54f93f4a6caf8d316a5988f693d8d2955",
      "parents": [
        "4818d1525597109ddadba22ca886611bbf24ac88",
        "52422d3f62b25ca243ad3cee340eab442980248f"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Jun 30 21:44:19 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Jun 30 21:44:20 2016 +0000"
      },
      "message": "Merge \"Fix another test race in test_update_restricted\""
    },
    {
      "commit": "4818d1525597109ddadba22ca886611bbf24ac88",
      "tree": "2c1588f464e3b8320564c95ba9ba407385daced3",
      "parents": [
        "422c1baada64986b897a72569c313d37d6594cec",
        "be7a59e49de0e1f8a14e56c0d11667a2dd043b50"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Jun 30 12:58:53 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Jun 30 12:58:54 2016 +0000"
      },
      "message": "Merge \"Add wait_sec for test_stack_update_from_failed\""
    },
    {
      "commit": "52422d3f62b25ca243ad3cee340eab442980248f",
      "tree": "25b3a4355b3fed45256cecda92bc40bc151b85c8",
      "parents": [
        "dca3b8ee283354bb98112a3ed060639160762633"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Thu Jun 30 13:51:01 2016 +0200"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Thu Jun 30 13:51:01 2016 +0200"
      },
      "message": "Fix another test race in test_update_restricted\n\nWe fixed 2 tests that were intermittently failing because of timestamp\nresolution, but it can happen on the 3rd one as well.\n\nChange-Id: Ic916b79a81000684b04c585eef1227255a949172\nRelated-Bug: #1554375\n"
    },
    {
      "commit": "422c1baada64986b897a72569c313d37d6594cec",
      "tree": "a609301ac318a7402a285cbbb0cb187152eb57be",
      "parents": [
        "dca3b8ee283354bb98112a3ed060639160762633"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Wed Jun 08 15:50:39 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Wed Jun 29 02:50:27 2016 +0000"
      },
      "message": "Migrate to aodh for OS::Ceilometer::Alarm\n\nThis changes:\n1. use aodhclient to manage OS::Ceilometer::Alarm\nresource, including create, update, delete, check, suspend,\nresume and show.\n2. rename OS::Ceilometer::Alarm to OS::Aodh::Alarm\n3. considering to compatible with old templates with resource\nOS::Ceilometer::Alarm, set resource_registry to map Ceilometer alarm\nto Aodh alarm\n\nBlueprint migrate-to-use-aodh-for-alarms\n\nChange-Id: I6e2d14f15a345b927b53adc237cf2bf4010842f0\n"
    },
    {
      "commit": "dca3b8ee283354bb98112a3ed060639160762633",
      "tree": "1a6a25bb61e1dc8f7f7bf5d423f492e1261220a7",
      "parents": [
        "6f225b1ba475fcef7c491e67f7e17f75dc426ff3",
        "6f68c3649784b8141f59915c7e2f9dbda20a96e3"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Jun 28 20:29:58 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jun 28 20:29:58 2016 +0000"
      },
      "message": "Merge \"Add a sleep after delete before purging\""
    },
    {
      "commit": "f54ccd0608138f4c0f2e2897d0156254a9bdb510",
      "tree": "3830b651386656235c69ea46f79d7918a3869dc5",
      "parents": [
        "6f225b1ba475fcef7c491e67f7e17f75dc426ff3"
      ],
      "author": {
        "name": "Jason Dunsmore",
        "email": "jasondunsmore@gmail.com",
        "time": "Tue May 10 14:29:38 2016 -0500"
      },
      "committer": {
        "name": "Jason Dunsmore",
        "email": "jasondunsmore@gmail.com",
        "time": "Tue Jun 28 10:19:24 2016 -0500"
      },
      "message": "Add default release names for template versions\n\nRelease version names are easier for template authors to remember than\nseemingly arbitrary dates. It should also make it clearer to new Heat\nusers that heat_template_version is not like a BIND zone file version\n(which would be incremented with each version of the template).\n\nChange-Id: Iae9b6a676702b2a115b18fdfb1ab2afbe5faacde\nblueprint support-alias-for-heat-template-version-names\n"
    },
    {
      "commit": "6f68c3649784b8141f59915c7e2f9dbda20a96e3",
      "tree": "f3beec1649810104542f0e4c0f29a0f2e6f0a941",
      "parents": [
        "067c6b79e1fe54b3b258f1edf6a4bc1108979a40"
      ],
      "author": {
        "name": "Steve Baker",
        "email": "sbaker@redhat.com",
        "time": "Wed Jun 22 10:42:43 2016 +1200"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Tue Jun 28 08:44:34 2016 +0000"
      },
      "message": "Add a sleep after delete before purging\n\nheat-manage purge_deleted 0 might not purge deleted stacks which are\nless than a second old, this is a cause of gate failures.\n\nChange-Id: Ie95370354aa0534483730ef1ce93f46d004931d8\nCloses-Bug: 1570398\n"
    },
    {
      "commit": "6f225b1ba475fcef7c491e67f7e17f75dc426ff3",
      "tree": "baba575f48cedba646b662891f04665ffe53f7a9",
      "parents": [
        "d10cf6211f0feb2ad4d89ccb1fbae57889895061"
      ],
      "author": {
        "name": "ChangBo Guo(gcb)",
        "email": "eric.guo@easystack.cn",
        "time": "Tue Jun 28 15:23:04 2016 +0800"
      },
      "committer": {
        "name": "ChangBo Guo(gcb)",
        "email": "eric.guo@easystack.cn",
        "time": "Tue Jun 28 15:25:15 2016 +0800"
      },
      "message": "Config: no need to set default\u003dNone\n\nBy default oslo.cfg sets the default value as None. There is no\nneed to explicitly do this.\n\nTrivialFix\n\nChange-Id: I8d47b8815947c1c1e22e49822ffec0b8874d4487\n"
    },
    {
      "commit": "d10cf6211f0feb2ad4d89ccb1fbae57889895061",
      "tree": "eb18ac3874731b5850885f84c8b63705bb46391b",
      "parents": [
        "f6df13bb815222801816712e6206f4158b15bf84",
        "015fb6ea153435f049220d1c909816613d448d61"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jun 27 12:09:07 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jun 27 12:09:07 2016 +0000"
      },
      "message": "Merge \"Use LOG.exception() properly\""
    },
    {
      "commit": "015fb6ea153435f049220d1c909816613d448d61",
      "tree": "37502d132938552f24bf5bcdaa1fe22981bc9d06",
      "parents": [
        "067c6b79e1fe54b3b258f1edf6a4bc1108979a40"
      ],
      "author": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Mon Jun 06 17:06:19 2016 -0400"
      },
      "committer": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Mon Jun 27 11:28:34 2016 +0200"
      },
      "message": "Use LOG.exception() properly\n\nContrary to popular belief, LOG.exception() is not a method to which you\npass an exception in order to log it. Rather, you pass the message to be\nlogged at ERROR level, and the exception is retrieved automatically via\nsys.exc_info().\n\nChange-Id: I197cf94ada34a7ce80fc4026a99d95cd50823882\n"
    },
    {
      "commit": "647406e82853ae71ddf20c8f20c6fcf521bd2cb9",
      "tree": "3138604fd0625439e33cd4af6a8795818ec3e41b",
      "parents": [
        "f6df13bb815222801816712e6206f4158b15bf84"
      ],
      "author": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Fri Jun 24 16:15:36 2016 +0530"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Fri Jun 24 16:35:45 2016 +0530"
      },
      "message": "Wait for stack status instead of group status\n\nSUSPEND happens in reverse order, so waiting for the group to reach\nSUSPEND_COMPLETE/SUSPEND_FAILED would result in timeout, if SUSPEND\nfor the policy resource fails.\n\nChange-Id: Ie690d49734d164554ee6cf6c11f8c45a2832a8fe\nRelated-Bug: #1595819\n"
    },
    {
      "commit": "f6df13bb815222801816712e6206f4158b15bf84",
      "tree": "087398283591dd81de280c3246d468c8760842ae",
      "parents": [
        "067c6b79e1fe54b3b258f1edf6a4bc1108979a40"
      ],
      "author": {
        "name": "gecong1973",
        "email": "ge.cong@zte.com.cn",
        "time": "Thu Jun 23 12:39:48 2016 +0800"
      },
      "committer": {
        "name": "gecong1973",
        "email": "ge.cong@zte.com.cn",
        "time": "Thu Jun 23 12:39:48 2016 +0800"
      },
      "message": "   Fix some spelling mistakes in heat as follows:\n\n   in heat/contrib/rackspace/rackspace/tests/test_auto_scale.py:270:\n       mock nova and glance client methods to satisfy contraints,   contraints should be constraints\n   in heat/heat_integrationtests/functional/test_resource_group.py:51\n       triggering validation of nested resource custom contraints,  contraints should be constraints\n   in heat/heat/common/exception.py:258:\n      \"\"\"Keep this for AWS compatiblility.\"\"\"    compatiblility should be compatibility\n   in heat/heat/engine/resources/openstack/ceilometer/alarm.py:349:\n      1) so we don\u0027t create watch tasks unneccessarly ,  unneccessarly should be unnecessarily\n\n   in heat/heat/engine/resources/openstack/neutron/vpnservice.py:462:\n     The Internet Key Exchange policy identifyies the authentication and , identifyies  should be identifies\n\n   in heat/heat/engine/resources/openstack/nova/server.py:1426:\n      if \u0027security_groups\u0027 present for the server and explict \u0027port\u0027 , explict should be explicit\n\n   in heat/heat/engine/service.py:182:\n     releasing the lock to avoid race condtitions. condtitions should be conditions\n\n   in heat/heat/engine/sync_point.py:134:\n       don\u0027t aggresively spin; induce some sleep, aggresively should be aggressively\n\n   in heat/heat/tests/openstack/heat/test_software_deployment.py:889:\n       Test bug 1332355, where details contains a translateable message, translateable should be translatable\n\n   in heat/heat/tests/test_environment.py:596:\n       make sure the parent env is uneffected, uneffected should be unaffected\n\n   in heat/heat/engine/resources/openstack/nova/server.py:472:\n      \u0027ignorning it or by replacing the entire server.\u0027),  ignorning should be ignoring\n\n   in heat/contrib/rackspace/rackspace/resources/cloud_server.py:104:\n     \u0027retained for compatability.\u0027),  compatability should be compatibility\n\n   in heat/heat/engine/stack.py:1258:\n      \" ID %(trvsl_id)s, not trigerring rollback.\"),  trigerring should be triggering.\n\nChange-Id: Ic4ddb65dbfaf61751a330b853780689209f9f4b5\nCloses-Bug: #1595376\n"
    },
    {
      "commit": "067c6b79e1fe54b3b258f1edf6a4bc1108979a40",
      "tree": "bbb941cb5e5ccbe6c3ea1e9981aaceb307704e77",
      "parents": [
        "9017d7063b76665965f3ed28cdf89390cde08818",
        "fd98a4710c16621a5451c70941ecf74a55cea70c"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Jun 16 04:23:11 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Jun 16 04:23:12 2016 +0000"
      },
      "message": "Merge \"Add integration tests for admin actions\""
    },
    {
      "commit": "9017d7063b76665965f3ed28cdf89390cde08818",
      "tree": "6c014d656e6fb005308d9b9fd1548884ef02c017",
      "parents": [
        "6df3d3d20f15d94a007198175e8585741846bd32",
        "7e52e1e9b8936082274a1a74fa027770c6b85a02"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Jun 16 02:07:36 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Jun 16 02:07:36 2016 +0000"
      },
      "message": "Merge \"Authorize super admin actions on all projects\""
    },
    {
      "commit": "be7a59e49de0e1f8a14e56c0d11667a2dd043b50",
      "tree": "7aea05f2091513f0636958eedf5e0c6ab32ccc16",
      "parents": [
        "1305de93c0ce849f4175d24d0986ee589e828f36"
      ],
      "author": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Wed Jun 15 08:41:29 2016 +0530"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Wed Jun 15 08:58:41 2016 +0530"
      },
      "message": "Add wait_sec for test_stack_update_from_failed\n\nSimilar to some other failures where the updated_time does not\nchange, _verify_status ignores it and the test times out.\n\nChange-Id: Ifdf8c1e5e129fdd6c3592ffaca307e43c1317f70\nRelated-Bug: #1583630\n"
    },
    {
      "commit": "6df3d3d20f15d94a007198175e8585741846bd32",
      "tree": "01464dfcd84d8d79f748df74b6da40a42f71bc80",
      "parents": [
        "1305de93c0ce849f4175d24d0986ee589e828f36"
      ],
      "author": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Tue Jun 14 15:09:19 2016 +0200"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Tue Jun 14 18:39:51 2016 +0000"
      },
      "message": "Fix test_update_restricted timeouts due to timestamp resolution\n\nUpdating a stack where the only resource needs replacement but is\nrestricted from being replaced is *very* fast. Since the test framework\nrelies on seeing a change in the updated_time timestamp, which has only 1s\nresolution, it can easily be missed causing the test to timeout. This adds\na 1s sleep between updates that have the same expected status to ensure\nthat the timestamp changes.\n\nChange-Id: Ief845a21108e925325b1b3e8f090038ccdf73b8e\nCloses-Bug: #1554375\nRelated-Bug: #1583630\n"
    },
    {
      "commit": "fd98a4710c16621a5451c70941ecf74a55cea70c",
      "tree": "356875594e978f87466451d56ea6699ed6124e7b",
      "parents": [
        "7e52e1e9b8936082274a1a74fa027770c6b85a02"
      ],
      "author": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Tue May 24 10:18:33 2016 +0530"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Tue Jun 14 22:39:33 2016 +0530"
      },
      "message": "Add integration tests for admin actions\n\nAdd integration tests for super admin actions.\n\nChange-Id: I277f23800274729cf7128fdcb4521e4b221233cf\nPartial-Bug: #1466694\n"
    },
    {
      "commit": "7e52e1e9b8936082274a1a74fa027770c6b85a02",
      "tree": "6247fba75d4a19d932abc76a282ddf417262dbec",
      "parents": [
        "1305de93c0ce849f4175d24d0986ee589e828f36"
      ],
      "author": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Mon May 16 10:31:10 2016 +0530"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Tue Jun 14 22:16:25 2016 +0530"
      },
      "message": "Authorize super admin actions on all projects\n\nThis allows admin super user (user with admin role in admin_project)\nto do stack operations across all projects.\n\nChange-Id: Ifbf56fde02b89248ee788e6a212ef9d11e665dc0\nPartial-Bug: #1466694\n"
    },
    {
      "commit": "1305de93c0ce849f4175d24d0986ee589e828f36",
      "tree": "2fbcf5b77bb1476ed75e880a661b753d49e87fff",
      "parents": [
        "f86c7fe97d03e213cb28da3436e7735a54e91baa"
      ],
      "author": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Mon Jun 13 12:04:10 2016 +0530"
      },
      "committer": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Mon Jun 13 12:04:10 2016 +0530"
      },
      "message": "Fix env passed to test_replace\n\nWe don\u0027t seem to be passing the right env to test_replace,\nwhen we want to test with both update and replace restricted.\n\nChange-Id: I895389c1727321f328e6b7bd7c712796257993f1\n"
    },
    {
      "commit": "f86c7fe97d03e213cb28da3436e7735a54e91baa",
      "tree": "30140d338ffc8b400eab80d38d7b39752d56b027",
      "parents": [
        "e452f7ad41529e88780614b422e374d71379088c"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Fri Jun 10 17:21:34 2016 +0200"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Fri Jun 10 22:35:24 2016 +0200"
      },
      "message": "Fix tests on Neutron port behavior\n\nFix some integration tests checking port behavior, as the assumptions we\nwere making were wrong, and that changed recently.\n\nCloses-Bug: #1591177\nChange-Id: I4338eee40d092148831b3e20f8a42a1b3d3ea8bf\n"
    },
    {
      "commit": "e452f7ad41529e88780614b422e374d71379088c",
      "tree": "ab4af157850b86f8c56b158cf703145f900b4b89",
      "parents": [
        "44881731cf22bbff2aa9c55bc795bba399a22a59"
      ],
      "author": {
        "name": "Anant Patil",
        "email": "anant.patil@hp.com",
        "time": "Tue Jun 07 15:18:35 2016 +0530"
      },
      "committer": {
        "name": "Anant Patil",
        "email": "anant.patil@hp.com",
        "time": "Wed Jun 08 12:44:31 2016 +0530"
      },
      "message": "Don\u0027t hard code subnet\n\nReplace hard coded private-subnet with configurable heat subnet for\nlbaasv2 functional test.\n\nChange-Id: Ie1a3d9ce02da30dcfa67b9de76900807de8212df\n"
    },
    {
      "commit": "17f41deed78dc7058daefcbec18497b8127bd09d",
      "tree": "ce7c223d9508e185459c0d227f29bde38df89fc4",
      "parents": [
        "44881731cf22bbff2aa9c55bc795bba399a22a59"
      ],
      "author": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Tue May 03 11:19:41 2016 +0530"
      },
      "committer": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Tue Jun 07 10:52:36 2016 +0530"
      },
      "message": "Pass keystone session to clients\n\nPass keystone session while initializing clients\nfor integration tests. Swift client does not support\nsession yet and using keystone session for heat client\nresults in failure with reload of heat-api in\ntest_reload_on_sighup functional test.\n\nChange-Id: I9c1e455268bf8c796c9052e428ab02bc67699a0f\n"
    },
    {
      "commit": "44881731cf22bbff2aa9c55bc795bba399a22a59",
      "tree": "a6e331c56a1af874dd8d92a4e107cbe363b8abe4",
      "parents": [
        "e391c1d39dd5398cee5b6f81e8ef89ea0611b030",
        "15ad5323a09d173a3c3e3794bb990e545e7cfe06"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Jun 07 03:18:50 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jun 07 03:18:51 2016 +0000"
      },
      "message": "Merge \"Migrate to nova api version 2.1\""
    },
    {
      "commit": "e391c1d39dd5398cee5b6f81e8ef89ea0611b030",
      "tree": "82b023b5811957613a0d9b1be25f93e641df6804",
      "parents": [
        "370e7669cee55e0091b5205125fe8c4ce6b50ac9",
        "23f18f3e43f52601311d420e1b55e24a3beaa1cf"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jun 06 05:18:45 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jun 06 05:18:45 2016 +0000"
      },
      "message": "Merge \"Adds default policy rule for resources limited to administrator\""
    },
    {
      "commit": "15ad5323a09d173a3c3e3794bb990e545e7cfe06",
      "tree": "30c9c0de5d6dd5701217405126737e8ad701c648",
      "parents": [
        "370e7669cee55e0091b5205125fe8c4ce6b50ac9"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Thu Jun 02 14:39:13 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Mon Jun 06 01:32:48 2016 +0000"
      },
      "message": "Migrate to nova api version 2.1\n\nThe Nova v2 API code has been completely removed from Nova by\nchange[1]. Although Nova still supports v2 compatible API with the\nlegacy endpoint, it is better to switch to use Nova v2.1 in Heat.\n\nThis change sets version\u003d\u00272.1\u0027 when init novaclient\ninstance, then we can use novaclient v2 and will\nuse nova api v2.1.\n\n[1] https://review.openstack.org/#/c/311653/\n\nChange-Id: I428abb4ca05847da8ffc2da7157aa5c34263a205\nCloses-Bug: #1588155\nPartial-Bug: #1588171\n"
    },
    {
      "commit": "370e7669cee55e0091b5205125fe8c4ce6b50ac9",
      "tree": "eccf1c3f873cafeaf1bffe50761a2077dce7ef8a",
      "parents": [
        "3c977ed5909ddcf2d37f6d6a306a176b17fb3b4e",
        "07fac1f2bcf09ee30e27578d686cde2e6e7da183"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue May 31 05:16:04 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue May 31 05:16:05 2016 +0000"
      },
      "message": "Merge \"Use keystoneauth1 instead of keystoneclient.auth\""
    },
    {
      "commit": "3c977ed5909ddcf2d37f6d6a306a176b17fb3b4e",
      "tree": "d3a4fb019120bfa848c813d947441e599d5143ac",
      "parents": [
        "55e02a047c6dbf192b3d9c51ec392bddc6107300",
        "93a2da8042219d0295c73a891d85d4cff4d1600d"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Sat May 28 10:11:56 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sat May 28 10:11:57 2016 +0000"
      },
      "message": "Merge \"Add wait_secs to test_stack_update_from_failed_patch\""
    },
    {
      "commit": "55e02a047c6dbf192b3d9c51ec392bddc6107300",
      "tree": "e08b95d2265c714243317add36b4cda9c34121db",
      "parents": [
        "254026662a0514ef2f3fc8c4fcd3da64996ddcc5"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Thu May 26 11:32:20 2016 +0200"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Thu May 26 13:48:13 2016 +0200"
      },
      "message": "Fix resource loading in resource filtering\n\nWe try to be careful when filtering resources from stack, to not load\nall of them, but unfortunately it breaks as soon as you have\ndependencies with resources that are not returned. To be on the safe\nside we need to load them all and filter them afterwards.\n\nChange-Id: I399545a6a4fd77d9707505ec9c4058d384877dec\nCloses-Bug: #1585931\n"
    },
    {
      "commit": "07fac1f2bcf09ee30e27578d686cde2e6e7da183",
      "tree": "5501c76d858de1e3e6f7c62336d5a19085700246",
      "parents": [
        "254026662a0514ef2f3fc8c4fcd3da64996ddcc5"
      ],
      "author": {
        "name": "Ethan Lynn",
        "email": "xjunlin@cn.ibm.com",
        "time": "Tue May 10 23:09:51 2016 +0800"
      },
      "committer": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Tue May 24 20:27:23 2016 +0530"
      },
      "message": "Use keystoneauth1 instead of keystoneclient.auth\n\nkeystoneclient.auth is deprecated, use keystoneauth1 instead.\n\nChange-Id: Idf6daaccef8547755989140a91e4543cc94f9b58\nCloses-Bug: #1554533\n"
    },
    {
      "commit": "93a2da8042219d0295c73a891d85d4cff4d1600d",
      "tree": "c7fa53185e7326e98ceff5df1b0a0c4683b9f2c4",
      "parents": [
        "ea98f2c2735e77e66e9a05989c3b6641ceaade6c"
      ],
      "author": {
        "name": "Jaime Guerrero",
        "email": "jg3755@att.com",
        "time": "Mon May 23 21:31:43 2016 +0000"
      },
      "committer": {
        "name": "Jaime Guerrero",
        "email": "jg3755@att.com",
        "time": "Mon May 23 22:26:43 2016 +0000"
      },
      "message": "Add wait_secs to test_stack_update_from_failed_patch\n\nAdd a 1 second pause to test_stack_update_from_failed_patch.  If a stack is\nupdated more than once per second, there is a possibility for busy waiting if\n_verify_status neither returns nor raises an exception.\n\nPlease see\nhttps://github.com/openstack/heat/blob/master/heat_integrationtests/common/test.py#L277\nfor _verify_status.\n\nCloses bug: 1583630\n\nChange-Id: Ifa9a5e9d69b47fe07fbc9ffcbe8f03479a24bb6c\n"
    },
    {
      "commit": "254026662a0514ef2f3fc8c4fcd3da64996ddcc5",
      "tree": "c0fcdf0b520fab46bb98cc8eeaccae7880354b77",
      "parents": [
        "2674885a891bd66bd712bbc9b29865045a66e5e6",
        "c5735a8ccb746225ea561c3182edde60ccf5df89"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu May 19 11:05:47 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu May 19 11:05:48 2016 +0000"
      },
      "message": "Merge \"Removes duplicate code autoscale_complete\""
    },
    {
      "commit": "2674885a891bd66bd712bbc9b29865045a66e5e6",
      "tree": "6742ae7275c63b4719141a17b061004c26cfb29d",
      "parents": [
        "8e5718934eb91364b80f2ec04bf483f292d31eb9",
        "f7d67084b210c8172a1d66e4788e3fe68e3f2ad4"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed May 18 08:35:28 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed May 18 08:35:28 2016 +0000"
      },
      "message": "Merge \"Remove unnecessary usage of stack_name\""
    },
    {
      "commit": "23f18f3e43f52601311d420e1b55e24a3beaa1cf",
      "tree": "7dae0308445e6d0fc8b0056a412cf15f7d6398be",
      "parents": [
        "8e5718934eb91364b80f2ec04bf483f292d31eb9"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Tue May 17 16:55:45 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Wed May 18 09:52:14 2016 +0800"
      },
      "message": "Adds default policy rule for resources limited to administrator\n\nAdds default policy rule for resources which are limited to\nadministrator, to forbid non-admin to create these resources\nat the very start.\n\nChange-Id: I9e1ef86f0c44bce5bde3f9e26e1f2b9cb3aef06d\nCloses-Bug: #1582187\n"
    },
    {
      "commit": "f7d67084b210c8172a1d66e4788e3fe68e3f2ad4",
      "tree": "8b3025fb5e597471e485dd97f4c83ad6e266884e",
      "parents": [
        "ea98f2c2735e77e66e9a05989c3b6641ceaade6c"
      ],
      "author": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Tue May 17 18:51:22 2016 +0530"
      },
      "committer": {
        "name": "rabi",
        "email": "ramishra@redhat.com",
        "time": "Tue May 17 19:16:38 2016 +0530"
      },
      "message": "Remove unnecessary usage of stack_name\n\nWe don\u0027t need stack_name when we\u0027ve the stack_identifier.\n\nChange-Id: I296af464301705e653b3f80442c5dcfbf43ba728\n"
    },
    {
      "commit": "8e5718934eb91364b80f2ec04bf483f292d31eb9",
      "tree": "63af438c383e169249709bc74641b9c1bd49c6a1",
      "parents": [
        "ea98f2c2735e77e66e9a05989c3b6641ceaade6c"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Mon May 09 19:01:23 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Tue May 17 18:23:09 2016 +0800"
      },
      "message": "Set security_groups when create internal ports for nova server\n\nMake sure nova server be created in correct security groups\nif user specified subnet and security_groups when create/update\nserver.\n\nChange-Id: Ic93cad4def90f3da25390d871d6a8c14ffe1c5ae\nCloses-Bug: #1571975\n"
    },
    {
      "commit": "c5735a8ccb746225ea561c3182edde60ccf5df89",
      "tree": "d90eb5bd3da26655854acd04a94da70cef198059",
      "parents": [
        "ea98f2c2735e77e66e9a05989c3b6641ceaade6c"
      ],
      "author": {
        "name": "Rakesh H S",
        "email": "rh-s@hpe.com",
        "time": "Thu Apr 28 15:38:09 2016 +0530"
      },
      "committer": {
        "name": "Rakesh H S",
        "email": "rh-s@hpe.com",
        "time": "Thu Apr 28 15:38:09 2016 +0530"
      },
      "message": "Removes duplicate code autoscale_complete\n\nFunction autoscale_complete will be required by many test\ncases, hence moving it to common.\n\nChange-Id: Ie0545ad35c6704bc86b26748ae99f9c66ca5a468\n"
    }
  ],
  "next": "ea98f2c2735e77e66e9a05989c3b6641ceaade6c"
}
