)]}'
{
  "log": [
    {
      "commit": "e36a973f6533279feacfb037e403ea1546753693",
      "tree": "a7242ddba0b3530592348b4d39de169219c1c147",
      "parents": [
        "11ad0b06311d28fc0144ab159a03458db2f79d7a"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Fri Nov 16 17:28:52 2018 +0000"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Tue Nov 20 08:17:46 2018 -0600"
      },
      "message": "docs: Include information about the list of supported projects\n\nThis documentation is included in HACKING at the top to let\nnewcomers know that Patrole\u0027s testing scope is confined to the\nfollowing projects:\n\n* Cinder\n* Glance\n* Keystone\n* Neutron\n* Nova\n\nDepends-On: https://review.openstack.org/#/c/615394\nChange-Id: I6f70a6169592fec41de67ecfed6e5ca5b9af0deb\n"
    },
    {
      "commit": "11ad0b06311d28fc0144ab159a03458db2f79d7a",
      "tree": "e1de282553d0b2d7d1e8932df0b58d2a79ba6f84",
      "parents": [
        "0464e81c98b1d71d0bd42ce520013cd0ac1c8bac",
        "4d4cb1e7d39fef5ce0d2489a830864a2ac829df0"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Nov 14 22:20:12 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Nov 14 22:20:13 2018 +0000"
      },
      "message": "Merge \"Add documentation about white box/black box testing to HACKING\""
    },
    {
      "commit": "0464e81c98b1d71d0bd42ce520013cd0ac1c8bac",
      "tree": "3e15ed5b9a572016927f8cec567b1fbba1f8fe18",
      "parents": [
        "c81c1fb18977a93c5e1213182350fa780839b2aa"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Thu Nov 08 01:08:07 2018 -0500"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Nov 14 01:16:00 2018 +0000"
      },
      "message": "requirements authority: Use better exception/return code\n\nThis patch set makes some minor modifications to the requirements\nauthority module:\n\n* return {} instead of None in RequirementsParser.parse since\n  its return type is dict\n* raise RbacParsingException if an invalid rule is passed to\n  RequirementsAuthority.allowed since KeyError is a builtin type\n  and is not specific enough\n* change the exception message raise for the above case -- \"API\"\n  is not the right word; the word should be \"rule name\" as that\n  is what is being keyed into the roles_dict\n\nChange-Id: Ia4408c0745d2b5ddb1c73c1eb9a6316ae0c1f646\n"
    },
    {
      "commit": "4d4cb1e7d39fef5ce0d2489a830864a2ac829df0",
      "tree": "9cff1c71c728585c59c73d4a7338c762de3a68ae",
      "parents": [
        "05a73499ce2eabb1f68013304d23ae09e38ba29c"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Jul 29 13:44:10 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Nov 14 00:06:28 2018 +0000"
      },
      "message": "Add documentation about white box/black box testing to HACKING\n\nThis patch set adds documentation about white box vs block box\ntesting and their relationship in Patrole. This is so that\ndevs/test writers understand that Patrole is a bit different than\nTempest and requires digging a bit deeper in the internals of\nthe API implementation in order to properly test RBAC.\n\nAlso removes a misleading link in the README.rst section. The\ndiscussion on member vs. _member_ role is very outdated and\nso a link is provided to the RBAC overview section instead which\nis concerned with documenting such information.\n\nChange-Id: I0a014c2e917caeb058dd5b5294dd0af2e5e49132\n"
    },
    {
      "commit": "c81c1fb18977a93c5e1213182350fa780839b2aa",
      "tree": "abb48b15e9ce5f4f387091f43968a003d6e0c1ae",
      "parents": [
        "ba9829d5478305b3319cb713d8a28c1893c120cc",
        "2a5f41e83f258e2d679d5c7312e7527466cdccec"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Nov 13 23:23:07 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Nov 13 23:23:07 2018 +0000"
      },
      "message": "Merge \"Fix error codes for test_delete_flavor_service_profile\""
    },
    {
      "commit": "ba9829d5478305b3319cb713d8a28c1893c120cc",
      "tree": "3e6038b5ac749de8aa64e8c030096f059436dcdd",
      "parents": [
        "f7c54efb7f0ebc8044140d2876ad5ccebd52e669",
        "d02a8d836c560a3571b0a2f17f102e25bc7c5301"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Nov 13 22:26:25 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Nov 13 22:26:26 2018 +0000"
      },
      "message": "Merge \"RequirementsAuthority multi role support enhancement\""
    },
    {
      "commit": "f7c54efb7f0ebc8044140d2876ad5ccebd52e669",
      "tree": "1998c76b7fdb8fea93d412f28e8aca6b1f975831",
      "parents": [
        "3230e20d4c999a97cb30b696ef93170b6be59c84",
        "bbbdd9391d3f4fce0277ae24393d6e1ee183430f"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Nov 13 21:47:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Nov 13 21:47:04 2018 +0000"
      },
      "message": "Merge \"refactor: Rename PluginRbacTest \u003d\u003e ExtRbacTest\""
    },
    {
      "commit": "3230e20d4c999a97cb30b696ef93170b6be59c84",
      "tree": "6da7c6a3306a76b937b2187c97d4e7bc8cdb052c",
      "parents": [
        "5d59810ae813e5ce0f4008c416f3f779cb49e7fd",
        "42f7e1c488edafbf664a69971b65ce973bb979ab"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Fri Nov 09 19:31:14 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Nov 09 19:31:14 2018 +0000"
      },
      "message": "Merge \"docs: Add multi-policy validation documentation\""
    },
    {
      "commit": "5d59810ae813e5ce0f4008c416f3f779cb49e7fd",
      "tree": "066279783fb469e1bfc0e14849404c20828a81d2",
      "parents": [
        "a5f5590e2997fb2fbbb135cd2c38a9ef5bd4a5d2",
        "74f8e7d97fffd6909ead4f362b7f956e64fb2768"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Fri Nov 09 18:33:23 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Nov 09 18:33:23 2018 +0000"
      },
      "message": "Merge \"refactor: Break up RbacMalformedException into discrete exceptions\""
    },
    {
      "commit": "d02a8d836c560a3571b0a2f17f102e25bc7c5301",
      "tree": "ea06f52eac491355b12bd1890020259f249b242b",
      "parents": [
        "a5f5590e2997fb2fbbb135cd2c38a9ef5bd4a5d2"
      ],
      "author": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Tue Oct 30 21:35:20 2018 -0500"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Thu Nov 08 14:44:09 2018 +0000"
      },
      "message": "RequirementsAuthority multi role support enhancement\n\nThis patchset eliminates different behaviour between\npolicy_authority and requirements_authority.\n\nProblem description:\n\n`rbac_test_roles \u003d [member,]`\n\nPolicy authority:\n\n`update_port: role:member and role:viewer`\n\nResults in 403/False (we are member but not viewer).\n\nRequirements authority:\n\n```\nreq_auth:\n    update_port:\n        - member\n        - viewer\n```\n\nResults in 200/True (member in update_port list).\n\nProposed solution:\n\nChange requirements_authority file sytax to support\ncomma separated roles to be considered as logical and.\n\nDepends-On: https://review.openstack.org/#/c/606110/\nChange-Id: I2e2a4a2020f5e85af15f1836d69386bc91a2d2ec\nCo-Authored-By: Felipe Monteiro \u003cfelipe.monteiro@att.com\u003e\n"
    },
    {
      "commit": "2a5f41e83f258e2d679d5c7312e7527466cdccec",
      "tree": "5ce6f293bd2b4714671d1db8f2f48705a41d44dc",
      "parents": [
        "a5f5590e2997fb2fbbb135cd2c38a9ef5bd4a5d2"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Nov 07 19:35:40 2018 -0500"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Nov 07 19:35:40 2018 -0500"
      },
      "message": "Fix error codes for test_delete_flavor_service_profile\n\nThis patch set fixes the expected error codes for test\n`test_delete_flavor_service_profile`. Like other delete\ntests for Neutron it enforces delete_* and get_* policy.\n\nChange-Id: I4e67e0cd3190794741ea84131de3cbab6c28eb4f\n"
    },
    {
      "commit": "a5f5590e2997fb2fbbb135cd2c38a9ef5bd4a5d2",
      "tree": "c65ea0608a73db4fcd657c3d21fb0d2273bc9c95",
      "parents": [
        "596bebd246d96cdab20b131413084e5a6eead946",
        "0d3c743c11e5231e0f5f56a654f9d593803ff06d"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Nov 07 22:35:13 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Nov 07 22:35:13 2018 +0000"
      },
      "message": "Merge \"zuul: Use all rather than all-plugin for tox_envlist\""
    },
    {
      "commit": "74f8e7d97fffd6909ead4f362b7f956e64fb2768",
      "tree": "b4610969494bdffa72729533ea229db3fc5b0d17",
      "parents": [
        "742b73767ba6eb14fd60a5aeebe52bae9cf0c58c"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Sep 30 12:33:49 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Nov 07 16:23:51 2018 -0500"
      },
      "message": "refactor: Break up RbacMalformedException into discrete exceptions\n\nThis patch set breaks up RbacMalformedException into the following\ndiscrete exceptions:\n\n* RbacMissingAttributeResponseBody\n* RbacPartialResponseBody\n* RbacEmptyResponseBody\n\nEach of the exception classes deals with a different type of\nfailure related to a soft authorization failure [0] which\nmeans that a failure occurred server side related to RBAC\nauthorization, but the result of which an incomplete, partial\nor empty response body (with a 2xx status code).\n\n* incomplete means that the response body (for show or list)\n  is missing certain attributes\n* partial means that a list response only returned a subset of\n  the possible results available.\n* empty means that the show or list response body is entirely\n  empty\n\nBecause RbacMalformedException is not part of a stable library\nit is removed altogether; we do not need to deprecate it.\n\n[0] http://git.openstack.org/cgit/openstack/patrole/tree/doc/source/rbac-overview.rst#n232\n\nStory: 2003843\nTask: 26633\nChange-Id: I2c76c3c4d226e4877fc9d1e93707edfc230a1be4\n"
    },
    {
      "commit": "596bebd246d96cdab20b131413084e5a6eead946",
      "tree": "08745eaf2d09e7244aab467489735489a1896e07",
      "parents": [
        "742b73767ba6eb14fd60a5aeebe52bae9cf0c58c"
      ],
      "author": {
        "name": "Sergey Vilgelm",
        "email": "sergey@vilgelm.info",
        "time": "Wed Nov 07 10:46:16 2018 -0600"
      },
      "committer": {
        "name": "Sergey Vilgelm",
        "email": "sergey@vilgelm.info",
        "time": "Wed Nov 07 10:46:16 2018 -0600"
      },
      "message": "Replace all volume client aliases with _latest suffix\n\nUse aliases with _latest suffix instead of v2 or v3 for clients.\n\nChange-Id: Ie17b9abca60d943bce0b62997b1f58a56963314d\nStory: 2003377\nTask: 24452\n"
    },
    {
      "commit": "0d3c743c11e5231e0f5f56a654f9d593803ff06d",
      "tree": "7e4f8f1d81dccd119d5b4936c26eeba6d0fbc8ce",
      "parents": [
        "742b73767ba6eb14fd60a5aeebe52bae9cf0c58c"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Oct 28 02:14:22 2018 +0000"
      },
      "committer": {
        "name": "Sergey Vilgelm",
        "email": "sergey@vilgelm.info",
        "time": "Wed Nov 07 08:01:49 2018 -0600"
      },
      "message": "zuul: Use all rather than all-plugin for tox_envlist\n\nSince \u0027all-plugin\u0027 is deprecated in Tempest, this is to\nswitch to \u0027all\u0027 instead in .zuul.yaml; for more info,\nsee: https://github.com/openstack/tempest/blob/9b4c50cf634cbea6e6a7353fff14c2f0a7ab1aa2/tox.ini#L64\n\nDepends-On: Ib3264f54075216471720483c8dd816887c1f413c\nChange-Id: I440b6cff2b5378e18304017589e3e7cf4748c28c\n"
    },
    {
      "commit": "bbbdd9391d3f4fce0277ae24393d6e1ee183430f",
      "tree": "bfa55a76c9407046990b978278a9421a15e227eb",
      "parents": [
        "742b73767ba6eb14fd60a5aeebe52bae9cf0c58c"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Oct 31 23:28:39 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Nov 07 04:13:25 2018 +0000"
      },
      "message": "refactor: Rename PluginRbacTest \u003d\u003e ExtRbacTest\n\nThis patch set is a follow up on discussion in [0] which\nconcluded that Patrole should not test Neutron plugins.\n\nThe pertinent discussion from [0] is:\n\nPatrole can test Neutron extensions but not plugins in tree\nand that requires renaming the classes\n(.*PluginRbacTest \u003d\u003e .*ExtRbacTest) to make it clearer.\n\nHaving to support all the Neutron plugins in tree is out of scope\nfor Patrole. Clarifying documentation (which will be done in follow\nup) can be added to Patrole documentation to make it clear that\nit will only test \"main\" OpenStack projects, like Tempest.\n\n[0] https://review.openstack.org/#/c/599869/\n\nChange-Id: Iab029f2f875ce2268de12cc2a40e30f2f1a913fe\n"
    },
    {
      "commit": "742b73767ba6eb14fd60a5aeebe52bae9cf0c58c",
      "tree": "518382f06eedc7c339ede53e38b3b760a3f6b59c",
      "parents": [
        "415261e3d529b0095f9e15297487cae498a607b2",
        "b688823056e0f551d98acc8b77db4366e27dffd7"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Nov 07 01:35:29 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Nov 07 01:35:29 2018 +0000"
      },
      "message": "Merge \"Define common irrelevant-files\""
    },
    {
      "commit": "415261e3d529b0095f9e15297487cae498a607b2",
      "tree": "0906491ddc20a4cf411b537eb675b8e0eef7b782",
      "parents": [
        "2c9d9fc243d87045639a073870e980e1e404249c",
        "e0f35503c90bee01666ee252689738c7c2042ce8"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Nov 07 00:33:28 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Nov 07 00:33:28 2018 +0000"
      },
      "message": "Merge \"Multi role RBAC validation\""
    },
    {
      "commit": "2c9d9fc243d87045639a073870e980e1e404249c",
      "tree": "6f61837002bba4284826f26ff3c001d53f0ac972",
      "parents": [
        "3f9401ed50c37f6d9bc56cfb583c71097849c276",
        "d1a87c598d646ff57e8d966bee37e47684b56178"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Nov 07 00:17:29 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Nov 07 00:17:29 2018 +0000"
      },
      "message": "Merge \"trivial: Add hacking checks to irrelevant-files in .zuul.yaml\""
    },
    {
      "commit": "3f9401ed50c37f6d9bc56cfb583c71097849c276",
      "tree": "3ca70e86c5041dcce4d0605e499c637947c1f163",
      "parents": [
        "da3c54b152d1dfe84884e738c5e30fba68cb8148",
        "2a6d32969fa1f0f09dc2c3b372e318d34cb1c103"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Nov 06 18:06:18 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Nov 06 18:06:18 2018 +0000"
      },
      "message": "Merge \"Add tests to cover auto_allocated_topology\""
    },
    {
      "commit": "da3c54b152d1dfe84884e738c5e30fba68cb8148",
      "tree": "f0bbd821b9333cb779a6bd62ffc670f797c2e8b6",
      "parents": [
        "3932f03700ab5e33b78cc03ecdfaa5ef97a1fc65",
        "ecfbb572c9b302ab98df20ed1d14ad7744e531ee"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Mon Nov 05 21:25:57 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Nov 05 21:25:57 2018 +0000"
      },
      "message": "Merge \"pbr: Remove unused translation sections from setup.cfg\""
    },
    {
      "commit": "3932f03700ab5e33b78cc03ecdfaa5ef97a1fc65",
      "tree": "3d1992d1d093be81f5f940ba6fc4066068abd88b",
      "parents": [
        "5addd6979616ffb95a8e225b1f118ac503091369",
        "fcd6fcf33c3f62840312dc9b7af8a75263b69dcb"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Mon Nov 05 21:25:56 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Nov 05 21:25:56 2018 +0000"
      },
      "message": "Merge \"Add waiters after creating volume transfer for related tests\""
    },
    {
      "commit": "5addd6979616ffb95a8e225b1f118ac503091369",
      "tree": "674329c325c41838da2e24eb531637bd336c8dd7",
      "parents": [
        "d771e34d2432b914827bbf51340ec9b756b5d82b",
        "1b49965a9b31fada55a7a93af2881e8a1909f010"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Mon Nov 05 21:02:08 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Nov 05 21:02:08 2018 +0000"
      },
      "message": "Merge \"trivial: Correct base class name in hacking check\""
    },
    {
      "commit": "b688823056e0f551d98acc8b77db4366e27dffd7",
      "tree": "80f74b979abad27e65987193339887496df96eda",
      "parents": [
        "d1a87c598d646ff57e8d966bee37e47684b56178"
      ],
      "author": {
        "name": "ghanshyam",
        "email": "gmann@ghanshyammann.com",
        "time": "Sun Nov 04 12:54:58 2018 +0000"
      },
      "committer": {
        "name": "ghanshyam",
        "email": "gmann@ghanshyammann.com",
        "time": "Sun Nov 04 12:54:58 2018 +0000"
      },
      "message": "Define common irrelevant-files\n\nThis commit define the irrelevant-files in common\nplace to use it in all jobs.\n\nChange-Id: I0de220ff9bd067a2d23a9cb4280341b2e09bf84b\n"
    },
    {
      "commit": "d771e34d2432b914827bbf51340ec9b756b5d82b",
      "tree": "bc440feafe71dc9df03c5ff45b5bc657c47c0225",
      "parents": [
        "4877f1d43259de39e9029aea90046351a0c3fb35"
      ],
      "author": {
        "name": "Manik Bindlish",
        "email": "manikbindlish19@gmail.com",
        "time": "Fri Nov 02 05:02:36 2018 +0000"
      },
      "committer": {
        "name": "Manik Bindlish",
        "email": "manikbindlish19@gmail.com",
        "time": "Fri Nov 02 05:04:09 2018 +0000"
      },
      "message": "Update min tox version to 2.0\n\nThe commands used by constraints need at least tox 2.0.\nUpdate to reflect reality, which should help with local running of\nconstraints targets.\n\nChange-Id: I343da220ef68a56448042046bf644b964ef71f62\n"
    },
    {
      "commit": "d1a87c598d646ff57e8d966bee37e47684b56178",
      "tree": "20ec5c3f180abaef0a0bf04ef3143d002925981d",
      "parents": [
        "4877f1d43259de39e9029aea90046351a0c3fb35"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Thu Nov 01 11:34:29 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Thu Nov 01 11:37:15 2018 -0400"
      },
      "message": "trivial: Add hacking checks to irrelevant-files in .zuul.yaml\n\nThis is to skip over hacking modifications triggering all Patrole\nZuul jobs as in [0]. Besides, Tempest also skips hacking in its\nirrelevant-files [1]. Also do this for etc/.\n\n[0] https://review.openstack.org/#/c/614655/3\n[1] https://github.com/openstack/tempest/blob/da8aec9aedcac940ba1dbc3beee50f05f13af3f1/.zuul.yaml#L326\n\nChange-Id: Iee5b634e77c2faaa36d3d19a3b56b1fec685aa7e\n"
    },
    {
      "commit": "1b49965a9b31fada55a7a93af2881e8a1909f010",
      "tree": "f08dc3b8a1e06aa0881fd9e7e24d6f15c388fd87",
      "parents": [
        "904a02bef8af64c2a6fb1e0aca67ea9db3f9883f"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Oct 31 20:44:50 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Thu Nov 01 10:34:36 2018 -0400"
      },
      "message": "trivial: Correct base class name in hacking check\n\nThis patch set fixes the base class name in a hacking check\nunit test for PluginRbacTest Suffix (P104).\n\nThe passing case should be:\n\n  class FakePluginRbacTest(base.BaseFakePluginRbacTest)\n\nNot:\n\n  class FakePluginRbacTest(base.BaseFakeRbacTest)\n\nBecause the point is to check that all subclasses that inherit\nfrom class .+PluginRbacTest also end in that suffix.\n\nChange-Id: Ic6306b97bb68c42f51e796d876893f9ac91c67a4\n"
    },
    {
      "commit": "4877f1d43259de39e9029aea90046351a0c3fb35",
      "tree": "6cbc84c1769545c4e0384bef0025b90f68ba8f9e",
      "parents": [
        "7267fa45d904170d934ff3245fd5ff5d1a30bd80",
        "904a02bef8af64c2a6fb1e0aca67ea9db3f9883f"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Thu Nov 01 01:26:55 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Nov 01 01:26:55 2018 +0000"
      },
      "message": "Merge \"hacking: Add hacking rule for plugin rbac test class names\""
    },
    {
      "commit": "7267fa45d904170d934ff3245fd5ff5d1a30bd80",
      "tree": "58aa75981bba46c2e17c9152c4877f55c6232cb9",
      "parents": [
        "c38aca7587f526dbea4b3337b0a4822ae837d4ea",
        "cacbd211250d355bcbb2bbf049cfb4bd8c94ee04"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Oct 31 23:38:09 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Oct 31 23:38:09 2018 +0000"
      },
      "message": "Merge \"fix: Rename test classes causing accidental skip\""
    },
    {
      "commit": "e0f35503c90bee01666ee252689738c7c2042ce8",
      "tree": "fc80d222332c6925886acec96e4192d30636569d",
      "parents": [
        "c38aca7587f526dbea4b3337b0a4822ae837d4ea"
      ],
      "author": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Wed Sep 26 18:26:57 2018 -0500"
      },
      "committer": {
        "name": "Mykola Yakovliev",
        "email": "myakovliev@mirantis.com",
        "time": "Wed Oct 31 20:45:13 2018 +0000"
      },
      "message": "Multi role RBAC validation\n\nThis patchset replaces ``CONF.patrole.rbac_test_role`` with\n``CONF.patrole.rbac_test_roles``, where instead of single role\nwe can specify list of roles to be assigned to test user.\n\nChange-Id: Ia68bcbdbb523dfe7c4abd6107fb4c426a566ae9d\n"
    },
    {
      "commit": "c38aca7587f526dbea4b3337b0a4822ae837d4ea",
      "tree": "92f3b63fa25c57b238cc7d99f1da30f208f5eb9b",
      "parents": [
        "f63a8345312c17d04218fe40f9abca9d99774741"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Oct 31 01:21:48 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Oct 31 01:24:24 2018 -0400"
      },
      "message": "Add feature flag for Keystone policies removed in Stein\n\nThis patch set adds a new feature flag called\n``removed_keystone_policies_stein`` under the configuration\ngroup ``[policy-feature-enabled]`` for skipping Keystone\ntests whose policies were removed in Stein. This feature flag\nis currently applied to credentials-related policies, e.g.:\nidentity:[create|update|get|delete]_credential\n\nMore info on removed Keystone policies:\n\nhttps://review.openstack.org/#/c/597187/16\n\nChange-Id: Ibd16e658d0e1367b46a2d6730f2b6970a95ae221\n"
    },
    {
      "commit": "ecfbb572c9b302ab98df20ed1d14ad7744e531ee",
      "tree": "9bc4adc3d776ca523dd6718b6f21c1e246c53b53",
      "parents": [
        "f63a8345312c17d04218fe40f9abca9d99774741"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sat Oct 27 16:31:22 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sat Oct 27 16:31:22 2018 -0400"
      },
      "message": "pbr: Remove unused translation sections from setup.cfg\n\nPatrole doesn\u0027t have a translation infrastructure, so this is\nto remove translation sections from the setup.cfg; these\nsections are the same as those documented under:\n\nhttps://docs.openstack.org/infra/manual/creators.html#python-projects\n\nChange-Id: If2efd6e462933d0d192e331d12f0798ddf12ce46\n"
    },
    {
      "commit": "f63a8345312c17d04218fe40f9abca9d99774741",
      "tree": "632975c33b08b89b3c0b47451bc383731435150b",
      "parents": [
        "2238c69f46defb4a2328a0e5c3a4d5a3c23fea36",
        "bf524fbcf5295d521a1200db23d687a4976e9163"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Sat Oct 27 01:57:38 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sat Oct 27 01:57:38 2018 +0000"
      },
      "message": "Merge \"Deprecate use of v2 roles client in rbac_utils.py\""
    },
    {
      "commit": "904a02bef8af64c2a6fb1e0aca67ea9db3f9883f",
      "tree": "d352613a998a07b2709894ea79eadacc28698117",
      "parents": [
        "cacbd211250d355bcbb2bbf049cfb4bd8c94ee04"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Oct 21 12:54:46 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Oct 21 19:58:48 2018 +0000"
      },
      "message": "hacking: Add hacking rule for plugin rbac test class names\n\nThis patch set introduces a new hacking check called\n`no_plugin_rbac_test_suffix_in_plugin_test_class_name` which\nis responsible for enforcing that all plugin rbac test classes\nend in the correct suffix in order to avoid issues like [0].\n\nBasically, some network plugin rbac tests were skipping because\nthe regex in .zuul.yaml was not selecting them because the\nclasses were improperly named. This is to avoid that regression.\n\nUpdates documentation with P104 - alias for this new hacking\nrule - and adds unit tests to validate its logic.\n\n[0] https://review.openstack.org/#/c/612197/\n\nChange-Id: Ia50edbe5aeb25e57756e9579da8270396bba718c\n"
    },
    {
      "commit": "cacbd211250d355bcbb2bbf049cfb4bd8c94ee04",
      "tree": "d335d4ed400263a517a5ba15af058544d96e2755",
      "parents": [
        "2238c69f46defb4a2328a0e5c3a4d5a3c23fea36"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Oct 21 12:30:17 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Oct 21 17:51:18 2018 +0000"
      },
      "message": "fix: Rename test classes causing accidental skip\n\nThis patch set renames two classes that are neutron plugin\nrbac tests but don\u0027t end in the appropriate suffix of\n\"PluginRbacTest\" which is used by .zuul.yaml to correctly execute\nthe tests [0].\n\nThis means that, in effect, these tests aren\u0027t being run in any\njobs. This patch set resolves the issue.\n\nIn a follow up patch set a hacking rule will be added to enforce\ncorrect naming for plugin rbac tests.\n\n[0] https://github.com/openstack/patrole/blob/0c7f83ea1716462737a40cc32f27b95abf4557af/.zuul.yaml#L168\n\nChange-Id: Ieac5ebf70eefcebf1aebc26da95d58fcd68a202e\n"
    },
    {
      "commit": "2238c69f46defb4a2328a0e5c3a4d5a3c23fea36",
      "tree": "cf00dca107b6b58a397938cc0f750d261d09c11a",
      "parents": [
        "0c7f83ea1716462737a40cc32f27b95abf4557af"
      ],
      "author": {
        "name": "Cédric Ollivier",
        "email": "ollivier.cedric@gmail.com",
        "time": "Sun Oct 21 15:22:38 2018 +0200"
      },
      "committer": {
        "name": "Cédric Ollivier",
        "email": "ollivier.cedric@gmail.com",
        "time": "Sun Oct 21 15:22:38 2018 +0200"
      },
      "message": "Fix test_update_address_scope_shared\n\ntest_update_address_scope_shared currently fails as shared address\nscope can\u0027t be unshared [1].\n\nIt would have detected in gates if neutron-tempest-plugin was\ninstalled [2] (as it\u0027s in opnfv/functest-smoke:latest).\n\n[1] https://github.com/openstack/neutron/blob/master/neutron/db/address_scope_db.py#L87\n[2] http://logs.openstack.org/47/599047/3/check/patrole-admin/11872d4/job-output.txt.gz\n\nChange-Id: I72f0cde1dab2d0a1949b55490375e8441394353d\nSigned-off-by: Cédric Ollivier \u003collivier.cedric@gmail.com\u003e\n"
    },
    {
      "commit": "0c7f83ea1716462737a40cc32f27b95abf4557af",
      "tree": "b65bb1bde2ce84da6865da30163a6cac7d828db3",
      "parents": [
        "28c9c3a2c7c3d07b7f12d6c8e4ad33853e27be3f",
        "1daa06a5b84e5fe34bac7309a729731c946604c1"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Fri Oct 19 20:41:24 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Oct 19 20:41:24 2018 +0000"
      },
      "message": "Merge \"Use tempest.common.identity.identity_utils for project management\""
    },
    {
      "commit": "42f7e1c488edafbf664a69971b65ce973bb979ab",
      "tree": "3dc00fa1b3fbb2fb97dbf587d09d654677ce7091",
      "parents": [
        "28c9c3a2c7c3d07b7f12d6c8e4ad33853e27be3f"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Jun 10 20:09:26 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Fri Oct 19 02:21:04 2018 +0000"
      },
      "message": "docs: Add multi-policy validation documentation\n\nThis patchset adds multi-policy validation documentation to the\ndeveloper\u0027s documentation section. Also adds REVIEWING guidelines\nto help developers/reviewers understand guidelines/best practices\nfor writing such tests.\n\nChange-Id: Ieb462e3b176a5dba40146ddd422e62e5715dc034\n"
    },
    {
      "commit": "bf524fbcf5295d521a1200db23d687a4976e9163",
      "tree": "8bc24696978687781978a55d1aa3bc94d4eeaebe",
      "parents": [
        "28c9c3a2c7c3d07b7f12d6c8e4ad33853e27be3f"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Oct 03 09:03:35 2018 -0500"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Fri Oct 19 00:27:41 2018 +0000"
      },
      "message": "Deprecate use of v2 roles client in rbac_utils.py\n\nThis patch set deprecates use of the v2 roles client for\nrole overriding operations. This is because the Keystone v2 API\nis deprecated and slated for removal, so Patrole\u0027s use of the\nv2 Tempest roles client is also deprecated and will be\nremoved in a future release. Patrole will only support the v3 Tempest\nroles client for role overriding operations in the future.\n\nChange-Id: I9b201677cf8244b25f3cc8ea3b48a95b2b83b95e\n"
    },
    {
      "commit": "28c9c3a2c7c3d07b7f12d6c8e4ad33853e27be3f",
      "tree": "513dd53564ee0e8b2ccb15f3f05adde4f3b4e5e9",
      "parents": [
        "69250959929142c8da9bd2f9aaea47dbe66115fe"
      ],
      "author": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Wed Oct 17 11:38:34 2018 -0500"
      },
      "committer": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Wed Oct 17 11:38:34 2018 -0500"
      },
      "message": "Fix create_rbac_policy tenant_id and network_id usage\n\nThis patchset fixes mistake where we pass params, but use their origin.\n\nChange-Id: I4c73aaeba1907987306b210d2afef5b6a395e68b\n"
    },
    {
      "commit": "1daa06a5b84e5fe34bac7309a729731c946604c1",
      "tree": "ff2b7aae1cd850df58358c0d06178e30e23232cb",
      "parents": [
        "842845eaef1de6595e96ad253d0666555ce083f1"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Fri Aug 31 13:56:08 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sat Oct 13 22:36:02 2018 +0000"
      },
      "message": "Use tempest.common.identity.identity_utils for project management\n\nThis uses identity_utils from tempest.common.identity for\nproject creation/deletion in non-identity tests:\n\n    A client that abstracts v2 and v3 identity operations.\n\n    This can be used for creating and tearing down projects in tests.\n    It should not be used for testing identity features.\n\nThis is a common pattern in Tempest and should be used in Patrole, too.\n\nChange-Id: Id87294bd19c7abd92d202b5ba6b49e4aac6c7e42\n"
    },
    {
      "commit": "69250959929142c8da9bd2f9aaea47dbe66115fe",
      "tree": "575becbf652a0da1c144a353257ca2b62ec335cf",
      "parents": [
        "7fa1f735fa66ae49589950201755c1fa5db3ae6d"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Jul 29 13:08:54 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Fri Oct 12 14:26:05 2018 +0000"
      },
      "message": "Add volume create from image test\n\nThis patch set adds tests for the following policy:\n\n\"volume:create_from_image\" [0]\n\nNote that this is mutually exclusive with \"volume:create\" [1]\nso multi-policy is not needed for the new test:\ntest_create_volume_from_image\n\n[0] https://github.com/openstack/cinder/blob/fe69f679369057a7c381178f770bf68d0bc1cee0/cinder/policies/volumes.py#L52\n[1] https://github.com/openstack/cinder/blob/4bb00dbcf6af2f140694eb535696f0f6fe3ae80e/cinder/volume/api.py#L210\n\nChange-Id: I27bdefa57ed60e9fb1764a65afec117e86e71cee\n"
    },
    {
      "commit": "7fa1f735fa66ae49589950201755c1fa5db3ae6d",
      "tree": "4b787f0ce23edd7d249caf122de61ba9aa03080e",
      "parents": [
        "517183edd3e4032f396c653bc67d2a092c438da0",
        "8dd5f1990183b7bb9ca44e98c2e9e6e6b1bd82af"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Fri Oct 12 12:22:12 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Oct 12 12:22:12 2018 +0000"
      },
      "message": "Merge \"Remove invalid exception RbacConflictingPolicies\""
    },
    {
      "commit": "517183edd3e4032f396c653bc67d2a092c438da0",
      "tree": "a4041c81426edeff70852aa5e8ebf679f835e6c4",
      "parents": [
        "722455f9fe489511459c57d1331b4eaafb6baf19",
        "0170c998278da82d02ee7b8b1be05326f40e5025"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Fri Oct 12 10:56:14 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Oct 12 10:56:14 2018 +0000"
      },
      "message": "Merge \"docs: Add sections about context_is_admin/custom policy checks\""
    },
    {
      "commit": "722455f9fe489511459c57d1331b4eaafb6baf19",
      "tree": "8ea22fdf2d18acfd3ea2ef8b3672eea5b8a48b43",
      "parents": [
        "59f538fdbdf650154779028747285a5e35fa2d17",
        "dcd153a2a0db5c91468d106deb25c692779db770"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Oct 09 11:09:40 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Oct 09 11:09:40 2018 +0000"
      },
      "message": "Merge \"Remove extra_attr kwarg from RbacMalformedResponse\""
    },
    {
      "commit": "8dd5f1990183b7bb9ca44e98c2e9e6e6b1bd82af",
      "tree": "7ea181dcf368a8ac378d902a1b7c5a6531543a91",
      "parents": [
        "91e33c6ef17af701ed230802da6eee256bcc4884"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Fri Oct 05 21:29:25 2018 +0100"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sat Oct 06 01:22:00 2018 +0000"
      },
      "message": "Remove invalid exception RbacConflictingPolicies\n\nThis patch set drops RbacConflictingPolicies from Patrole because\nits intention is 1) flawed and 2) the way it is being used is\ninvalid.\n\nFirst, there is no documented case where conflicting policies\nexists in OpenStack, so the intention behind the exception class\nis flawed.\n\nSecond, the exception is only used in one test in\ntest_server_rbac. It catches a ServerFault (500) and re-raises\nthe exception is a pseudo-Forbidden exception. This is very bad\nbecause if Nova raises a 500 on a policy exception then this is\na Nova bug. There is no valid use case where a ServerFault from\nNova should ever be treated as a successful test scenario.\n\nChange-Id: I495b10ccf7b0df523b2551c49ea4db07e5bcaf79\n"
    },
    {
      "commit": "0170c998278da82d02ee7b8b1be05326f40e5025",
      "tree": "92d5b095620b429c9c0819cc9949170b5b5efc24",
      "parents": [
        "91e33c6ef17af701ed230802da6eee256bcc4884"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Tue Jul 31 20:10:05 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Thu Oct 04 20:57:49 2018 +0100"
      },
      "message": "docs: Add sections about context_is_admin/custom policy checks\n\nThis documentation adds oslo.policy/policy related information\nto Patrole RBAC documentation so users understand some limitations\nrelated to current implementation of oslo.policy in OpenStack\nand some limitations around edge case policy testing w.r.t custom\noslo.policy rulechecks.\n\n* Currently admin context policy rule is used to skip over oslo.policy\n  authorization checks in many services -- this is important to note\n  as this means Patrole can\u0027t properly validate admin against\n  oslo.policy [0].\n* Currently it is not possible to test policy rules that rely on\n  generic checks/oslo.policy checks defined in services themselves\n  like Neutron\u0027s FieldCheck [1] as Patrole has no way of importing such\n  code in order to get these checks registered.\n\n[0] https://github.com/openstack/neutron/blob/b4b725ade9e11aff80c6193cb4acd49f2aba012d/neutron/policy.py#L374\n[1] https://docs.openstack.org/neutron/pike/contributor/internals/policy.html#fieldcheck-verify-resource-attributes\n\nChange-Id: I0e375a11eb323d83b1ece1537dbd008633126eb3\n"
    },
    {
      "commit": "59f538fdbdf650154779028747285a5e35fa2d17",
      "tree": "9bb4e0d069ab1eb382b4fdb06eed6c2dbf55671b",
      "parents": [
        "91e33c6ef17af701ed230802da6eee256bcc4884"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Aug 22 23:34:40 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Thu Oct 04 17:23:16 2018 +0100"
      },
      "message": "Replace rule/expected_error_code with non-deprecated versions\n\nThis patch set replaces deprecated occurrences of rule with\nrules and expected_error_code with expected_error_codes in\nrbac_rule_validation.action decorator.\n\nAlong with removing the parameters from the decorator, all the\nAPI tests have been changed to use the non-deprecated parameters\ninstead. Unit tests have also been updated.\n\nChange-Id: I6485b6c57795b5fe75e2b339d5c9720da30be564\n"
    },
    {
      "commit": "2a6d32969fa1f0f09dc2c3b372e318d34cb1c103",
      "tree": "f46faa1fdefe42aeaf56a838d45ab775bf069531",
      "parents": [
        "40c450d0882ab55cd667bb24e6751898b5ab2aab"
      ],
      "author": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Mon Aug 13 15:37:53 2018 -0500"
      },
      "committer": {
        "name": "Mykola Yakovliev",
        "email": "myakovliev@mirantis.com",
        "time": "Thu Oct 04 14:38:09 2018 +0000"
      },
      "message": "Add tests to cover auto_allocated_topology\n\nThis patch set adds tests to cover the neutron auto allocated topology API [0].\nPart of \"Increase Neutron RBAC Coverage\" initiative [1]\n\n[0] https://developer.openstack.org/api-ref/network/v2/index.html#id877\n[1] https://storyboard.openstack.org/#!/story/2002641\n\nChange-Id: I012d7c5b3c6ef1ef5735a1c60e2975094b083fec\nStory: 2002641\n"
    },
    {
      "commit": "91e33c6ef17af701ed230802da6eee256bcc4884",
      "tree": "bc4d4a816381dd44ee20d6b93c27046672276d8b",
      "parents": [
        "a90168ec8715f1dbcf17c99277f62777595ba721",
        "5f25db5cad23ba8fb1acee49942cd75527841663"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Oct 03 19:16:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Oct 03 19:16:04 2018 +0000"
      },
      "message": "Merge \"Add tests to cover neutron-agents\""
    },
    {
      "commit": "a90168ec8715f1dbcf17c99277f62777595ba721",
      "tree": "29208f588519db36ac446ddae7062727d8215116",
      "parents": [
        "40c450d0882ab55cd667bb24e6751898b5ab2aab",
        "d646a4cfa5b019c4e127c8264305ea80bf5e06a7"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Oct 02 23:01:31 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Oct 02 23:01:31 2018 +0000"
      },
      "message": "Merge \"Add tests to cover policy_bandwidth_limit_rule\""
    },
    {
      "commit": "5f25db5cad23ba8fb1acee49942cd75527841663",
      "tree": "e74c9d1a7d3db70e5308e676c33cee7ec3a9346c",
      "parents": [
        "a3c15da1cd0d74d17727056dd72103fc915ab86d"
      ],
      "author": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Mon Sep 10 14:40:22 2018 -0500"
      },
      "committer": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Sun Sep 30 14:50:37 2018 -0500"
      },
      "message": "Add tests to cover neutron-agents\n\nThis patch adds tests to cover next policies:\n\n\u0027get_l3-agents\u0027 [0]\n\nPart of \"Increase Neutron RBAC Coverage\" initiative [1]\n\n[0] https://developer.openstack.org/api-ref/network/v2/index.html#list-l3-agents-hosting-a-router\n[1] https://storyboard.openstack.org/#!/story/2002641\n\nChange-Id: I79310ce3b072976cff46335e233c219625c5b686\nStory: 2002641\nTask: 22312\n"
    },
    {
      "commit": "40c450d0882ab55cd667bb24e6751898b5ab2aab",
      "tree": "33b75965854b1fe2e80e944f1945ea29e6cb5057",
      "parents": [
        "f014bf134b78d84bee6c361b7390c95d9489440d",
        "b485953e54581e9b73a86efd28a7d295f3b12db0"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Fri Sep 28 21:59:21 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Sep 28 21:59:21 2018 +0000"
      },
      "message": "Merge \"Include README for neutron + plugin tests\""
    },
    {
      "commit": "f014bf134b78d84bee6c361b7390c95d9489440d",
      "tree": "220243e576f6c6b887123c9cd4889f206998f437",
      "parents": [
        "0fe2e39140ff038ce66f43a478fc792e8a271fe2",
        "26b7e09fd856d3ac921f110a0996267943a1a640"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Fri Sep 28 21:56:05 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Sep 28 21:56:05 2018 +0000"
      },
      "message": "Merge \"Add developer test writing guide for Patrole tests\""
    },
    {
      "commit": "0fe2e39140ff038ce66f43a478fc792e8a271fe2",
      "tree": "2853dfe171c292b4699626503d0ab4f1e1d83ddb",
      "parents": [
        "404199107e1cf7443b8eb6667c5d177fe549a135",
        "433bf50679fdf6606a7af53380491287b69e4203"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Thu Sep 27 22:30:39 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Sep 27 22:30:39 2018 +0000"
      },
      "message": "Merge \"Add tests to cover policy_minimum_bandwidth_rule\""
    },
    {
      "commit": "404199107e1cf7443b8eb6667c5d177fe549a135",
      "tree": "363a5bb2cf18d09ca2b11888395c639fbdaaa166",
      "parents": [
        "8c04bd87800ff8c428b58f0d8b990689916eff9e",
        "ef7047df40b674c72635b9dac9d7e6e1f22e9a86"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Thu Sep 27 22:23:32 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Sep 27 22:23:32 2018 +0000"
      },
      "message": "Merge \"Use oslo_policy.policy.Rules.load to load rules\""
    },
    {
      "commit": "dcd153a2a0db5c91468d106deb25c692779db770",
      "tree": "4278ccfcd544d04b74ae0d5ad14133813e7cb26a",
      "parents": [
        "787fbd72542c233a66309c1700fad9645d01a394"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Sep 23 21:15:54 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Sep 23 21:15:54 2018 -0400"
      },
      "message": "Remove extra_attr kwarg from RbacMalformedResponse\n\nThis patch set removes extra_attr kwarg from RbacMalformedResponse\nexception because it is unclear how unauthorized policy enforcement\ncould result in an extra attribute being injected into a response\nbody. For such an edge case to even be allowed, there would have\nto be a documented example of this. Besides, no test case even\nmakes use of it, meaning that it is not something we should\neven support.\n\nChange-Id: I8f63720fe02d63360a7e40c836d55b56eb657156\nStory: 2003843\nTask: 26634\n"
    },
    {
      "commit": "26b7e09fd856d3ac921f110a0996267943a1a640",
      "tree": "cfb769d4ed72d321ed658a3f5c5d50d1b49e2aab",
      "parents": [
        "787fbd72542c233a66309c1700fad9645d01a394"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Fri Jul 27 22:15:27 2018 +0100"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Sep 23 15:24:35 2018 -0400"
      },
      "message": "Add developer test writing guide for Patrole tests\n\nThis patch set doesn\u0027t really add new documentation but instead\nmoves documentation regarding RBAC testing guidelines and\nexamples out of framework/rbac_utils.rst and moves it into a\nseparate test_writing_guide.rst file located in the\n\"Developers\u0027 Guide\" section.\n\nThis is because this information is directly relevant to developers\nand should be included somewhere obvious where they can find it.\nIncluding important testing examples and guidelines in the framework\ndocumentation isn\u0027t too helpful.\n\nChange-Id: I6e975cbf1b86d356e9f5d623f81fbf293efcc42c\n"
    },
    {
      "commit": "b485953e54581e9b73a86efd28a7d295f3b12db0",
      "tree": "097c6713f33781c620b50bc86770bbfe97c73034",
      "parents": [
        "337a574ad88b9158a77d18548b6fe809e4c8f353"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Sep 12 10:11:45 2018 -0600"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Fri Sep 21 13:47:39 2018 +0000"
      },
      "message": "Include README for neutron + plugin tests\n\nThis patch set adds a README under\npatrole_tempest_plugin/tests/api/network to explain that\nPatrole supports testing RBAC policies for Neutron as well as\n(some) associated extensions and plugins.\n\nChange-Id: I80e5fd027becbb9c21212fbfe2b59b9708a51bb2\n"
    },
    {
      "commit": "787fbd72542c233a66309c1700fad9645d01a394",
      "tree": "66b6c11f41ed360d83a64412e79b6d3085aa3ea2",
      "parents": [
        "abd981d56d1a73ee781297353984bb1ff6c2abed",
        "849acef2b2d1251aeb02f9300c9e1b10cdb842e0"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Thu Sep 20 00:19:40 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Sep 20 00:19:40 2018 +0000"
      },
      "message": "Merge \"Adds tests to cover address scopes\""
    },
    {
      "commit": "abd981d56d1a73ee781297353984bb1ff6c2abed",
      "tree": "fc4052522b455d3fa873a8d68d23b06f20a492ce",
      "parents": [
        "96cb119fe968eafe77e52e6f4b1cc0740c31f5e4",
        "56bb7312713634ad7d99090b167b56c6d84b0852"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Sep 19 22:16:54 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Sep 19 22:16:54 2018 +0000"
      },
      "message": "Merge \"Add tests to cover policy_dscp_marking_rule\""
    },
    {
      "commit": "433bf50679fdf6606a7af53380491287b69e4203",
      "tree": "2755a41981070e18d541119c1710364442391a6e",
      "parents": [
        "56bb7312713634ad7d99090b167b56c6d84b0852"
      ],
      "author": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Mon Aug 20 13:42:20 2018 -0500"
      },
      "committer": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Wed Sep 19 11:24:03 2018 -0500"
      },
      "message": "Add tests to cover policy_minimum_bandwidth_rule\n\nThis patch set adds tests to cover the policy_minimum_bandwidth_rule API [0].\nTest creates, showes, updates and deletes policy_minimum_bandwidth_rule.\nPart of \"Increase Neutron RBAC Coverage\" initiative [1]\n\n[0] https://developer.openstack.org/api-ref/network/v2/index.html#qos-minimum-bandwidth-rules\n[1] https://storyboard.openstack.org/#!/story/2002641\n\nChange-Id: Ice4d20d20320f70ea0a8332bb53f1ebcde2c7a84\nDepends-On: https://review.openstack.org/#/c/592762/\nStory: 2002641\nTask: 22321\n"
    },
    {
      "commit": "96cb119fe968eafe77e52e6f4b1cc0740c31f5e4",
      "tree": "74a56e62e3ea6b6871ff06099c7b211f3962de7c",
      "parents": [
        "f2bbb107f24ff7d9d9117ac6c30c7d28aed25791",
        "062fb157b80c037940fc4b227d78c258c3593f45"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Sep 19 14:58:12 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Sep 19 14:58:12 2018 +0000"
      },
      "message": "Merge \"Add support for multiple policy files\""
    },
    {
      "commit": "f2bbb107f24ff7d9d9117ac6c30c7d28aed25791",
      "tree": "b12a7dbfee1c7b3849093fcf5a5228520b73ea7a",
      "parents": [
        "e9a135573735928c56c19acc92acb2923dec7686",
        "9358f74d8c958a1ce672a13f7ecc0eaf6032e448"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Sep 18 15:18:26 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Sep 18 15:18:27 2018 +0000"
      },
      "message": "Merge \"Add :special-members: directive to automodule in docs\""
    },
    {
      "commit": "d646a4cfa5b019c4e127c8264305ea80bf5e06a7",
      "tree": "e9d152d4a3335c80a72b324de488a33512b6ba04",
      "parents": [
        "56bb7312713634ad7d99090b167b56c6d84b0852"
      ],
      "author": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Mon Aug 20 14:34:55 2018 -0500"
      },
      "committer": {
        "name": "Mykola Yakovliev",
        "email": "myakovliev@mirantis.com",
        "time": "Mon Sep 17 20:46:07 2018 +0000"
      },
      "message": "Add tests to cover policy_bandwidth_limit_rule\n\nThis patch set adds tests to cover the policy_bandwidth_limit_rule API [0].\nTest creates, showes, updates and deletes policy_bandwidth_limit_rule.\nPart of \"Increase Neutron RBAC Coverage\" initiative [1]\n\n[0] https://developer.openstack.org/api-ref/network/v2/index.html#qos-minimum-bandwidth-rules\n[1] https://storyboard.openstack.org/#!/story/2002641\n\nChange-Id: I0f4b61c9f906fe61537144ef0274c19895e7134e\nDepends-On: https://review.openstack.org/#/c/592762/\nStory: 2002641\nTask: 22319\n"
    },
    {
      "commit": "8c04bd87800ff8c428b58f0d8b990689916eff9e",
      "tree": "3eee77c1e29d35190b8229976864915ba874a523",
      "parents": [
        "787fbd72542c233a66309c1700fad9645d01a394"
      ],
      "author": {
        "name": "Chi Lo",
        "email": "cl566n@att.com",
        "time": "Fri Jun 01 16:21:50 2018 -0500"
      },
      "committer": {
        "name": "Chi Lo",
        "email": "cl566n@att.com",
        "time": "Sun Sep 16 06:31:39 2018 -0500"
      },
      "message": "Add granularity for volume_extension:volume_type_encryption\n\nUse granular rules:\nvolume_extension:volume_type_encryption:create\nvolume_extension:volume_type_encryption:delete\nvolume_extension:volume_type_encryption:update\nvolume_extension:volume_type_encryption:get\n\nfor the corresponding create, delete, update, and\nget volume_type_encryption test cases.\n\nDepends-On: Iba58e785df934d1c4175c0877d266193ac0167b7\n\nChange-Id: Ie5159166505d9bee3e99ca0d51949f6391c569b9\n"
    },
    {
      "commit": "ef7047df40b674c72635b9dac9d7e6e1f22e9a86",
      "tree": "0453f41821f0e6260c5b767c964a1950cf829fe5",
      "parents": [
        "062fb157b80c037940fc4b227d78c258c3593f45"
      ],
      "author": {
        "name": "Sergey Vilgelm",
        "email": "sergey@vilgelm.info",
        "time": "Tue Sep 11 14:48:55 2018 -0500"
      },
      "committer": {
        "name": "Sergey Vilgelm",
        "email": "sergey@vilgelm.info",
        "time": "Wed Sep 12 18:26:21 2018 -0500"
      },
      "message": "Use oslo_policy.policy.Rules.load to load rules\n\nRe-using Rules.load function makes it possible to support parsing\ncustom YAML policy files, the new policy file extension since Ocata.\n\nChange-Id: I9c7645a0f9b04609921a5ea607b203e8215fc32b\n"
    },
    {
      "commit": "9358f74d8c958a1ce672a13f7ecc0eaf6032e448",
      "tree": "f18a3617a87a17d3d55d2446d4817b5007630f06",
      "parents": [
        "337a574ad88b9158a77d18548b6fe809e4c8f353"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Sep 12 14:49:43 2018 -0600"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Sep 12 14:49:43 2018 -0600"
      },
      "message": "Add :special-members: directive to automodule in docs\n\nThis patch set adds :special-members: [0] directive to automodule\ncommand in Patrole docs, in order to correctly render documentation\nlike [1] which is quite important. It won\u0027t show up without\nthis directive [2].\n\n[0] http://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html#directives\n[1] https://github.com/openstack/patrole/blob/337a574ad88b9158a77d18548b6fe809e4c8f353/patrole_tempest_plugin/policy_authority.py#L37\n[2] https://docs.openstack.org/patrole/latest/framework/policy_authority.html#module-patrole_tempest_plugin.policy_authority\n\nChange-Id: I2a69f52e903f57cced3f5ace3ec6aab3620a4e63\n"
    },
    {
      "commit": "e9a135573735928c56c19acc92acb2923dec7686",
      "tree": "0c8a811b9e5328f54b9489420509bf88b44939a9",
      "parents": [
        "337a574ad88b9158a77d18548b6fe809e4c8f353"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Sep 12 10:16:38 2018 -0600"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Sep 12 10:20:48 2018 -0600"
      },
      "message": "Include README in patrole_tempest_plugin/tests/api via symlink\n\nThis patch set adds a symlink from patrole_tempest_plugin/tests/api/\nREADME.rst to the RBAC field guide under the docs/ folder. This is\nthe same thing Tempest does with its README file under its tempest/api\npath: [0]\n\n[0] https://github.com/openstack/tempest/tree/master/tempest/api\n\nChange-Id: I0fb776b52828ceaa834885a8d097eb53efce0ba0\n"
    },
    {
      "commit": "337a574ad88b9158a77d18548b6fe809e4c8f353",
      "tree": "7637619706ec753d1a5241f00815385626a3815d",
      "parents": [
        "219f6d2b1edd24d9d577c21b6610ea295c2e09da",
        "24961a80e58fae2a4352254140015ff76dabe8fb"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Sep 11 22:47:13 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Sep 11 22:47:13 2018 +0000"
      },
      "message": "Merge \"Add test for create_subnetpool:is_default\""
    },
    {
      "commit": "219f6d2b1edd24d9d577c21b6610ea295c2e09da",
      "tree": "1385277011e96e724307c2a6e3e8f9f20bad942e",
      "parents": [
        "f82dee3e42f17bc167cb26d75ce97fb6048d9978",
        "e3b252740221d075bc9fdc514eaa3d89f4400551"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Sep 11 22:14:05 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Sep 11 22:14:05 2018 +0000"
      },
      "message": "Merge \"Adds tests to cover QOS policy\""
    },
    {
      "commit": "f82dee3e42f17bc167cb26d75ce97fb6048d9978",
      "tree": "b130fad5e08cd208e8c83012c3dda1acd7df8f3f",
      "parents": [
        "45fdb0ea25936a51511112a46c379242bab46e3c",
        "194752f1b5304e90e0e2911324f93cbe0169a1f3"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Sep 11 22:14:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Sep 11 22:14:04 2018 +0000"
      },
      "message": "Merge \"Remove deprecated patrole.enable_rbac configuration option\""
    },
    {
      "commit": "45fdb0ea25936a51511112a46c379242bab46e3c",
      "tree": "dcc0f5e6abc02d4310b15aa8bd5612add3c1ee07",
      "parents": [
        "fbdd39ffdbbba92b1aeb4df4112fb7253bbb8f49",
        "1bee142cf504e12f0ee8ffd2a28b61f0018144bf"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Sep 11 22:01:59 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Sep 11 22:01:59 2018 +0000"
      },
      "message": "Merge \"Add periodic-stable entry to .zuul.yaml\""
    },
    {
      "commit": "fbdd39ffdbbba92b1aeb4df4112fb7253bbb8f49",
      "tree": "1328dfc66da9ff9f8c5ce49f68407ddfaf778a05",
      "parents": [
        "a3c15da1cd0d74d17727056dd72103fc915ab86d",
        "22bb9b3279b2a4dc7757b938a5599822e50e069d"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Sep 11 21:59:39 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Sep 11 21:59:39 2018 +0000"
      },
      "message": "Merge \"Add Patrole gate job for stable/rocky\""
    },
    {
      "commit": "062fb157b80c037940fc4b227d78c258c3593f45",
      "tree": "77799307a5654192911b2b47fd2379bf313963d1",
      "parents": [
        "a3c15da1cd0d74d17727056dd72103fc915ab86d"
      ],
      "author": {
        "name": "Sergey Vilgelm",
        "email": "sergey@vilgelm.info",
        "time": "Thu Sep 06 20:51:57 2018 -0500"
      },
      "committer": {
        "name": "Sergey Vilgelm",
        "email": "sergey@vilgelm.info",
        "time": "Tue Sep 11 12:22:55 2018 -0500"
      },
      "message": "Add support for multiple policy files\n\nMost of the neutron plugins provide an updated version of policy.json\nfile with full list of rules, but at the same time there are a lot of\nother plugins which provide their own policy files and store them in\nthe policy.d/ folder: neutron-fwaas, networking-bgpvpn, vmware-nsx,\nect...\nTo implement the tests for such plugins the Patrole should be able to\nload and merge multiple policy files for any of the services.\n\nModify the discover_policy_files function to discover all policy files\nfor each of the services. Using glob.glob() function makes it possible\nto use patterns like \u0027*.json\u0027 to discover the policy files.\nModify the _get_policy_data function to load a data from all discovered\npolicy files for a service.\n\nUpdate the unit test according to the changes.\n\nChange-Id: Ib24f3d6d7a5ffdeaecce579af9795fd897dce872\n"
    },
    {
      "commit": "194752f1b5304e90e0e2911324f93cbe0169a1f3",
      "tree": "93799978b43a147d6919661d9ff22716b1af4426",
      "parents": [
        "a3c15da1cd0d74d17727056dd72103fc915ab86d"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Mon Sep 10 11:43:38 2018 -0600"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Mon Sep 10 13:47:30 2018 -0600"
      },
      "message": "Remove deprecated patrole.enable_rbac configuration option\n\nThis patch set removes deprecated [patrole].enable_rbac\nconfiguration option. It is better to use an appropriate\ntest regex to skip Patrole tests.\n\nChange-Id: I639f3215f7aff8a85bc97dc55c1d97be3123e003\n"
    },
    {
      "commit": "a3c15da1cd0d74d17727056dd72103fc915ab86d",
      "tree": "6d1205590b80363443cf92e18605ec7ba9e1975f",
      "parents": [
        "d720baddfeeb269457c5528b7cd23ef78bde95f6"
      ],
      "author": {
        "name": "Andreas Jaeger",
        "email": "aj@suse.com",
        "time": "Sun Sep 09 06:39:31 2018 +0200"
      },
      "committer": {
        "name": "Andreas Jaeger",
        "email": "aj@suse.com",
        "time": "Sun Sep 09 06:42:19 2018 +0200"
      },
      "message": "Use templates for cover and lower-constraints\n\nUse openstack-tox-cover template, this runs the cover job\nin the check queue only.\n\nUse openstack-lower-constraints-jobs template.\n\nRemove jobs that are part of the templates.\n\nChange-Id: I8d8b49d6256c7f7adb05d4c3c9f5b2aae3af6105\n"
    },
    {
      "commit": "d720baddfeeb269457c5528b7cd23ef78bde95f6",
      "tree": "603c996445a52cbbe41852881b3e8aa0b9979fcf",
      "parents": [
        "4635c6adf55ccacc6487a5ad208b895c899d94b6"
      ],
      "author": {
        "name": "Doug Hellmann",
        "email": "doug@doughellmann.com",
        "time": "Sat Sep 08 22:54:03 2018 -0400"
      },
      "committer": {
        "name": "Doug Hellmann",
        "email": "doug@doughellmann.com",
        "time": "Sat Sep 08 22:54:03 2018 -0400"
      },
      "message": "switch documentation job to new PTI\n\nThis is a mechanically generated patch to switch the documentation\njobs to use the new PTI versions of the jobs as part of the\npython3-first goal.\n\nSee the python3-first goal document for details:\nhttps://governance.openstack.org/tc/goals/stein/python3-first.html\n\nChange-Id: Ief323de5c09fcff7d3b51421faa6b10dddd69a54\nStory: #2002586\nTask: #24327\n"
    },
    {
      "commit": "4635c6adf55ccacc6487a5ad208b895c899d94b6",
      "tree": "1d7fd235ee7867d9af2a4dea8e9037b5ead68de8",
      "parents": [
        "a3d7311588f4cfce5d4deaffd60e0d90cdc5e8e3"
      ],
      "author": {
        "name": "Doug Hellmann",
        "email": "doug@doughellmann.com",
        "time": "Sat Sep 08 22:52:43 2018 -0400"
      },
      "committer": {
        "name": "Doug Hellmann",
        "email": "doug@doughellmann.com",
        "time": "Sat Sep 08 22:52:43 2018 -0400"
      },
      "message": "import zuul job settings from project-config\n\nThis is a mechanically generated patch to complete step 1 of moving\nthe zuul job settings out of project-config and into each project\nrepository.\n\nBecause there will be a separate patch on each branch, the branch\nspecifiers for branch-specific jobs have been removed.\n\nBecause this patch is generated by a script, there may be some\ncosmetic changes to the layout of the YAML file(s) as the contents are\nnormalized.\n\nSee the python3-first goal document for details:\nhttps://governance.openstack.org/tc/goals/stein/python3-first.html\n\nChange-Id: I99bc949484e22a45fdb6f05043b9fef0534f6028\nStory: #2002586\nTask: #24327\n"
    },
    {
      "commit": "a3d7311588f4cfce5d4deaffd60e0d90cdc5e8e3",
      "tree": "fb33ad330fa6739896de2e0586c447e9b5d43785",
      "parents": [
        "11376ab7ff60d9a4a4e8f63d905e1ee20c4ba042"
      ],
      "author": {
        "name": "Vishakha Agarwal",
        "email": "agarwalvishakha18@gmail.com",
        "time": "Mon Sep 03 16:12:55 2018 +0530"
      },
      "committer": {
        "name": "Vishakha Agarwal",
        "email": "agarwalvishakha18@gmail.com",
        "time": "Mon Sep 03 16:14:38 2018 +0530"
      },
      "message": "Remove unused config.CONF\n\nThis is to remove unused config.CONF\nto keep code clean.\n\nChange-Id: I011151aaadf18c7991861a3535af52b1581fdcbd\n"
    },
    {
      "commit": "24961a80e58fae2a4352254140015ff76dabe8fb",
      "tree": "159eb3bc016a3b906f9ed52bc40bd2808177ee8e",
      "parents": [
        "842845eaef1de6595e96ad253d0666555ce083f1"
      ],
      "author": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Tue Jul 17 16:02:10 2018 -0500"
      },
      "committer": {
        "name": "Mykola Yakovliev",
        "email": "myakovliev@mirantis.com",
        "time": "Fri Aug 31 03:47:59 2018 +0000"
      },
      "message": "Add test for create_subnetpool:is_default\n\nhttps://storyboard.openstack.org/#!/story/2002641\n\nStory: 2002641\nTask: 22301\nChange-Id: I49311242a54dd47c70774b19aafa083f7cf9fc5c\nDepends-On: https://review.openstack.org/#/c/583707\n"
    },
    {
      "commit": "11376ab7ff60d9a4a4e8f63d905e1ee20c4ba042",
      "tree": "ff02f3c804f56b5155a743238c44876968fd6430",
      "parents": [
        "842845eaef1de6595e96ad253d0666555ce083f1"
      ],
      "author": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Mon Aug 06 15:34:22 2018 -0500"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Fri Aug 31 02:35:46 2018 +0000"
      },
      "message": "Limit exception handling to calls within override_role\n\nMotivation: prevents false positives caused by test\nexceptions matching the expected exception before or\nafter the ``override_role`` context is called.\n\nThis patchset changes expected_error_codes behavior [0] by checking\nerrors explicitly outside the override_role context. This is done\nby introducing a new function to rbac_rule_validation that is\nused for validating that the expected exception isn\u0027t raised too\nearly (before ``override_role`` call) or too late (after\n``override_call``) or at all (which is a bad test).\n\nThis means that exceptions raised prior to override_role\ncall result in failure. The same goes for exceptions raised\nafter override_role -- except for those that are an instance\nof BasePatroleException (which is valid for things like\nRbacMalformedResponse getting raised intentionally).\n\nThe new exception that is introduced is called\nRbacOverrideRoleException.\n\nUnit tests are added for all validation scenarios described\nabove.\n\n[0] https://storyboard.openstack.org/#!/story/2003297\nStory: 2003297\nTask: 24246\n\nCo-Authored-By: Felipe Monteiro \u003cfelipe.monteiro@att.com\u003e\nChange-Id: Iae9a58640463093f6dda20d40261b20051be2820\n"
    },
    {
      "commit": "e3b252740221d075bc9fdc514eaa3d89f4400551",
      "tree": "6eb2fd3407f102ae3940670685f8df4341cbbfea",
      "parents": [
        "bfcf1cc50e05c765f852044c679984c67589d736"
      ],
      "author": {
        "name": "jessegler",
        "email": "jess.egler@gmail.com",
        "time": "Mon Aug 20 18:52:55 2018 -0500"
      },
      "committer": {
        "name": "jessegler",
        "email": "jess.egler@gmail.com",
        "time": "Wed Aug 29 17:54:13 2018 -0500"
      },
      "message": "Adds tests to cover QOS policy\n\nThis patch set adds tests to cover the QOS policy API [0].\nTests create_policy, get_policy, update_policy, delete_policy.\nPart of the \"Increase Neutron RBAC Coverage\" initiative [1].\n\n[0] https://developer.openstack.org/api-ref/network/v2/#qos-policies-qos\n[1] https://storyboard.openstack.org/#!/story/2002641\n\nChange-Id: Ie9d3365c6a39e16ca2e920d180e4f8fbb060daa3\nStory: 2002641\nTask: 22318\n"
    },
    {
      "commit": "849acef2b2d1251aeb02f9300c9e1b10cdb842e0",
      "tree": "1038e59952e0678418108882c7fc074ff4c8b545",
      "parents": [
        "f4cb74ce470b247f3f0e600200f9d893defbc738"
      ],
      "author": {
        "name": "jessegler",
        "email": "jess.egler@gmail.com",
        "time": "Fri Aug 24 17:23:11 2018 -0500"
      },
      "committer": {
        "name": "jessegler",
        "email": "jess.egler@gmail.com",
        "time": "Wed Aug 29 16:49:37 2018 -0500"
      },
      "message": "Adds tests to cover address scopes\n\nThis patch set adds tests to cover the address scopes API [0].\nTests create_address_scope, create_address_scope:shared, get_address_scope,\nupdate_address_scope, update_address_scope:shared, delete_address_scope.\nPart of the \"Increase Neutron RBAC Coverage\" initiative [1].\n\n[0] https://developer.openstack.org/api-ref/network/v2/#address-scopes\n[1] https://storyboard.openstack.org/#!/story/2002641\n\nChange-Id: I3f315f6cf6bd880a5add97b5928b853b1ea2e811\nStory: 2002641\nTask: 22302\n"
    },
    {
      "commit": "1bee142cf504e12f0ee8ffd2a28b61f0018144bf",
      "tree": "f831e07a439d34a551b027860b81450a5a8d3caf",
      "parents": [
        "22bb9b3279b2a4dc7757b938a5599822e50e069d"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Tue Aug 28 21:19:32 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Tue Aug 28 21:19:32 2018 -0400"
      },
      "message": "Add periodic-stable entry to .zuul.yaml\n\nThis adds a periodic-stable entry to .zuul.yaml for\nperiodically running stable jobs from previous releases\nso we can gauge their stability over time using OpenStack\nHealth.\n\nChange-Id: I672ff9c699afb7968f1cf0039915d5ce742da34c\n"
    },
    {
      "commit": "22bb9b3279b2a4dc7757b938a5599822e50e069d",
      "tree": "b196882a6274133d13dac18a20a01ffc87a736c5",
      "parents": [
        "842845eaef1de6595e96ad253d0666555ce083f1"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Tue Aug 28 21:17:58 2018 -0400"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Tue Aug 28 21:17:58 2018 -0400"
      },
      "message": "Add Patrole gate job for stable/rocky\n\nNow we have stable/rocky branch ready for devstack\nand so does for all service projects.\n\nThis commit adds the Patrole testing for stable/rocky\nby adding new jobs running on stable/rocky version of\nopenstack.\n\nDepends-On: https://review.openstack.org/#/c/596276/\nChange-Id: I522a5bd706723443713bd91270045a37187eff1a\n"
    },
    {
      "commit": "56bb7312713634ad7d99090b167b56c6d84b0852",
      "tree": "99b7d8396ab48975faa412a2ef31bff14757e76f",
      "parents": [
        "9ee07cf523583ffa0b6988de54c8dfe9b7e6e645"
      ],
      "author": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Thu Aug 16 18:34:10 2018 -0500"
      },
      "committer": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Tue Aug 28 15:15:49 2018 -0500"
      },
      "message": "Add tests to cover policy_dscp_marking_rule\n\nThis patch set adds tests to cover the policy_dscp_marking_rule API [0].\nTest creates, showes, updates and deletes policy_dscp_marking_rule.\nPart of \"Increase Neutron RBAC Coverage\" initiative [1]\n\n[0] https://developer.openstack.org/api-ref/network/v2/index.html#qos-dscp-marking-rules\n[1] https://storyboard.openstack.org/#!/story/2002641\n\nChange-Id: I34e6276784828c518513c5fe9caf1eee1669658a\nStory: 2002641\nTask: 22320\n"
    },
    {
      "commit": "842845eaef1de6595e96ad253d0666555ce083f1",
      "tree": "7fd1bc429b88e420370ae30ea4fb1a7b1428a065",
      "parents": [
        "f4cb74ce470b247f3f0e600200f9d893defbc738",
        "63d8602d359bf5f9492bf1f58c9edba89f01dd7f"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Fri Aug 24 19:49:39 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Aug 24 19:49:39 2018 +0000"
      },
      "message": "Merge \"Add tests to cover flavor_service_profile\""
    },
    {
      "commit": "f4cb74ce470b247f3f0e600200f9d893defbc738",
      "tree": "3e6e1d70f5b59f257f3b416ec8f7c4764c07ef15",
      "parents": [
        "2b93778e8cb0fe11f4b009a5b70df8efb92854c0"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Aug 19 17:18:56 2018 +0100"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Wed Aug 22 20:46:17 2018 +0000"
      },
      "message": "add python 3.6 unit test job\n\nThis is a mechanically generated patch to add a unit test job running\nunder Python 3.6 as part of the python3-first goal.\n\nSee the python3-first goal document for details:\nhttps://governance.openstack.org/tc/goals/stein/python3-first.html\n\nChange-Id: I300eb6cdd44d5486e5eb4cc4bf9b05aa3678251f\nStory: #2002586\nTask: #24763\n"
    },
    {
      "commit": "2b93778e8cb0fe11f4b009a5b70df8efb92854c0",
      "tree": "be8285cbc812ea8355b0b6ffbf51897cf25756c8",
      "parents": [
        "33d0583e054002d684053c4390ae13a0563c7e95",
        "98437d41a1f34db48422310a3d73de8149147c86"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Aug 22 05:32:18 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Aug 22 05:32:18 2018 +0000"
      },
      "message": "Merge \"Remove override of \u0027expected_error_codes\u0027 with defaults\""
    },
    {
      "commit": "33d0583e054002d684053c4390ae13a0563c7e95",
      "tree": "ed62ad137e2033a25ea1b2bc094b78240974e7ac",
      "parents": [
        "64f3943dadf34214192a7550e8a0dc9a34eb5173",
        "0f73e7ca9fa0deae2c88b0e9d7b3237397d92dda"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Aug 22 04:53:50 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Aug 22 04:53:51 2018 +0000"
      },
      "message": "Merge \"Add bandit python security scanning to pep8\""
    },
    {
      "commit": "64f3943dadf34214192a7550e8a0dc9a34eb5173",
      "tree": "0129e1eb91cac59a808e6b06ce5e0e56c7ee3947",
      "parents": [
        "031b182470a33065e868b916e6a11f2dec8244ae",
        "0f45285601808eab599e5d31887e9503e17a8392"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Wed Aug 22 01:06:53 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Aug 22 01:06:53 2018 +0000"
      },
      "message": "Merge \"Remove the usage of deprecated arg \u0027expected_error_code\u0027\""
    },
    {
      "commit": "0f73e7ca9fa0deae2c88b0e9d7b3237397d92dda",
      "tree": "9a687b977893d174dce4859a70041868a744c338",
      "parents": [
        "b1e9d7a69337ccaa2395437e120e80bac4b5d662"
      ],
      "author": {
        "name": "Gage Hugo",
        "email": "gagehugo@gmail.com",
        "time": "Tue Aug 21 15:51:08 2018 -0500"
      },
      "committer": {
        "name": "Gage Hugo",
        "email": "gagehugo@gmail.com",
        "time": "Tue Aug 21 15:51:08 2018 -0500"
      },
      "message": "Add bandit python security scanning to pep8\n\nThis change adds bandit python security code scanning to the\npep8 zuul check.\n\nChange-Id: I8b6c52bd3fae87c5b49f3cde8bb9e63526155973\n"
    },
    {
      "commit": "98437d41a1f34db48422310a3d73de8149147c86",
      "tree": "10ee4a74e38101d836928cd3192018223ca4fd29",
      "parents": [
        "b1e9d7a69337ccaa2395437e120e80bac4b5d662"
      ],
      "author": {
        "name": "ghanshyam",
        "email": "gmann@ghanshyammann.com",
        "time": "Fri Aug 17 08:51:43 2018 +0000"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Tue Aug 21 18:50:02 2018 +0000"
      },
      "message": "Remove override of \u0027expected_error_codes\u0027 with defaults\n\n\u0027expected_error_codes\u0027 are filled with defaults error code[1]\nin base class which is nothing but to fill required number\nof error codes with 403.\n\nFew tests override the \u0027expected_error_codes\u0027 with 403 itself which\nis confusing and inconsistent with other tests.\n\nThis commit removes those default overridden values.\n\n[1] https://github.com/openstack/patrole/blob/a6371ed510b318183e1c2cbafcc97bd85f6625f8/patrole_tempest_plugin/rbac_rule_validation.py#L286\n\nChange-Id: If607755fc09c392566fffad8f46e5f37cd33c2d2\n"
    },
    {
      "commit": "0f45285601808eab599e5d31887e9503e17a8392",
      "tree": "5b7f96c685c9cc6f2eb921515bf7ca97e913f3b8",
      "parents": [
        "b1e9d7a69337ccaa2395437e120e80bac4b5d662"
      ],
      "author": {
        "name": "ghanshyam",
        "email": "gmann@ghanshyammann.com",
        "time": "Fri Aug 17 09:30:07 2018 +0000"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Tue Aug 21 18:49:53 2018 +0000"
      },
      "message": "Remove the usage of deprecated arg \u0027expected_error_code\u0027\n\n\u0027expected_error_code\u0027 arg to rbac_rule_validation.action is\ndeprecated in favor of \u0027expected_error_codes\u0027.\n\nMany test use the old deprecated arg and that\u0027s why the warning. We\nshould cleanup the usage in patrole to avoid the confusion and make\nall test to latest interface.\n\nThis commit migrate those usage to new arg and leave the deprecated\narg as it is which can be removed completely after deprecation phase.\n\nChange-Id: Ie284ae74ce6480a59406aecfe341d579142bd625\n"
    },
    {
      "commit": "031b182470a33065e868b916e6a11f2dec8244ae",
      "tree": "4954b3f370976abc43fd36fb0f74e3faa6aa70e6",
      "parents": [
        "b1e9d7a69337ccaa2395437e120e80bac4b5d662"
      ],
      "author": {
        "name": "Mykola Yakovliev",
        "email": "VegasQ@gmail.com",
        "time": "Sat Jul 28 13:14:24 2018 -0500"
      },
      "committer": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Tue Aug 21 18:49:12 2018 +0000"
      },
      "message": "Add tests to cover RBAC policies\n\nThis patch set adds tests to cver the neutron RBAC policies API [0].\nTest gets, creates, updates, and deletes RBAC policies.\nPart of \"Increase Neutron RBAC Coverage\" initiative [1]\n\n[0] https://developer.openstack.org/api-ref/network/v2/index.html#rbac-policies\n[1] https://storyboard.openstack.org/#!/story/2002641\n\nChange-Id: I37e07c1b37a4630024d45dc9e5ade25ef31c703a\nStory: 2002641\nTask: 22322\n"
    },
    {
      "commit": "b1e9d7a69337ccaa2395437e120e80bac4b5d662",
      "tree": "f4f7fc1b737029a2bdedf844caed497e3cea39bd",
      "parents": [
        "17385c78737ca5e5dcc50a378596f0c9efa4f19b",
        "6bffc5c5c6d1a52793e1e2091f4e87b2edac8f31"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Aug 21 18:26:13 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Aug 21 18:26:13 2018 +0000"
      },
      "message": "Merge \"Skip the deprecated API extensions policy tests\""
    },
    {
      "commit": "6bffc5c5c6d1a52793e1e2091f4e87b2edac8f31",
      "tree": "deb60b61fb01e112115f244effa1cd72fbe81f9a",
      "parents": [
        "d063b409bb7a3d056ac9d55bb6200b1076e71422"
      ],
      "author": {
        "name": "Felipe Monteiro",
        "email": "felipe.monteiro@att.com",
        "time": "Sun Aug 19 22:54:33 2018 +0100"
      },
      "committer": {
        "name": "Ghanshyam Mann",
        "email": "gmann@ghanshyammann.com",
        "time": "Tue Aug 21 05:53:38 2018 +0000"
      },
      "message": "Skip the deprecated API extensions policy tests\n\nA new policy feature flag called\n``[policy_feature_flag].removed_nova_policies_stein``\nhas been added to Patrole\u0027s config to handle Nova API\nextension policies removed in Stein [0].\n\nThe policy feature flag is applied to tests that validate\nresponse bodies for expected attributes previously returned\nfor the following policies that passed authorization:\n\n      - os_compute_api:os-config-drive\n      - os_compute_api:os-extended-availability-zone\n      - os_compute_api:os-extended-status\n      - os_compute_api:os-extended-volumes\n      - os_compute_api:os-keypairs\n      - os_compute_api:os-server-usage\n      - os_compute_api:os-flavor-rxtx\n      - os_compute_api:os-flavor-access (only from /flavors APIs)\n      - os_compute_api:image-size\n\nNote that not all removed policies are included above because\ntest coverage is missing for them (like\nos_compute_api:os-security-groups).\n\nAlso fixes test flows associated with image_size tests:\n\n* endpoints are list images with details and show image (not\n  list image)\n* both tests should check for OS-EXT-IMG-SIZE:size attribute\n\n[0] https://review.openstack.org/#/c/586872/8\n\nStory: 2003501\n\nChange-Id: Ia6f8d255a540f7063beedd80a3ca1833f3987490\n"
    },
    {
      "commit": "17385c78737ca5e5dcc50a378596f0c9efa4f19b",
      "tree": "0da0cf53f8d6dae1aac6b02b052321130bd5b34e",
      "parents": [
        "d063b409bb7a3d056ac9d55bb6200b1076e71422",
        "bd15460f14ec538d0be12ca8f1201478134a82fe"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Mon Aug 20 21:52:21 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Aug 20 21:52:21 2018 +0000"
      },
      "message": "Merge \"Add release notes page for v0.4.0\""
    },
    {
      "commit": "d063b409bb7a3d056ac9d55bb6200b1076e71422",
      "tree": "0aa9261b3cc274b7bb8a06f36a3e23d41944f516",
      "parents": [
        "9ee07cf523583ffa0b6988de54c8dfe9b7e6e645",
        "04b26288b36564fb6498e4457b69b879aec23b99"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Fri Aug 17 09:29:36 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Aug 17 09:29:36 2018 +0000"
      },
      "message": "Merge \"Add tests to cover trunks\""
    }
  ],
  "next": "bd15460f14ec538d0be12ca8f1201478134a82fe"
}
