)]}'
{
  "log": [
    {
      "commit": "4f9729fe3845aa8ce661bba1644435863dfe34c2",
      "tree": "2f1604b8fc7c0da600e2f78cb15dd06387cf93a7",
      "parents": [
        "146ab1ea18981ddb9c28183639a4080d3f5227d1"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Wed Mar 23 16:52:09 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Thu Mar 24 09:29:48 2016 +0800"
      },
      "message": "Add a new HOT template version for Newton\n\n1. Add a HOT template version \u0027heat_template_version.2016-10-14\u0027\n2. Add Newton version \u00277.0.0\u0027 in doc\n\nChange-Id: I8194adbe9a27f982a6b123dda78849d6e5b33eeb\n"
    },
    {
      "commit": "146ab1ea18981ddb9c28183639a4080d3f5227d1",
      "tree": "8c9ad98472782f0e5a8a11afae2a73dc324c91b1",
      "parents": [
        "6a1c278fca1bd9414fac0ffc1a996a47eb424ba8",
        "86a6a41e68ac6c2bca4933510b8b66c87cdbdd11"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Mar 23 21:08:06 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Mar 23 21:08:07 2016 +0000"
      },
      "message": "Merge \"Fix race condition for WaitCondition with several signals\""
    },
    {
      "commit": "6a1c278fca1bd9414fac0ffc1a996a47eb424ba8",
      "tree": "df488aff962420a7e7281bc3b8ca470212486fe2",
      "parents": [
        "d3e8237cf1a8197e3f396e0e3a503da7d5f99e3a",
        "b0759cd0a23b634d662b7f67eea0b62a51da6107"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Mar 23 18:47:14 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Mar 23 18:47:14 2016 +0000"
      },
      "message": "Merge \"Use region from config in functional tests\""
    },
    {
      "commit": "b0759cd0a23b634d662b7f67eea0b62a51da6107",
      "tree": "0054a627d20dd2b88f85139ebf8ab71d5c001c97",
      "parents": [
        "c8cc2491a700b6dd287609999f5dc460a19e5293"
      ],
      "author": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Wed Mar 23 10:20:21 2016 +0530"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Wed Mar 23 18:33:56 2016 +0530"
      },
      "message": "Use region from config in functional tests\n\nWe seem to be using hardcoded region in some inline\ntemplates of fucntional tests. They would fail if\nthe region name is different. This changes to use\nit from the config.\n\nChange-Id: Iafd1251545e00c6cba292b042352b1ef34da81e0\nCloses-Bug: #1560585\n"
    },
    {
      "commit": "86a6a41e68ac6c2bca4933510b8b66c87cdbdd11",
      "tree": "027219100c3af4375401af6bf92b3ac49e3e3a21",
      "parents": [
        "d3e8237cf1a8197e3f396e0e3a503da7d5f99e3a"
      ],
      "author": {
        "name": "Sergey Kraynev",
        "email": "skraynev@mirantis.com",
        "time": "Thu Mar 10 21:39:48 2016 -0500"
      },
      "committer": {
        "name": "Sergey Kraynev",
        "email": "skraynev@mirantis.com",
        "time": "Wed Mar 23 03:47:49 2016 -0400"
      },
      "message": "Fix race condition for WaitCondition with several signals\n\nThis fix is based on changes introduced in patch\nIbf9dd58a66a77d9ae9d4b519b0f11567977f416c.\n\nFollow changes were done in this patch:\n - According previous item code for calculating metadata of\n   wait_condition_handle was moved to separate method -\n   normalise_signal_data().\n - Same method was implemented for BaseWaitConditionHandle class, which\n   returns original signal data without changes.\n - handle_signal method for BaseWaitConditionHandle class was updated:\n   * all code related with updating and verification metadata was moved\n     to merge_signal_metadata internal method, which will be called from\n     metadata_set method.\n   * if/else block was changed to raise error in case, when metadata has\n     wrong format, so else section was deleted.\n - corresponding tests for waitcondition resource, which expect several\n   signals was added.\n\nChange-Id: Ia25146a742ce79dbb0480d9053131216037e5305\nCo-Authored-By: Zane Bitter \u003czbitter@redhat.com\u003e\nCloses-Bug: #1497274\n"
    },
    {
      "commit": "d3e8237cf1a8197e3f396e0e3a503da7d5f99e3a",
      "tree": "04b8b62ab82f64800158784222d6b52cbce2c716",
      "parents": [
        "c8cc2491a700b6dd287609999f5dc460a19e5293"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Thu Mar 17 16:03:08 2016 +0100"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Thu Mar 17 16:26:40 2016 +0100"
      },
      "message": "Remove unknown parameters in patched update\n\nWhen updating a stack with the existing flag, we keep the parameters\nfrom the old template to be used against the new version. Sometimes\nparameters will get remove and won\u0027t make sense anymore, and keeping\nthem would break update with a \u0027Parameter was not defined\u0027 error. This\nfilters out such parameters so that the updates succeed.\n\nChange-Id: I6f2aa77da28d271dd001a137bb574b5470292f15\nCloses-Bug: #1558610\n"
    },
    {
      "commit": "c8cc2491a700b6dd287609999f5dc460a19e5293",
      "tree": "c0030848a64083b3748e93402b0e01b14a06b740",
      "parents": [
        "b2bca1be5f0aefa6c96f54b131a62d1005ef7c92",
        "483e64bacd81b06d17fb179deb9b8def90017b07"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Mar 16 10:07:26 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Mar 16 10:07:26 2016 +0000"
      },
      "message": "Merge \"Fix race condition in reload_on_sighup functional\""
    },
    {
      "commit": "b2bca1be5f0aefa6c96f54b131a62d1005ef7c92",
      "tree": "f5064d12cdf616490f59fc5db9710f4a15fc5618",
      "parents": [
        "74690ce76e044f90f64d232fc5b95357737cb097"
      ],
      "author": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Mon Mar 07 17:16:29 2016 +0200"
      },
      "committer": {
        "name": "Sergey Kraynev",
        "email": "skraynev@mirantis.com",
        "time": "Wed Mar 16 06:14:13 2016 +0000"
      },
      "message": "Check RBAC policy for nested stacks\n\nThis prevents stacks with forbidden resources start\nto create/update or stuck in DELETE_IN_PROGRESS state,\nif delete the stack with admin resources in nested stacks.\nAlso we need to allow get id of resource that in SUSPEND\nstate, because of we use stack preview in SUSPEND state.\n\nChange-Id: I328891e62b4f4bcf620c52ef9d4d8ab60801a651\nCloses-Bug: #1539145\n"
    },
    {
      "commit": "74690ce76e044f90f64d232fc5b95357737cb097",
      "tree": "b339e11cc04375b74c63545edb6c130ade1a6fe2",
      "parents": [
        "793c23e72f8d733144a354cb61cc655497f5c54c"
      ],
      "author": {
        "name": "Mark Vanderwiel",
        "email": "vanderwl@us.ibm.com",
        "time": "Mon Mar 14 16:49:03 2016 -0500"
      },
      "committer": {
        "name": "Mark Vanderwiel",
        "email": "vanderwl@us.ibm.com",
        "time": "Tue Mar 15 13:37:48 2016 -0500"
      },
      "message": "Add functional lbaas v2 tests\n\nFor lbaas v2, the scenario tests are on hold until bug:\nhttps://bugs.launchpad.net/octavia/+bug/1557184 can be\nresolved for octavia in devstack.\n\nThis patch will change the octavia drivers to no-op to\nallow functional testing against the heat lbaas v2\nresources.  These tests will run under 5 minutes.\n\nChange-Id: I96890725d0b5c498815873b068613ab00f2cbac8\n"
    },
    {
      "commit": "483e64bacd81b06d17fb179deb9b8def90017b07",
      "tree": "72969df5dae4031170a9b8c5306f6aa9aa1b5a62",
      "parents": [
        "793c23e72f8d733144a354cb61cc655497f5c54c"
      ],
      "author": {
        "name": "Peter Razumovsky",
        "email": "prazumovsky@mirantis.com",
        "time": "Fri Mar 04 17:04:28 2016 +0300"
      },
      "committer": {
        "name": "Peter Razumovsky",
        "email": "prazumovsky@mirantis.com",
        "time": "Tue Mar 15 17:58:31 2016 +0000"
      },
      "message": "Fix race condition in reload_on_sighup functional\n\nRace condition appears in next situation:\n\n  1. First thread calls _set_config_value for one section.\n  2. Second thread calls _set_config_value for another section.\n  3. First thread. Config option value set, calls\n     open(self.config_file, \u0027wb\u0027), which erases all file content.\n  4. Second thread. In previous point moment second thread tries to\n     set config option value to self.config_file, which is empty (see 3).\n     So, NoSectionError exception raised.\n\nThis patch adds ten retries for setting option value, if NoSectionError\nraised, i.e. try to wait until self.config_file is busy.\n\nChange-Id: Ic54ea287ebe4724511f75d42677cae5dfdec4e57\nCloses-bug: #1535766\n"
    },
    {
      "commit": "793c23e72f8d733144a354cb61cc655497f5c54c",
      "tree": "a6a4c278beeef9afb69afa85a38e344c15049df0",
      "parents": [
        "39aa11a6be8002901b51547e2afd950405f46d18"
      ],
      "author": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Fri Mar 04 19:42:20 2016 +0200"
      },
      "committer": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Thu Mar 10 18:47:40 2016 +0200"
      },
      "message": "Fix stack preview\n\nDon\u0027t execute translation rule for property that contains\na GetParam function that can\u0027t be resolved at the moment.\nSuch situation happens when we try to resolve get_param function\nthat refer to parameter with None value. We receive parameter value\nfrom parent stack, where this value is a reference to some resource\nwithout resource_id, so this situation is legal for stack preview\nand we shouldn\u0027t fail. Note, that we can reproduce this behaviour\nonly with resources with hidden parameters and overrided  get_resource_id\nmethod, that returns None if resoruce creation has not been started yet.\n\nChange-Id: Ia1097940db983721c8b5116db7ee0a2c4c45339d\nCloses-Bug: #1548802\n"
    },
    {
      "commit": "39aa11a6be8002901b51547e2afd950405f46d18",
      "tree": "9eb6435a8c704b3ba546b922ac7f901fc6e2f607",
      "parents": [
        "06acfa20b64590f3be94acf18576df3008088c36"
      ],
      "author": {
        "name": "tyagi",
        "email": "ishant.tyagi@hp.com",
        "time": "Mon Mar 07 04:47:00 2016 -0800"
      },
      "committer": {
        "name": "Ishant Tyagi",
        "email": "ishant.tyagi@hp.com",
        "time": "Mon Mar 07 22:16:00 2016 +0530"
      },
      "message": "Heat integration tests failing against https endpoints\n\nProvide ca_file option to pass the ca certificate to verify https\nconnection. Also pass verify parameter to the test cases which\ndirectly call requests library methods.\n\nChange-Id: I4a81047136d6a64b151180e95c254edea8165349\nCloses-Bug: #1553898\n"
    },
    {
      "commit": "104792cf4f8e18e82c1da709ba3969bccf34bca9",
      "tree": "be5d318c52f6c94b74fbda01523e07eda11cf8ea",
      "parents": [
        "a980d595cbb3c8e5096aee5be57218ac8f2051f8",
        "4d423740c196f37093135c4201774490d2198427"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Sun Mar 06 06:06:00 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sun Mar 06 06:06:00 2016 +0000"
      },
      "message": "Merge \"Fix problems in unicode template support\""
    },
    {
      "commit": "a980d595cbb3c8e5096aee5be57218ac8f2051f8",
      "tree": "9ddd681e7e0fa28f82513b2a380c21d8408060e9",
      "parents": [
        "e1a006e2a9acbff5c1941357dcb054ce7bf564aa",
        "a5bfe021c3bd31644f64ce7702baa438306a037f"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Sun Mar 06 05:01:47 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sun Mar 06 05:01:48 2016 +0000"
      },
      "message": "Merge \"Use oslo.utils.reflection to extract class name\""
    },
    {
      "commit": "4d423740c196f37093135c4201774490d2198427",
      "tree": "6b0b1f20254fa2cb689b56bc9a94dc60c7976646",
      "parents": [
        "e1a006e2a9acbff5c1941357dcb054ce7bf564aa"
      ],
      "author": {
        "name": "Ethan Lynn",
        "email": "xjunlin@cn.ibm.com",
        "time": "Wed Feb 17 16:32:51 2016 +0800"
      },
      "committer": {
        "name": "Ethan Lynn",
        "email": "xuanlangjian@gmail.com",
        "time": "Fri Mar 04 01:59:40 2016 +0000"
      },
      "message": "Fix problems in unicode template support\n\nIf we use unicode as resource name or parameter,\nwe are likely to encounter unicode problems.\nThis patch aims to fix unicode problems, and\nthere are several things to be clear:\n\n1. For the class wrap with six.python_2_unicode_compatible, in\npython2 their original __str__ function will map to __unicode__,\nand new __str__ function comes from __unicode__.encode.\nSo we should always return unicode in __str__() if wrap\nwith python_2_unicode_compatible.\n\n2. python_2_unicode_compatible will not handle __repr__,\n__repr__ should return str in all versions of python.\n\nCo-Authored-By: Ethan Lynn \u003cxjunlin@cn.ibm.com\u003e\nCloses-Bug: #1524194\nChange-Id: Ib4af43d153e0edf9d66308bf8e7b93a3be501d2e\n"
    },
    {
      "commit": "e1a006e2a9acbff5c1941357dcb054ce7bf564aa",
      "tree": "fec28fb3dd52b0eeb597987824daa0d63f370728",
      "parents": [
        "208752998e49c262fcb11a6ee2d3e69095f821f3",
        "a286a1393add42e919eeae3e7e81f124deeccdd2"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Mar 02 10:17:29 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Mar 02 10:17:30 2016 +0000"
      },
      "message": "Merge \"Fix test_encryption_vol_type to take admin creds from conf\""
    },
    {
      "commit": "208752998e49c262fcb11a6ee2d3e69095f821f3",
      "tree": "a9a002b9fb91be7ad69e96b23838a6a8398a6cd0",
      "parents": [
        "82bc628b0899c97c82b321b6b960421ba904153e"
      ],
      "author": {
        "name": "Jason Dunsmore",
        "email": "jasondunsmore@gmail.com",
        "time": "Thu Feb 25 14:23:37 2016 -0600"
      },
      "committer": {
        "name": "Jason Dunsmore",
        "email": "jasondunsmore@gmail.com",
        "time": "Tue Mar 01 21:00:16 2016 -0600"
      },
      "message": "Return HTTPBadRequest error from API for immutable parameters\n\nReturn HTTPBadRequest error from API instead of\nHTTPInternalServerError when immutable parameters are modified.\n\nChange-Id: I37ff6dd7295292b8cd08a7a5085590b654a7e4f2\n"
    },
    {
      "commit": "82bc628b0899c97c82b321b6b960421ba904153e",
      "tree": "b93d0059a94398889eca215233b74678f1c94556",
      "parents": [
        "4a4ccba84589ffecf404a2962280317b94d092d1",
        "3a178697af4c49cf852835c32b33bc65d91fe266"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Feb 26 16:44:05 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Feb 26 16:44:06 2016 +0000"
      },
      "message": "Merge \"Add functional test for immutable parameters\""
    },
    {
      "commit": "3a178697af4c49cf852835c32b33bc65d91fe266",
      "tree": "41610db06ff87b4dca7c7de5c779514e9698958c",
      "parents": [
        "9480c0e947ef97a546c919106d88dbf2d931a3de"
      ],
      "author": {
        "name": "James Combs",
        "email": "cornracker@gmail.com",
        "time": "Tue Dec 29 17:32:23 2015 +0000"
      },
      "committer": {
        "name": "Jason Dunsmore",
        "email": "jasondunsmore@gmail.com",
        "time": "Fri Feb 26 07:52:15 2016 -0600"
      },
      "message": "Add functional test for immutable parameters\n\nCo-Authored-By: Jason Dunsmore \u003cjasondunsmore@gmail.com\u003e\nChange-Id: I0f978e67ecbcaec65222f449cd41f20c768e9937\n"
    },
    {
      "commit": "4a4ccba84589ffecf404a2962280317b94d092d1",
      "tree": "b2baae3c8ca033dbfe890aec96f4b3859f318c76",
      "parents": [
        "9480c0e947ef97a546c919106d88dbf2d931a3de",
        "87be9b47190eb400ef4e909fb2ce1fac5a3f93de"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Feb 25 04:09:29 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Feb 25 04:09:29 2016 +0000"
      },
      "message": "Merge \"Add functional tests for update restrict\""
    },
    {
      "commit": "9480c0e947ef97a546c919106d88dbf2d931a3de",
      "tree": "b389149541a2943c5492bdcd071b76b29ac201c3",
      "parents": [
        "3b05eebd59ffe02a5026f9edcbbe1cebea7fffc5"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Wed Feb 24 13:08:06 2016 +0100"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Wed Feb 24 13:08:06 2016 +0100"
      },
      "message": "Make ZaqarEventSinkTest more lenient\n\nWe don\u0027t have strong ordering of events enforced, so there is no need to\ntest that events arrive in order, and it actually make tests fail\nintermittently. Let\u0027s relax that check.\n\nChange-Id: I73be763df5ddf863e29df1b9ac8792f05700e006\nCloses-Bug: #1549264\n"
    },
    {
      "commit": "3b05eebd59ffe02a5026f9edcbbe1cebea7fffc5",
      "tree": "7f480211bab8070a73a688b9253830a5517f005d",
      "parents": [
        "e08ac16daeb10f8b5fcaf6b2bca558f7534fd42d",
        "d60ebed9cdbf07a063da37af4ef409dfc89d9a8b"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Feb 24 11:05:45 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Feb 24 11:05:45 2016 +0000"
      },
      "message": "Merge \"Add function tests for event sinks\""
    },
    {
      "commit": "e08ac16daeb10f8b5fcaf6b2bca558f7534fd42d",
      "tree": "9eb78f996f2bc4cfdf3231cbcd53b155248bcc07",
      "parents": [
        "6212e2072eee9c786a28cc19403ee5437d84a5b6",
        "35571426830572a2a2b181d66fd4d4d0ff40023e"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Feb 24 10:02:00 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Feb 24 10:02:00 2016 +0000"
      },
      "message": "Merge \"Ignore errors on old properties during update\""
    },
    {
      "commit": "6212e2072eee9c786a28cc19403ee5437d84a5b6",
      "tree": "85adbd64e9fcb1202e1669b0afd938113fe4820c",
      "parents": [
        "58e3d04e06a6507eec044713c254ee589fc63dad",
        "e8256897bd8f2306475d4813d9dafeef8ddf69b2"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Feb 24 08:47:51 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Feb 24 08:47:52 2016 +0000"
      },
      "message": "Merge \"Revert \"Check RBAC policy for nested stacks\"\""
    },
    {
      "commit": "58e3d04e06a6507eec044713c254ee589fc63dad",
      "tree": "1337a681f542c64dfafa2f98ec366e4997c6ae23",
      "parents": [
        "cd37a02deba8d489362b122fc5f3a012f34377f7",
        "a90e262baedfe1f9a5a5624735874777655132b1"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Feb 24 07:05:46 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Feb 24 07:05:46 2016 +0000"
      },
      "message": "Merge \"Use yaml.safe_dump instead of yaml.dump\""
    },
    {
      "commit": "e8256897bd8f2306475d4813d9dafeef8ddf69b2",
      "tree": "4742fdf30ddf70dc0f60ea4adb96e072fcf92953",
      "parents": [
        "de2c55bad905abcd78d3360e79c667dad1d32f87"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Mon Feb 22 22:54:04 2016 +0000"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Mon Feb 22 22:54:04 2016 +0000"
      },
      "message": "Revert \"Check RBAC policy for nested stacks\"\n\nThis reverts commit 57fdf732a4bbec296c45355818e67549593c6afb.\n\nIt breaks magnum gate.\n\nChange-Id: I0553482d6b56edc08d29e1ab318b3b8962edc04d\n"
    },
    {
      "commit": "c2d1e0f9a028336e17f9b74be67a90b914c16e16",
      "tree": "51dc719454abea6258d5d8a2a2827cda99ebd7a6",
      "parents": [
        "e9ecb5cdc134d06288c9d30de732a190edc063dd",
        "de2c55bad905abcd78d3360e79c667dad1d32f87"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Feb 22 10:54:51 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Feb 22 10:54:51 2016 +0000"
      },
      "message": "Merge \"Check RBAC policy for nested stacks\""
    },
    {
      "commit": "d60ebed9cdbf07a063da37af4ef409dfc89d9a8b",
      "tree": "606a8ec72554fbf4c59c1b756925841661c1ac1d",
      "parents": [
        "e9ecb5cdc134d06288c9d30de732a190edc063dd"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Mon Jan 25 13:21:17 2016 +0100"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Mon Feb 22 09:41:13 2016 +0000"
      },
      "message": "Add function tests for event sinks\n\nAdd a new functional test using Zaqar as a target for event sinks. This\nfixes the behavior when convergence is on.\n\nChange-Id: I4bbdec55b98d0a261168229540a411d423e9406d\n"
    },
    {
      "commit": "a90e262baedfe1f9a5a5624735874777655132b1",
      "tree": "5a30cfba44398053f305f7994498f6d79fb8d08f",
      "parents": [
        "5f3632c2ae2c12ea6380ae22e6c6a6cc397b4b1f"
      ],
      "author": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Fri Feb 19 14:32:47 2016 +0530"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Sat Feb 20 07:45:32 2016 +0530"
      },
      "message": "Use yaml.safe_dump instead of yaml.dump\n\nAfter changing to use yaml.safe_load, some of the tests are failing\nlocally with unicode error. Though we\u0027ve not noticed these issues\nat the gate, it\u0027s better to use safe_dump to avoid them.\n\nChange-Id: I84cf921afe76b3bed44e84230a71b244bb886cce\nCloses-Bug: #1547399\n"
    },
    {
      "commit": "87be9b47190eb400ef4e909fb2ce1fac5a3f93de",
      "tree": "3d58c852bdb837c813c2c1d418f5d0b4fbc0a969",
      "parents": [
        "e9ecb5cdc134d06288c9d30de732a190edc063dd"
      ],
      "author": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Mon Feb 15 14:15:50 2016 +0530"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Fri Feb 19 17:34:35 2016 +0530"
      },
      "message": "Add functional tests for update restrict\n\nThis adds functional tests for update restrict functionality.\n\nChange-Id: I85e99b376203a48b725c6e9c1d9b5aefa8024b8e\nBlueprint: stack-update-restrict\n"
    },
    {
      "commit": "e9ecb5cdc134d06288c9d30de732a190edc063dd",
      "tree": "4a861479a91f7fffb1bbee062377411a5c421255",
      "parents": [
        "5f3632c2ae2c12ea6380ae22e6c6a6cc397b4b1f",
        "39c4ce4d2a061cc33b225d25102d6e9149db9bca"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Feb 19 10:50:46 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Feb 19 10:50:46 2016 +0000"
      },
      "message": "Merge \"Hook into environment merging on server\""
    },
    {
      "commit": "a286a1393add42e919eeae3e7e81f124deeccdd2",
      "tree": "fe7e2bb4bfcff681c05eb74e8a0e6d6a172df239",
      "parents": [
        "5f3632c2ae2c12ea6380ae22e6c6a6cc397b4b1f"
      ],
      "author": {
        "name": "Rakesh H S",
        "email": "rh-s@hpe.com",
        "time": "Thu Feb 18 18:54:00 2016 +0530"
      },
      "committer": {
        "name": "Rakesh H S",
        "email": "rh-s@hpe.com",
        "time": "Fri Feb 19 12:50:13 2016 +0530"
      },
      "message": "Fix test_encryption_vol_type to take admin creds from conf\n\nHeat integration test test_encryption_vol_type will not work in environments\nwhere admin user is named differently or does not have the same password as\nthat of the demo user.\n\nThe admin credentials is now made available via heat_integrationtests.conf.\nThe tests which require admin privileges should be run only if admin\ncredentials are available and use the same.\n\nChange-Id: I5f329be6d4c4249763e0aec8696fb87605a0812a\nCloses-Bug: #1546993\n"
    },
    {
      "commit": "6fc8a6ce0a7ea9a7872db8d58964a7214334e9fd",
      "tree": "96adfafefd87bbb488947697e4353bbf0f5d488f",
      "parents": [
        "aca8b2cdb0c0417e9b612d81d7e463d7412b155d",
        "d8df4ddfb10a9213e524ee25d14f271b7a4af727"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Feb 18 12:21:25 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Feb 18 12:21:25 2016 +0000"
      },
      "message": "Merge \"Use yaml.safe_load() instead of yaml.load()\""
    },
    {
      "commit": "d8df4ddfb10a9213e524ee25d14f271b7a4af727",
      "tree": "ce8d02eb6211cfcf52126ac01d7ce5b5493067c4",
      "parents": [
        "b95d7b5f22a7ac691da0da7652dcb29e8c9be3b7"
      ],
      "author": {
        "name": "Bo Wang",
        "email": "bo.wang@easystack.cn",
        "time": "Tue Feb 16 21:23:53 2016 +0800"
      },
      "committer": {
        "name": "Bo Wang",
        "email": "bo.wang@easystack.cn",
        "time": "Tue Feb 16 21:37:27 2016 +0800"
      },
      "message": "Use yaml.safe_load() instead of yaml.load()\n\nyaml.load() provides the ability to construct an arbitrary python object\nthat may be dangerous. yaml.safe_load() limits this ability to simple\npython objects like integers or lists.\n\nref: https://en.wikipedia.org/wiki/YAML#Security\n\nChange-Id: I9c28c25f4265fb691d39e72e20ef9c99f5538bf5\n"
    },
    {
      "commit": "a5bfe021c3bd31644f64ce7702baa438306a037f",
      "tree": "4518b551b1511f6d33a4fbbb9ad56e28a2f144f1",
      "parents": [
        "b95d7b5f22a7ac691da0da7652dcb29e8c9be3b7"
      ],
      "author": {
        "name": "Bo Wang",
        "email": "bo.wang@easystack.cn",
        "time": "Tue Feb 16 20:04:59 2016 +0800"
      },
      "committer": {
        "name": "Bo Wang",
        "email": "bo.wang@easystack.cn",
        "time": "Tue Feb 16 20:04:59 2016 +0800"
      },
      "message": "Use oslo.utils.reflection to extract class name\n\nThe oslo.utils.reflection.get_class_name() handles more variations\nof where a class name may come from (on) python 2 and python 3.\nIts usage allows getting more accurate class names so we\u0027d better use it.\n\nChange-Id: Iff0e109a558d0185f126781369bac216da930bca\n"
    },
    {
      "commit": "aca8b2cdb0c0417e9b612d81d7e463d7412b155d",
      "tree": "a5cd644099f20a652bbf5bc196a4c95cd2d66adc",
      "parents": [
        "3b7e3d88728227503e42fe9af2ed3f6f4137bdff"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Thu Jan 14 15:37:46 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Tue Feb 16 15:37:07 2016 +0800"
      },
      "message": "Don\u0027t pass both network_id and port_id when attach interface\n\nNova doesn\u0027t allow to specify both network_id and port_id\nwhen attach interfaces for server. This change will refactor\nhandler_kwargs for ServerUpdateProgress \u0027interface_detach\u0027.\n\nChange-Id: I74eb115de520d8a66abd1621522f0c605201019a\nCloses-Bug: #1533570\n"
    },
    {
      "commit": "39c4ce4d2a061cc33b225d25102d6e9149db9bca",
      "tree": "b45a78ef25db7b5e9c2e60d9618d579702c6bbfc",
      "parents": [
        "3b7e3d88728227503e42fe9af2ed3f6f4137bdff"
      ],
      "author": {
        "name": "Jay Dobies",
        "email": "jason.dobies@redhat.com",
        "time": "Wed Nov 04 10:49:08 2015 -0500"
      },
      "committer": {
        "name": "Jay Dobies",
        "email": "jason.dobies@redhat.com",
        "time": "Fri Feb 12 10:48:54 2016 -0500"
      },
      "message": "Hook into environment merging on server\n\nIf environment_files is specified, look in the files dict for each\nspecified environment file and merge into the stack\u0027s environment. This\nis the same workflow that previously occurred client-side.\n\nChange-Id: Ibe46fd35de7988920c101a83259c06c8f8a3ed0b\nImplements: blueprint multi-environments\n"
    },
    {
      "commit": "35571426830572a2a2b181d66fd4d4d0ff40023e",
      "tree": "1d755cb60120a279cb2d7817d15a589c247ab5b1",
      "parents": [
        "3b7e3d88728227503e42fe9af2ed3f6f4137bdff"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Tue Feb 09 18:33:19 2016 +0100"
      },
      "committer": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Wed Feb 10 20:51:40 2016 -0500"
      },
      "message": "Ignore errors on old properties during update\n\nWhen an update fails on a template resource, we still store the template\nin the stack environment. Retrying the update will fail because of\nmissing parameters, but we can ignore those as they should be harmless\nand only matter in this broken case.\n\nChange-Id: I859ea72b1cc95162b6f498b6af65e4d9fdd9458f\nCloses-Bug: #1543685\n"
    },
    {
      "commit": "3b7e3d88728227503e42fe9af2ed3f6f4137bdff",
      "tree": "3488eaaf619f86ed3303f94d4db5419b156b9e9b",
      "parents": [
        "d2f59146fe63fb8ad06c71e34b00729f10fae667"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Mon Jan 25 10:37:41 2016 +0100"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Tue Feb 09 10:19:36 2016 +0100"
      },
      "message": "Add test for zaqar-based wait conditions\n\nThis adds a test for wait conditions using Zaqar as a transport, and\nfixies the behavior so that signal handler uses the proper user.\n\nChange-Id: I2a972a5c1001e3e24c0e6c24b740b841918e5604\n"
    },
    {
      "commit": "fb44e333c6046c5c95a578092987f248e35172ea",
      "tree": "93f553f8ed3410dde8db66e4d75849c29ea07e19",
      "parents": [
        "21e4755f74c5da709d652b94a8c45ff4a2079bba",
        "e6de2d642f2c1163a81a082bc27d2eeaa2ec8bb6"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Sun Feb 07 15:33:01 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sun Feb 07 15:33:01 2016 +0000"
      },
      "message": "Merge \"Fix update preview to handle nested stacks\""
    },
    {
      "commit": "21e4755f74c5da709d652b94a8c45ff4a2079bba",
      "tree": "391371e77190dd2629f98649c4fd3ccefe807152",
      "parents": [
        "a9d3fdd191398399625a439468e411d98cf5666f",
        "65493fb301aa32de66464a6142c726ab4747b83a"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Feb 05 07:48:53 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Feb 05 07:48:54 2016 +0000"
      },
      "message": "Merge \"Accommodate v2 and v3 auth for integration tests\""
    },
    {
      "commit": "65493fb301aa32de66464a6142c726ab4747b83a",
      "tree": "d557e18d8afd0f74e4caf2dd24aba327810eda78",
      "parents": [
        "2bf8a9741a6c0f30db2bb8e47c7c9b553563d843"
      ],
      "author": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Fri Jan 29 22:23:21 2016 +0530"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Thu Feb 04 17:30:00 2016 +0530"
      },
      "message": "Accommodate v2 and v3 auth for integration tests\n\ndevstack has moved default Keystone API version to v3[1].\n\n[1] https://github.com/openstack-dev/devstack/commit/f4ce44bf3fbf06e53c2ae3ec6aa4996831cf4605\n\nThough the above patch has been reverted, this would help\nif devstack removes v2 support in the future.\n\nChange-Id: I393750d00b3712a015e48a3cf38ab5f95bb61dae\nCloses-Bug: #1539692\n"
    },
    {
      "commit": "e6de2d642f2c1163a81a082bc27d2eeaa2ec8bb6",
      "tree": "7152564c4d6224c23d07e31ac9410cf435d7e162",
      "parents": [
        "b95d7b5f22a7ac691da0da7652dcb29e8c9be3b7"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Mon Dec 07 15:59:09 2015 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Wed Feb 03 12:34:33 2016 +0000"
      },
      "message": "Fix update preview to handle nested stacks\n\nCurrently the update preview code has no support for previewing\nthe effect of an update on nested stacks, which I assume was an\noversight in the original implementation.  So this adds a show_nested\nflag to the API which allows enabling recursive preview of the whole\nupdate including nested stacks.\n\nCloses-Bug: #1521971\nDepends-On: I06f3b52d5d48dd5e6e266321e58ca8e6116d6017\nChange-Id: I96af4d2f07056846aac7ae9ad9b6eb160e8bd51a\n"
    },
    {
      "commit": "de2c55bad905abcd78d3360e79c667dad1d32f87",
      "tree": "6ee68fe2eaed4bd8451e13d43867e59ef7da9ee1",
      "parents": [
        "2bf8a9741a6c0f30db2bb8e47c7c9b553563d843"
      ],
      "author": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Thu Jan 28 17:33:29 2016 +0200"
      },
      "committer": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Tue Feb 02 14:41:23 2016 +0000"
      },
      "message": "Check RBAC policy for nested stacks\n\nThis prevents stacks with forbidden resources start to\ncreate/update or stuck in DELETE_IN_PROGRESS state, if\ndelete the stack with admin resources in nested stacks.\nAlso we need to allow get id of resource that in SUSPEND\nstate, because of we use stack preview in SUSPEND state.\n\nCloses-Bug: #1539145\nChange-Id: Ic0a6d6c334aa5fdb6d2c3ba549df86aeb1263e9e\n"
    },
    {
      "commit": "b95d7b5f22a7ac691da0da7652dcb29e8c9be3b7",
      "tree": "11b5c53ce80f13b3f98db5f2797e18e2395f9773",
      "parents": [
        "2bf8a9741a6c0f30db2bb8e47c7c9b553563d843",
        "d6b8ddf9ca5ccee6b8001b8e6c2c4bf7a3205c3c"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Feb 02 10:13:41 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Feb 02 10:13:41 2016 +0000"
      },
      "message": "Merge \"FunctionalTests don\u0027t run non-test check_skip_test\""
    },
    {
      "commit": "2bf8a9741a6c0f30db2bb8e47c7c9b553563d843",
      "tree": "4742fdf30ddf70dc0f60ea4adb96e072fcf92953",
      "parents": [
        "5bd048d24bac46999fab41879a3df9fc7c17cb0a",
        "2ce4bda022b7a333920f94c2da17f4790967dcd1"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Jan 28 22:12:00 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Jan 28 22:12:00 2016 +0000"
      },
      "message": "Merge \"Software config zaqar integration tests\""
    },
    {
      "commit": "5bd048d24bac46999fab41879a3df9fc7c17cb0a",
      "tree": "2858778ad45e59227a877678a68f017119668f52",
      "parents": [
        "fc3c5f06c41d86f9cf8bcacf3dda0207a72cdd8b",
        "62d9032c03ba2e2f895fd3501601454c3220a1eb"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Jan 28 15:06:54 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Jan 28 15:06:55 2016 +0000"
      },
      "message": "Merge \"Add test for stack outputs\""
    },
    {
      "commit": "62d9032c03ba2e2f895fd3501601454c3220a1eb",
      "tree": "1d032fbbee5c5473fe319c00bd36d5bb7377d541",
      "parents": [
        "357c46794608f802d5c8f983d951600c24ae91cc"
      ],
      "author": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Mon Dec 14 15:32:58 2015 +0200"
      },
      "committer": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Wed Jan 27 12:34:49 2016 +0000"
      },
      "message": "Add test for stack outputs\n\nAdd test for output list and output show\n\nDepends-On: I1bc1cee1c78ecf0c9a18ecc0a871d38e4141e0f7\nChange-Id: I1ee226494b5b04ec2d43edf0c03ab31e452fedf0\n"
    },
    {
      "commit": "fc3c5f06c41d86f9cf8bcacf3dda0207a72cdd8b",
      "tree": "1dbb620a4f7af5d4b7bf1af957d6082ff074ca43",
      "parents": [
        "357c46794608f802d5c8f983d951600c24ae91cc",
        "28b4870962813b4d8a3dfce0c977445bc676fbd0"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Jan 27 10:34:00 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Jan 27 10:34:00 2016 +0000"
      },
      "message": "Merge \"Do not pass both port-id and fixed-ip to create server\""
    },
    {
      "commit": "357c46794608f802d5c8f983d951600c24ae91cc",
      "tree": "9441ef32232d379eebf9ccf09771d8e516a44a85",
      "parents": [
        "32fd2e18805ca364f05988831c71755591b2f4c0",
        "203f875064a69071ff11caa3115cd92f8745bd86"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Jan 26 03:38:12 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jan 26 03:38:12 2016 +0000"
      },
      "message": "Merge \"Remove redundant _stack_rand_name from func tests\""
    },
    {
      "commit": "32fd2e18805ca364f05988831c71755591b2f4c0",
      "tree": "bf3982a00b7bd2bb2600756ca3e570f969d4ab70",
      "parents": [
        "6c7211c7bdb32df80cd503e892aa87720cdf82a8",
        "09ae1b0d7bb98b39e71bd3c718e90a76d8b49362"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jan 25 14:05:01 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jan 25 14:05:01 2016 +0000"
      },
      "message": "Merge \"test_preview_update only create one stack per test\""
    },
    {
      "commit": "203f875064a69071ff11caa3115cd92f8745bd86",
      "tree": "ad14c8014c1b240102eb763af8b670dbd4e2ce8c",
      "parents": [
        "6c7211c7bdb32df80cd503e892aa87720cdf82a8"
      ],
      "author": {
        "name": "Sergey Kraynev",
        "email": "skraynev@mirantis.com",
        "time": "Mon Jan 25 04:21:32 2016 -0500"
      },
      "committer": {
        "name": "Sergey Kraynev",
        "email": "skraynev@mirantis.com",
        "time": "Mon Jan 25 06:03:36 2016 -0500"
      },
      "message": "Remove redundant _stack_rand_name from func tests\n\nBase HeatIntegrationTest class uses _stack_rand_name method in\nstack_create method, so redundant using of _stack_rand_name should be removed\nin tests, where:\n 1. stacks.create method is not called directly\n 2. stacks_name is not used later in the test\n\nChange-Id: Iabdd945604a8276b33930b264689c3a2edadecd8\n"
    },
    {
      "commit": "2ce4bda022b7a333920f94c2da17f4790967dcd1",
      "tree": "c981d695bd1fddeb88730a0fd53b2d6034c0face",
      "parents": [
        "6c7211c7bdb32df80cd503e892aa87720cdf82a8"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Fri Jan 22 17:55:55 2016 +0100"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Sun Jan 24 14:20:58 2016 +0100"
      },
      "message": "Software config zaqar integration tests\n\nAdd a software deployment test which uses Zaqar as config transport.\n\nChange-Id: I4723e0c3aca86e543d5af39db82a66304f261e20\n"
    },
    {
      "commit": "d6b8ddf9ca5ccee6b8001b8e6c2c4bf7a3205c3c",
      "tree": "1ab76be0dfde328b24d6f90becf862126de328f5",
      "parents": [
        "d6dfa3c6b277ea98a0e2b63d2836d4763845ddb0"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Mon Jan 18 17:23:20 2016 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Mon Jan 18 17:23:20 2016 +0000"
      },
      "message": "FunctionalTests don\u0027t run non-test check_skip_test\n\nThis is actually a helper function which is called from the base-class\nsetUp methods, but we\u0027re running it like a test because the test\nrunner sees \"test\" in the name.\n\nChange-Id: I9d350471a3f3f40a201294adebd7752e3a7aa020\n"
    },
    {
      "commit": "d6dfa3c6b277ea98a0e2b63d2836d4763845ddb0",
      "tree": "2c4eb1579666ec655ec434bdc007168a94fa8e3c",
      "parents": [
        "9bc0e9424d8d22dead84b10084df81e68bad15db",
        "0f70c28402d1bbe2e52bff4f8b1beff47c8d37fb"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jan 18 13:14:40 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jan 18 13:14:41 2016 +0000"
      },
      "message": "Merge \"Fix database purge query\""
    },
    {
      "commit": "09ae1b0d7bb98b39e71bd3c718e90a76d8b49362",
      "tree": "c4f48aa4cd91e1eb3353138c02681404096b8835",
      "parents": [
        "9bc0e9424d8d22dead84b10084df81e68bad15db"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Mon Jan 18 11:31:52 2016 +0000"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Mon Jan 18 11:33:18 2016 +0000"
      },
      "message": "test_preview_update only create one stack per test\n\nCurrently some tests create two stacks, but only require one, which\nwastes some time (as much as 20s locally, probably much more in the\ngate), so instead just create one stack per test.\n\nChange-Id: I474877becdd64f30abdcc5758c5927ed6b5a13ff\n"
    },
    {
      "commit": "28b4870962813b4d8a3dfce0c977445bc676fbd0",
      "tree": "ab79dc928e2bde25bf13f99b73fac35cf81cf568",
      "parents": [
        "9bc0e9424d8d22dead84b10084df81e68bad15db"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Wed Jan 13 17:24:32 2016 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Mon Jan 18 13:03:02 2016 +0800"
      },
      "message": "Do not pass both port-id and fixed-ip to create server\n\nNova doesn\u0027t allow specify port-id and fixed-ip at the same\ntime when create server. This patch to avoid this problem\nwhen create internal port by subnet.\n\nAlso, this change adds integration test for create server\nwith subnet and fixed_ip.\n\nChange-Id: Ib16d7f90a4eb488a853f9c2093280596fc4d783b\nPartial-Bug: #1533074\n"
    },
    {
      "commit": "9bc0e9424d8d22dead84b10084df81e68bad15db",
      "tree": "dd1007327640ec71cebb3b785a88fa44fbefa690",
      "parents": [
        "45133ca91d38e49f4c3f5a4aaa0b68db0e3c3451",
        "abf97890517ef671774e7efc862f98852956e87c"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Jan 14 06:29:44 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Jan 14 06:29:44 2016 +0000"
      },
      "message": "Merge \"Add tests for heat template apis\""
    },
    {
      "commit": "45133ca91d38e49f4c3f5a4aaa0b68db0e3c3451",
      "tree": "f3ab27aa610410394610d16163119594045da3a0",
      "parents": [
        "9593716a97f8f9dc0577cc7d539a4c7571b6d527",
        "fb53d4218b5655d69fd66711313f3810b94f6aae"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Jan 08 03:57:20 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Jan 08 03:57:29 2016 +0000"
      },
      "message": "Merge \"Fix race condition in tests with swift key\""
    },
    {
      "commit": "abf97890517ef671774e7efc862f98852956e87c",
      "tree": "dc957f744b2938de7d2f6155534eff36f81b0083",
      "parents": [
        "35db11a181bdf6ca2d86430e7a2e5d96d12e8197"
      ],
      "author": {
        "name": "sabeensyed",
        "email": "sabeen.syed@rackspace.com",
        "time": "Wed Oct 21 18:20:48 2015 +0000"
      },
      "committer": {
        "name": "Sabeen",
        "email": "sabeen.syed@rackspace.com",
        "time": "Wed Jan 06 18:02:42 2016 +0000"
      },
      "message": "Add tests for heat template apis\n\nThis patch covers 4 template api calls -\n1. Get stack template\n2. List template versions\n3. List resource types\n4. Show resource schema\n\nChange-Id: I85b16b8893264d1313e2e184011dd0ddfdaa4349\n"
    },
    {
      "commit": "fb53d4218b5655d69fd66711313f3810b94f6aae",
      "tree": "88baf018dda2411a09715ae19c06b8395110eb98",
      "parents": [
        "35db11a181bdf6ca2d86430e7a2e5d96d12e8197"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Tue Jan 05 15:29:03 2016 +0100"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Wed Jan 06 11:19:42 2016 +0100"
      },
      "message": "Fix race condition in tests with swift key\n\nIn integration we publish templates in Swift using temporary URLs.\nUnfortunately there is a race condition in the way we setup the key, as\nwe use the key global to the account. This switches to a container per\ntest and a key per container to work around that.\n\nChange-Id: Ia19967696811847e5b3ba07df68848a1708c2316\nCloses-Bug: #1491773\n"
    },
    {
      "commit": "9593716a97f8f9dc0577cc7d539a4c7571b6d527",
      "tree": "0967830a3c0389d7ba603cae52742fac3d4e7ab3",
      "parents": [
        "35db11a181bdf6ca2d86430e7a2e5d96d12e8197"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Sat Oct 31 11:26:55 2015 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Wed Jan 06 16:01:26 2016 +0800"
      },
      "message": "Improve gateway_ip updation for subnet\n\nAllow update \u0027gateway_ip\u0027 to null or empty for\nneutron subnet, and keep the same behavior as\ncreation.\nAlso, this change adds some related functional\ntests for neutron subnet resource.\n\nCloses-Bug: #1510800\nChange-Id: Ib5511402e1d118457356a8add0042be2b157eb24\n"
    },
    {
      "commit": "35db11a181bdf6ca2d86430e7a2e5d96d12e8197",
      "tree": "49295e6ae8631f74da8a68dcac8bd135918b0826",
      "parents": [
        "098204d7d5161474c9ed2247b3e9457b785b48a3"
      ],
      "author": {
        "name": "LiuNanke",
        "email": "nanke.liu@easystack.cn",
        "time": "Sun Jan 03 03:34:58 2016 +0800"
      },
      "committer": {
        "name": "LiuNanke",
        "email": "nanke.liu@easystack.cn",
        "time": "Sun Jan 03 03:34:58 2016 +0800"
      },
      "message": "Replace assertTrue(isinstance()) with assertIsInstance()\n\nSome of tests use different method of assertTrue(isinstance(A, B)) or\nassertEqual(type(A), B). The correct way is to use assertIsInstance(A,\nB) provided by testtools.\nThere has one more place should be modified.\n\nChange-Id: I751a2fb79857c09952a59e29301bf54ff6482d01\nCloses-bug: #1268480\n"
    },
    {
      "commit": "098204d7d5161474c9ed2247b3e9457b785b48a3",
      "tree": "5e2f38e12339dc0bf6fcb4e7c7eb2a75e479a947",
      "parents": [
        "1bddf7e6c0eb11181130805cbfb8ff8a291f8d1b",
        "c7e36ede989f28b0fa03bb9793581570e084b003"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Dec 30 08:27:04 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Dec 30 08:27:05 2015 +0000"
      },
      "message": "Merge \"Using LOG.warning replace LOG.warn\""
    },
    {
      "commit": "c7e36ede989f28b0fa03bb9793581570e084b003",
      "tree": "6efd36f5ee0d51bf1944f9bbab26f2a173679247",
      "parents": [
        "6b378ab1885ef5e1e8cb05fd20482b72c9d029b8"
      ],
      "author": {
        "name": "LiuNanke",
        "email": "nanke.liu@easystack.cn",
        "time": "Tue Dec 29 12:54:49 2015 +0800"
      },
      "committer": {
        "name": "LiuNanke",
        "email": "nanke.liu@easystack.cn",
        "time": "Tue Dec 29 09:32:42 2015 +0000"
      },
      "message": "Using LOG.warning replace LOG.warn\n\n\n*Python 3 deprecated the logger.warn method, see:\n*https://docs.python.org/3/library/logging.html#logging.warning\n*so we prefer to use warning to avoid DeprecationWarning.\n\nChange-Id: I07ee9c97c3548c965aaf83d34b37b23e9baba584\n"
    },
    {
      "commit": "1bddf7e6c0eb11181130805cbfb8ff8a291f8d1b",
      "tree": "0bd1a9612f4a3c654fd12cd032ee46bc6fcc9e18",
      "parents": [
        "398e6bd6ce89dada71327598d8149dd80caa6ec8",
        "444b74b631043e8328b6927c81834026cde61597"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Sat Dec 26 09:11:16 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sat Dec 26 09:11:16 2015 +0000"
      },
      "message": "Merge \"Trivial: Remove unused logging import\""
    },
    {
      "commit": "398e6bd6ce89dada71327598d8149dd80caa6ec8",
      "tree": "4be5e3003c0cf46a08c14b544aa66899f333b21a",
      "parents": [
        "a4211daa452085799591c97e4e0a1a0fa50db10c"
      ],
      "author": {
        "name": "hgangwx",
        "email": "hgangwx@cn.ibm.com",
        "time": "Sat Dec 26 18:06:39 2015 +0800"
      },
      "committer": {
        "name": "hgangwx",
        "email": "hgangwx@cn.ibm.com",
        "time": "Sat Dec 26 18:08:47 2015 +0800"
      },
      "message": "Wrong usage of \"a\"\n\nWrong usage of \"a\" in the mesages:\n\"a integer representing the number of matched stacks\"\n\"Send a signal and a exception will raise\"\nShould be:\n\"an integer representing the number of matched stacks\"\n\"Send a signal and an exception will raise\"\nTotally 3 occasion in Heat base code.\n\nChange-Id: Ic5ff16dd8d31d4573490ac423f7457e75b872e6b\n"
    },
    {
      "commit": "444b74b631043e8328b6927c81834026cde61597",
      "tree": "ce3bfed53e7974d11dd667869ca6503043dbfa75",
      "parents": [
        "a4211daa452085799591c97e4e0a1a0fa50db10c"
      ],
      "author": {
        "name": "Bo Wang",
        "email": "bo.wang@easystack.cn",
        "time": "Sat Dec 26 11:28:20 2015 +0800"
      },
      "committer": {
        "name": "Bo Wang",
        "email": "bo.wang@easystack.cn",
        "time": "Sat Dec 26 15:30:20 2015 +0800"
      },
      "message": "Trivial: Remove unused logging import\n\nChange-Id: I17b021de2bc2bb5f0797bc0b5a7b4d80eac78c95\n"
    },
    {
      "commit": "a4211daa452085799591c97e4e0a1a0fa50db10c",
      "tree": "2b8ff6747407a68f9c627a2cd52d8aa2a9156bfd",
      "parents": [
        "6b378ab1885ef5e1e8cb05fd20482b72c9d029b8"
      ],
      "author": {
        "name": "Jay Dobies",
        "email": "jason.dobies@redhat.com",
        "time": "Wed Nov 25 15:36:27 2015 -0500"
      },
      "committer": {
        "name": "Jay Dobies",
        "email": "jason.dobies@redhat.com",
        "time": "Wed Dec 16 10:08:38 2015 -0500"
      },
      "message": "Added ResourceChain plugin\n\nImplements: blueprint resource-chain\nChange-Id: If510abe260ea7852dfe2d1f7f92b529979483068\n"
    },
    {
      "commit": "0f70c28402d1bbe2e52bff4f8b1beff47c8d37fb",
      "tree": "1d234fc160af4eac19cbd0e035b08d1cb36d185c",
      "parents": [
        "6b378ab1885ef5e1e8cb05fd20482b72c9d029b8"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Wed Dec 09 16:45:30 2015 +0100"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Tue Dec 15 11:58:01 2015 +0100"
      },
      "message": "Fix database purge query\n\nFix raw_template purge query on MySQL, and handle stack tags before\nremoving stacks. This also removes a bunch of race conditions where we\ndeleted incorrect data.\n\nChange-Id: I7b7a1d94acefbaeeed86f1833c979819361c8988\nCloses-Bug: #1524387\n"
    },
    {
      "commit": "6b378ab1885ef5e1e8cb05fd20482b72c9d029b8",
      "tree": "d257a2ab6c13d9462622e4737c19847965d831b2",
      "parents": [
        "773a4a6740ddde8e7d735f5574e5cc526b533172"
      ],
      "author": {
        "name": "Kanagaraj Manickam",
        "email": "kanagaraj.manickam@hp.com",
        "time": "Mon May 11 17:34:43 2015 +0530"
      },
      "committer": {
        "name": "Jason Dunsmore",
        "email": "jasondunsmore@gmail.com",
        "time": "Fri Nov 20 09:17:41 2015 -0600"
      },
      "message": "Split abandon into pre-abandon(export) and abandon\n\nSplits the existing abandon action into two actions as\nbelow:\n1. export: User is recommended to run export successfully\n   before doing the abandon action. It returns the stack\n   data, which can be used for adopting stack.\n2. abandon: Abandons the given stack\n\nPartial-Bug: #1353670\n\nCo-Authored-By: Jason Dunsmore \u003cjasondunsmore@gmail.com\u003e\nChange-Id: I65264d91b1378df9cb3e492bc6ccaa778940dd6b\n"
    },
    {
      "commit": "773a4a6740ddde8e7d735f5574e5cc526b533172",
      "tree": "60d08aac66d6073aef3a414957b387e7f7bcdc26",
      "parents": [
        "8a3c1ececfecbd8d0e2a37145e2e3f959b848762",
        "b0cccac0d6824d4cb0ad1f81f0e02e2ebd120ef2"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Nov 17 21:18:31 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Nov 17 21:18:31 2015 +0000"
      },
      "message": "Merge \"Add a test for environment change in failed update\""
    },
    {
      "commit": "8a3c1ececfecbd8d0e2a37145e2e3f959b848762",
      "tree": "b94d952031b311d305d162cba481bfc890f28712",
      "parents": [
        "b1d2705dfcf11faeda3bf9fd604cf4814e775f8a"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Wed Oct 21 18:56:01 2015 +0100"
      },
      "committer": {
        "name": "Zane Bitter",
        "email": "zbitter@redhat.com",
        "time": "Mon Nov 16 10:43:40 2015 -0500"
      },
      "message": "Allow in-place updates for all compatible types\n\nWe previously only allowed a resource to update in-place when the \u0027type\u0027\nfield in the old and new templates matched. In an age of environment type\nmappings, this is incorrect. Instead, allow a resource to be updated\nin-place when the old and new resource plugins are of the same class, since\nthis is actually what determines whether handle_update is capable of\ncorrectly updating the resource in-place.\n\nThere is a special-case for TemplateResource as we currently subclass it\nfor each template type, but all TemplateResource subclasses are in fact\ncapable of converting between each other via a stack update.\n\nChange-Id: Iba4abf5efd9737ca6a17d8c91d5c54ab6d3f12e0\nCo-Authored-By: Zane Bitter \u003czbitter@redhat.com\u003e\nCloses-Bug: #1508115\n"
    },
    {
      "commit": "b0cccac0d6824d4cb0ad1f81f0e02e2ebd120ef2",
      "tree": "b05283969627fccb2a6256889600a22edf78b9d2",
      "parents": [
        "b1d2705dfcf11faeda3bf9fd604cf4814e775f8a"
      ],
      "author": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Fri Nov 13 09:35:55 2015 +0100"
      },
      "committer": {
        "name": "Thomas Herve",
        "email": "therve@redhat.com",
        "time": "Fri Nov 13 17:13:48 2015 +0100"
      },
      "message": "Add a test for environment change in failed update\n\nAdd a functional test which verifies that adding a new resource during\nan update, with a new custom resource type mapping in the environment,\nallows for recovery when the update fails.\n\nChange-Id: I7e52703b7f45c79a3a1434200d1e49988e78f333\nRelated-Bug: 1508096\n"
    },
    {
      "commit": "80519ebeff1c8b9ca19afcd8c0bdc9648677a566",
      "tree": "504cca9bcc905fa24848e84b858e1d07e7d29a06",
      "parents": [
        "855d1c0daae2723ea2e16693e566fd9e48383b1f"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Sat Oct 31 17:55:54 2015 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Mon Nov 02 10:08:36 2015 +0800"
      },
      "message": "Allow to update subnet without \u0027allocation_pools\u0027\n\nHeat allow to update \u0027allocation_pools\u0027 for subnet\nresource in Change: I26f96f712dfa9405814e26a06668db7a608e84b8,\nbut the patch introduced a problem: if user remove the\n\u0027allocation_pools\u0027 from template when updating, heat will\npass \u0027allocation_pools\u003dNone\u0027 to neutron, but neutron doesn\u0027t\naccept the None value for this property, an error will be\nraised: BadRequest: Invalid input for allocation_pools.\nReason: Invalid data format for IP pool: \u0027None\u0027. This patch\nwill pass [] to neutron to fix this problem.\n\nChange-Id: I83e56d4494564de97717da6f6c0a9ae2cd9852dd\nCloses-Bug: #1511909\n"
    },
    {
      "commit": "855d1c0daae2723ea2e16693e566fd9e48383b1f",
      "tree": "4882f9469aa15f7cc3d606eee5331d7bf1f4685c",
      "parents": [
        "3eab294d7ffcf4c0d7ffca3d7f0431382342766f"
      ],
      "author": {
        "name": "Bertrand Lallau",
        "email": "bertrand.lallau@thalesgroup.com",
        "time": "Mon Oct 26 16:37:37 2015 +0100"
      },
      "committer": {
        "name": "Bertrand Lallau",
        "email": "bertrand.lallau@gmail.com",
        "time": "Mon Oct 26 22:45:25 2015 +0100"
      },
      "message": "Use assertTrue/False instead of assertEqual(T/F)\n\nThe usage of assertEqual(True/False, ***) should be changed to a more\nmeaningful format of assertTrue/False(***).\n\nChange-Id: I685f7bb0b4669d8813ebbb796b6014ad44d7ff0c\nCloses-Bug: #1510001\n"
    },
    {
      "commit": "1c17ec33ae4b0d4059f68c70fe4c87d3fbbd2eab",
      "tree": "620f3a35495f8fd73e31b7d0088f0040b0ca5e4b",
      "parents": [
        "80c90edd34f530679fd0ab9e926620868c313092",
        "8bcff8a66aa86615434b7543e39ba9afbd01f2b7"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Oct 20 12:11:07 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Oct 20 12:11:07 2015 +0000"
      },
      "message": "Merge \"Add functional test for ResourceGroup rolling_update\""
    },
    {
      "commit": "8bcff8a66aa86615434b7543e39ba9afbd01f2b7",
      "tree": "e6b9e165b373ea084e6bb0a646b9ad8a4ae3bd5a",
      "parents": [
        "f0ac9583fa7346951c1ff5e5c8e3fb812dd36344"
      ],
      "author": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Mon Sep 21 18:15:04 2015 +0530"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Fri Oct 16 17:32:56 2015 +0530"
      },
      "message": "Add functional test for ResourceGroup rolling_update\n\nChange-Id: I77456afde1a425aacce5d9778825861179ac89aa\n"
    },
    {
      "commit": "06b1127962fe566f50168752e06b80d213e970c0",
      "tree": "9f679bb99922c0d5b8d9df1657eb677768c9eff0",
      "parents": [
        "f0ac9583fa7346951c1ff5e5c8e3fb812dd36344"
      ],
      "author": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Wed Oct 14 10:19:22 2015 +0530"
      },
      "committer": {
        "name": "Rabi Mishra",
        "email": "ramishra@redhat.com",
        "time": "Wed Oct 14 10:25:53 2015 +0530"
      },
      "message": "Remove unnecessary update_replace parameter\n\nFor tests in AutoScalingGroupUpdatePolicyTest, update_replace happens\nbased on the changes to properties(ImageId vs InstanceType) and\nupdate_replace parameter is not used.\n\nChange-Id: I72c7e81dd29693c4cf90c64f37911a529f65d541\n"
    },
    {
      "commit": "f0ac9583fa7346951c1ff5e5c8e3fb812dd36344",
      "tree": "1b1addd3af5f362f3ee0d4b67177f8319139794e",
      "parents": [
        "6a1b9053e5133e7da688932223dac3f18d041907"
      ],
      "author": {
        "name": "Peter Razumovsky",
        "email": "prazumovsky@mirantis.com",
        "time": "Thu Sep 24 16:49:03 2015 +0300"
      },
      "committer": {
        "name": "Peter Razumovsky",
        "email": "prazumovsky@mirantis.com",
        "time": "Thu Oct 08 15:13:52 2015 +0300"
      },
      "message": "Fix [H405] pep rule in heat_integrationtests\n\nImplements bp docstring-improvements\n\nChange-Id: I7aebbdafef121c3414e6a0260452c1353af62e88\n"
    },
    {
      "commit": "6a1b9053e5133e7da688932223dac3f18d041907",
      "tree": "2291f3ade28245f11fbb410a3e59464d356b3122",
      "parents": [
        "aec5307b418e8053330998ea5913a912314fffdc",
        "d1ab9c6a3fa10aaf669a375aacd735a87cc6bf50"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Oct 06 22:21:28 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Oct 06 22:21:28 2015 +0000"
      },
      "message": "Merge \"Try polling swift object before creating stack\""
    },
    {
      "commit": "aec5307b418e8053330998ea5913a912314fffdc",
      "tree": "77f3d13a818298bd19c81583d4a889ed2c7af45e",
      "parents": [
        "d8b1d63487186314eea341d47b1a49cb537e14c1",
        "b5aa902ef56ee9d73f78fdc596f96f02f2fde669"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Oct 06 14:50:25 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Oct 06 14:50:26 2015 +0000"
      },
      "message": "Merge \"Add integration tests for preview update\""
    },
    {
      "commit": "d8b1d63487186314eea341d47b1a49cb537e14c1",
      "tree": "af95d2eb573ab91f164ed54f942210be4c5a9655",
      "parents": [
        "23284b69034f5ba090cf727d358033304d86fb2e",
        "dd5a6078467790548ecdfe240f3e46e089686577"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Oct 06 11:18:16 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Oct 06 11:18:16 2015 +0000"
      },
      "message": "Merge \"Test case for resource_facade\""
    },
    {
      "commit": "d1ab9c6a3fa10aaf669a375aacd735a87cc6bf50",
      "tree": "7009cecc215bd8e4b8dc1cb976b55c81e2e9b443",
      "parents": [
        "23284b69034f5ba090cf727d358033304d86fb2e"
      ],
      "author": {
        "name": "Angus Salkeld",
        "email": "asalkeld@mirantis.com",
        "time": "Tue Oct 06 13:58:34 2015 +1000"
      },
      "committer": {
        "name": "Angus Salkeld",
        "email": "asalkeld@mirantis.com",
        "time": "Tue Oct 06 13:59:31 2015 +1000"
      },
      "message": "Try polling swift object before creating stack\n\nChange-Id: I185d13c8c89df7ee27a7b4740d8895b3367fafa6\nCloses-bug: #1491773\n"
    },
    {
      "commit": "23284b69034f5ba090cf727d358033304d86fb2e",
      "tree": "9af51e92baecbd11acb200f0c9097c49a6157708",
      "parents": [
        "a30ac12adc5047bafcfcf48359090e70b4c0759e"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Thu Oct 01 19:03:42 2015 +0100"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Fri Oct 02 10:42:09 2015 +0100"
      },
      "message": "Add functional test coverage for PATCH updates\n\nAdds coverage for patch updates which didn\u0027t land previously with the\ncode.\n\nChange-Id: I66b721d1af787e9d64b8b942818a6c8b4412fa7b\nRelated-Bug: #1224828\n"
    },
    {
      "commit": "1c6c392e675061cc337a03e69dc06daaf4ff9cad",
      "tree": "3e9805b8e87b175c67cec357e8c3984486af7eca",
      "parents": [
        "1abc2724fba5c9334789291b3f7107b32e39530f",
        "775a13888ce1a2141cb0e45ed39a4462cc26aa9f"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Sep 24 01:13:35 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Sep 24 01:13:35 2015 +0000"
      },
      "message": "Merge \"Adding basic test to exercise the heat event APIs.\""
    },
    {
      "commit": "1abc2724fba5c9334789291b3f7107b32e39530f",
      "tree": "8e746bb167ace7c7c2242ee04d96c48ebc73f4da",
      "parents": [
        "e9aafe54beefaa89f531a84943140783dd957a51",
        "03767a8633fad9040481ab83c45b303f26531709"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Sep 22 10:50:00 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Sep 22 10:50:00 2015 +0000"
      },
      "message": "Merge \"Allow nested validation for template-validate\""
    },
    {
      "commit": "e9aafe54beefaa89f531a84943140783dd957a51",
      "tree": "a4e716ae2ef60be80e4934b6781ffa4f0dcd9969",
      "parents": [
        "dca518b3496f8bbdffaae99c22eb8a7e2a86ed3a",
        "8ba6253d1f541a16632ec940d9b20cb48a372ab2"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Sep 22 09:04:49 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Sep 22 09:04:49 2015 +0000"
      },
      "message": "Merge \"Handle replace and rollback cases for Port\""
    },
    {
      "commit": "03767a8633fad9040481ab83c45b303f26531709",
      "tree": "95567c36d84f682a05e0868a2ed13835e9e8472f",
      "parents": [
        "dca518b3496f8bbdffaae99c22eb8a7e2a86ed3a"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Wed Sep 16 14:07:58 2015 +0100"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Tue Sep 22 08:27:28 2015 +0100"
      },
      "message": "Allow nested validation for template-validate\n\nAdds an optional flag that causes template-validate to recursively\nvalidate nested stacks and expose a schema of the parameters for\nall stacks in the tree.  This uses a similar method to stack preview\nin that it builds the tree in memory so we can then walk it and\nextract the parameter data we need.\n\nChange-Id: I7e3d752124997a0a7b8ff53e774ed8034dd2f81d\nCo-Authored-By: Jay Dobies \u003cjdobies@redhat.com\u003e\nImplements-blueprint: nested-validation\n"
    },
    {
      "commit": "b5aa902ef56ee9d73f78fdc596f96f02f2fde669",
      "tree": "8dbd2caa74d47cf022fc6305892de7425d0fa6aa",
      "parents": [
        "a064e289436989e27edf8baa58fed9fe69dd2950"
      ],
      "author": {
        "name": "Jason Dunsmore",
        "email": "jasondunsmore@gmail.com",
        "time": "Wed Sep 09 16:57:04 2015 -0500"
      },
      "committer": {
        "name": "Jason Dunsmore",
        "email": "jasondunsmore@gmail.com",
        "time": "Mon Sep 21 15:13:43 2015 -0500"
      },
      "message": "Add integration tests for preview update\n\nChange-Id: Ie67da09ad32185a18493fded18e24894b8c195d4\nBP: update-dry-run\n"
    },
    {
      "commit": "dca518b3496f8bbdffaae99c22eb8a7e2a86ed3a",
      "tree": "865875e9aa78c4d4abe75e42e6fc16a8c94a47c1",
      "parents": [
        "1c8499db32a9a3a644ca1a79cae9184bd2d2cd1b"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Fri Sep 18 18:19:40 2015 +0100"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Mon Sep 21 14:27:16 2015 +0100"
      },
      "message": "Add a functional test proving OS::Heat::None works with validate\n\nPreviously the template-validate logic failed when overriding\nresources with OS::Heat::None in the resource_registry, despite\nthis working fine via create/preview.\n\nSince the fix for bug #1467573 has aligned the template-validate\nlogic with that of create/preview, this should now work.\n\nChange-Id: Id8d0be57d347e7ef6714477747949bd2dadd470c\nCloses-Bug: #1495914\n"
    },
    {
      "commit": "1c8499db32a9a3a644ca1a79cae9184bd2d2cd1b",
      "tree": "4d8a8dd1ed4aae3e84d78e39335eef5fc52d100e",
      "parents": [
        "741938299bc611e441299278c4c18f4faa7fdc0c"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Fri Sep 18 15:49:12 2015 +0100"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Fri Sep 18 18:59:31 2015 +0100"
      },
      "message": "Always return default via template-validate \"Default\"\n\nCurrently we redefine the value of Default when a user value is\nprovided, which means the data returned doesn\u0027t match the schema\ndefined in the template.  Instead always return the actual default\nand add a \"Value\" key that contains the user value, if provided.\n\nChange-Id: If4ed0b733d4e61c84167063c36cdcb234b001136\nCloses-Bug: #1497310\n"
    },
    {
      "commit": "775a13888ce1a2141cb0e45ed39a4462cc26aa9f",
      "tree": "c6b757f384dc964cd5d2cffe4932f47db9add951",
      "parents": [
        "9cc3a5fb894bac7193a7691f90fc3ecb13255bb6"
      ],
      "author": {
        "name": "James Combs",
        "email": "cornracker@gmail.com",
        "time": "Mon Aug 31 20:50:51 2015 +0000"
      },
      "committer": {
        "name": "James Combs",
        "email": "cornracker@gmail.com",
        "time": "Fri Sep 18 16:21:00 2015 +0000"
      },
      "message": "Adding basic test to exercise the heat event APIs.\n\nChange-Id: I8ff9554b38e3a72fbf6bb09ca074191e13585bd8\n"
    },
    {
      "commit": "741938299bc611e441299278c4c18f4faa7fdc0c",
      "tree": "4c64c6c12a42459b7fc263b15cec3f57373accee",
      "parents": [
        "6199eb07caf85f5cc7eac18dbd448c654ed2c08e"
      ],
      "author": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Tue Sep 15 09:38:26 2015 +0100"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Thu Sep 17 14:23:35 2015 +0100"
      },
      "message": "Add initial functional test for template-validate\n\nProve basic template validation functionality, will provide additional\nconfidence that subsequent rework to the internal implementation doesn\u0027t\nbreak the API.\n\nChange-Id: Ieb605ca66dfdf3e25b0a7a703df3015b817e615b\nPartial-Bug: #1467573\n"
    },
    {
      "commit": "8ba6253d1f541a16632ec940d9b20cb48a372ab2",
      "tree": "2bc26d773e4a028dbe6beca28b443cd126d654ae",
      "parents": [
        "6199eb07caf85f5cc7eac18dbd448c654ed2c08e"
      ],
      "author": {
        "name": "Sergey Kraynev",
        "email": "skraynev@mirantis.com",
        "time": "Fri Sep 04 05:18:02 2015 -0400"
      },
      "committer": {
        "name": "Sergey Kraynev",
        "email": "skraynev@mirantis.com",
        "time": "Wed Sep 16 14:05:45 2015 +0000"
      },
      "message": "Handle replace and rollback cases for Port\n\nAdd prepare_for_replace and restore_after_rollback methods for port\nresource. Now if port has fixed_ip address it will be correctly handled\nduring UpdateReplace, i.e. we detach this ip and store it in self.data.\nIn case, when rollback happens, fixed_ips data will be taken from\nself.data of resource in _backup_stack.\n\nFollow functional tests was added:\n - enable test with simple replacing port\n - test for failed update with rollback\n - test for failed update without rollback and second repair update\n\nimplements bp rich-network-prop\n\nChange-Id: Id3877ed8cb1097f6c93725806d137ea67ab07466\nCloses-Bug: #1455100\n"
    },
    {
      "commit": "6199eb07caf85f5cc7eac18dbd448c654ed2c08e",
      "tree": "081b310a158ff812a65b9b3b434bb382fed7d606",
      "parents": [
        "9cc3a5fb894bac7193a7691f90fc3ecb13255bb6",
        "6a20e3b7439c421441c781bbc731ee3b2365544b"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Sep 16 11:02:59 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Sep 16 11:02:59 2015 +0000"
      },
      "message": "Merge \"Validate TemplateResource schema when based on other templates\""
    },
    {
      "commit": "9cc3a5fb894bac7193a7691f90fc3ecb13255bb6",
      "tree": "e4f46632e04094725d785f4086f1be22c3cfb251",
      "parents": [
        "89082a33f4daf226c1cdccc43fdbfa8d3877d154"
      ],
      "author": {
        "name": "Angus Salkeld",
        "email": "asalkeld@mirantis.com",
        "time": "Mon Sep 14 11:12:20 2015 +1000"
      },
      "committer": {
        "name": "Angus Salkeld",
        "email": "asalkeld@mirantis.com",
        "time": "Mon Sep 14 11:12:20 2015 +1000"
      },
      "message": "Make the stack tags template non-empty\n\nThis is to work around the update time not having fractional seconds.\nCloses-bug: #1480739\n\nChange-Id: Id5f9d318420e37525626c5a770c6126d8369b5e7\n"
    },
    {
      "commit": "89082a33f4daf226c1cdccc43fdbfa8d3877d154",
      "tree": "62e6518a089985ae76ee1adafccec448fdaa7c44",
      "parents": [
        "f71ae07989b718d8dc648059f7914c81b684396f"
      ],
      "author": {
        "name": "Sergey Kraynev",
        "email": "skraynev@mirantis.com",
        "time": "Fri Sep 04 04:42:33 2015 -0400"
      },
      "committer": {
        "name": "Steven Hardy",
        "email": "shardy@redhat.com",
        "time": "Thu Sep 10 11:36:41 2015 +0100"
      },
      "message": "Add integration test for UPDATE_FAILED recovery\n\nIt\u0027s valid to attempt an update from UPDATE_FAILED state, so add\na functional test which proves this works.\n\nThis requires an adjustment to the common test.py _verify_status\nbecause we now need to ensure we record the time of transition to\nFAILED state as well as COMPLETE, or we\u0027ll mis-detect the failure\nas a failure of the subsequent recovery update.\n\nCo-Authored-By: Sergey Kraynev \u003cskraynev@mirantis.com\u003e\nChange-Id: I5fc82b4c71a943ba15c04b08bcfd26fcb84dc7a4\n"
    },
    {
      "commit": "f71ae07989b718d8dc648059f7914c81b684396f",
      "tree": "37a38b9af63f8eeced23ea483483de8d579aad8e",
      "parents": [
        "a064e289436989e27edf8baa58fed9fe69dd2950"
      ],
      "author": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Thu Jul 09 09:15:10 2015 +0800"
      },
      "committer": {
        "name": "huangtianhua",
        "email": "huangtianhua@huawei.com",
        "time": "Wed Sep 09 14:52:37 2015 +0800"
      },
      "message": "Return error message if validate fail when clearing hook\n\nThere are some situations:\n1. User can run the command \"heat hook-clear\" on any\nresource in the stack, even if there is no hook\ndefined on it, and no error or warning message is returned.\n2. User run the command \"heat hook-clear\" on resource\nto clear the hook which resource unset, and no error or\nwarning message is returned.\n3. User run the command \"heat hook-clear\" on resource\neven if the resource\u0027s action is not support to signal, and\nno error or warning message is returned.\n4. User run the command \"heat hook-clear\" to clear invalid\nhooks, and no error or warnning message is returned.\n\nThis patch will check the situations above before call\nresource.signal, and will return error messages to user.\n\nChange-Id: Ifb9befad864ebe1bb5f8b419b95d1b3a95530573\nCloses-Bug: #1472515\n"
    },
    {
      "commit": "a064e289436989e27edf8baa58fed9fe69dd2950",
      "tree": "fe2ba0ed60be8d48b0f826b4db2d8feee0b59d1e",
      "parents": [
        "405444f635223a0f4a7718a7c70c389d0c51d600"
      ],
      "author": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Sun Aug 30 09:05:32 2015 +0300"
      },
      "committer": {
        "name": "Oleksii Chuprykov",
        "email": "ochuprykov@mirantis.com",
        "time": "Tue Sep 08 16:22:46 2015 +0300"
      },
      "message": "Wait for metadata actually set to server\n\nIt is possible that at the time when deployment set its\nresource_id metadata will not actually be set at the server. Wait until\nmetadata actually set at the server. This patch makes test more stable.\n\nChange-Id: Iba8c1c47b0cb78798a1c46a3daef5cb3cc3cc9a2\n"
    }
  ],
  "next": "73dcbc6dcfbaabdb81cf101174007d7ce9a52c41"
}
