)]}'
{
  "log": [
    {
      "commit": "86620dacc6a7d0b11e5a40431a4e2786c2a027b4",
      "tree": "ef163ce6736e87db4d572506299ca5dcf8d8cad2",
      "parents": [
        "6b151cfd44cc4d665176e3e7b5af591d7cab61f7"
      ],
      "author": {
        "name": "Slawek Kaplonski",
        "email": "skaplons@redhat.com",
        "time": "Thu Feb 06 10:41:36 2020 +0100"
      },
      "committer": {
        "name": "Slawek Kaplonski",
        "email": "skaplons@redhat.com",
        "time": "Thu Feb 06 10:44:16 2020 +0100"
      },
      "message": "Stop using not existing ShellCommandError exception class\n\nIn commit [1] was introduced exception class ShellCommandFailed\nand it should be used in common.shell module. But by mistake\nthere was used not existing ShellCommandError class there.\nThis patch fixes that.\n\n[1] https://review.opendev.org/#/c/612978/\n\nChange-Id: I0b51165ea4d541b0cd2f5820a64cd7a82f23c6c9\n"
    },
    {
      "commit": "0e04f8f2b788fa927c8221aa832431b20d4fe33f",
      "tree": "79845912c7ed367fea52109bd89108756fd5e1e1",
      "parents": [
        "6f9bb77d9872a1cac4e1815ce13d97b8a143b3a8"
      ],
      "author": {
        "name": "Federico Ressi",
        "email": "fressi@redhat.com",
        "time": "Wed Oct 24 12:19:05 2018 +0200"
      },
      "committer": {
        "name": "Federico Ressi",
        "email": "fressi@redhat.com",
        "time": "Wed Nov 14 14:51:40 2018 +0100"
      },
      "message": "Create wrapper tool for both local and remote shell command execution.\n\nCreate base function called execute that takes a command and execute\nit using either subprocess module or an SSH client to allow\nimplementing commands wrapper that can be executed either locally or\nremotelly.\n\nIt also try to handle timeouts and produce good error capable of\nreporting whats written to stdout and stderr.\n\nChange-Id: I1a30b82338f44a4182722973e7ad3da2872295fd\n"
    },
    {
      "commit": "498a7f4945a7a568b3a3426cf5d7ee97f39771eb",
      "tree": "d7ec0d0712c10691793944b8792aa8fe87ec5c99",
      "parents": [
        "299c043aa7aa5d0dac41b4d950ce3332f4f946f7"
      ],
      "author": {
        "name": "Federico Ressi",
        "email": "fressi@redhat.com",
        "time": "Mon Oct 22 17:44:11 2018 +0200"
      },
      "committer": {
        "name": "Federico Ressi",
        "email": "fressi@redhat.com",
        "time": "Thu Nov 08 07:35:18 2018 +0000"
      },
      "message": "Fix execute_script method to avoid infinite wait.\n\nFix execute_script method\nAdd support for timeout to execute_script\n\nChange-Id: I8375ae174bc4631f5f56ce575be343d0f58d0318\n"
    },
    {
      "commit": "667d3d32601fe5b0ffc7454f8af4fd4c93aa584f",
      "tree": "8302067494cb2b6bed537f877bb687027a21c973",
      "parents": [
        "5e6198734b88b62d5b7c8e1e868af9e38fec4103"
      ],
      "author": {
        "name": "Chandan Kumar",
        "email": "chkumar@redhat.com",
        "time": "Fri Sep 22 12:24:06 2017 +0530"
      },
      "committer": {
        "name": "Chandan Kumar",
        "email": "chkumar@redhat.com",
        "time": "Mon Nov 13 09:19:11 2017 +0530"
      },
      "message": "Refactored Neutron tempest plugin directory structure\n\n* switch from neutron.tests.tempest to neutron_tempest_plugin\n* Cleaned up README.rst and setup.cfg\n* Use neutron_tempest_plugin as a tempest plugin package\n* Fixed gitreview\n* Keeping flake8 Ignores in tox.ini as tempest plugin is\n  imported from neutron codebase.\n\nChange-Id: I42d389836e72813fdeebc797a577f4a8ac2ee603\n"
    },
    {
      "commit": "023d7f8acc0a7535c94559fbbdbe15759d4564b6",
      "tree": "9d8187f3e4af6fd5178565e3a6a467221842384f",
      "parents": [
        "673c248d5e6ebf0a26faf94ccc9ea841a88383e7"
      ],
      "author": {
        "name": "Armando Migliaccio",
        "email": "armamig@gmail.com",
        "time": "Thu Feb 25 12:21:24 2016 -0800"
      },
      "committer": {
        "name": "Armando Migliaccio",
        "email": "armamig@gmail.com",
        "time": "Fri Feb 26 14:00:11 2016 +0000"
      },
      "message": "Switch to using in-tree tempest lib\n\nAs a result of change db9672e3473cd, tempest_lib is no\nlonger a thing we should be using.\n\nChange-Id: I47f368fdce477d7419cc8fc23eb17264df42932d\n"
    },
    {
      "commit": "d22ca2eb758e4b9d7a54d5af13b8ca864d80c34a",
      "tree": "0171439f176e476968719b12116aff952d3e5adf",
      "parents": [
        "41d066309e94dfe3bf534f340b03d675bbcc88fb"
      ],
      "author": {
        "name": "Assaf Muller",
        "email": "amuller@redhat.com",
        "time": "Tue Jan 19 11:47:14 2016 -0500"
      },
      "committer": {
        "name": "Assaf Muller",
        "email": "amuller@redhat.com",
        "time": "Fri Jan 29 11:31:27 2016 -0500"
      },
      "message": "Delete Tempest fork, import from tempest and tempest_lib\n\nA while ago we copied Tempest networking API tests in to the\nNeutron repo, and along came thousands of lines of code of Tempest\ntesting infrastructure (neutron.tests.tempest). For a while we\nperiodically refreshed our fork via:\ntools/copy_api_tests_from_tempest.sh\n\nI think it\u0027s time we move away from that model by eliminating\nthe fork. We do this by deleting unused code and importing the\nrest from tempest_lib. There\u0027s some Tempest code still not\nmoved from Tempest to tempest_lib in tempest.common. I think\nit\u0027s preferable to import that code than to copy it, and Tempest\ncores mostly agree. Manila and Ironic also do the same.\nTo be able to import from tempest I added it as a requirement:\nSince Tempest is not on PyPi, I had to get it from git. Only the api\ntests environment needs Tempest, so instead of adding it to\ntest-requirements, I added it specifically to the api and\napi-constraints venvs.\n\nneutron.tests.tempest.test and neutron.tests.tempest.common.*\nstill remain. These are tighly coupled with one another, and\nsadly since Neutron forked Tempest code, Tempest has made significant\nchanges to those files that also require changes to the test files.\nI aim to get rid of the Neutron fork of these files in a follow up\nchange.\n\nAlso fixed import grouping in test files so that it\u0027s std libs,\n3rd party libs, and then Neutron code.\n\n* Removed neutron.tests.tempest.config:\n  - We only added one option after the fork. I created a new group\n    called \u0027neutron_plugin_options\u0027 and moved the new option to that\n    group. This is in preperation for the Tempest plugin architecture,\n    where you\u0027re supposed to add new config options to a new group\n    and not to existing configuration groups. Note that this is\n    obviously a backward incompatible change, but it\u0027s to an option\n    added in the same cycle.\n* Removed neutron.tests.tempest.test and neutron.tests.tempest.common.\n  - This introduced an API change to the way we access Keystone,\n    which required mechanical changes to a few tests (create_tenant\n    calls need a different client now).\n  - The way Tempest manages primary, admin and alternative tenant\n    credentials was changed after we forked, which required another\n    mechanical change to a few tests.\n* Cut all of the Keystone clients we don\u0027t need. We only need\n  to create/delete tenants, the other clients were used in Tempest by\n  actual Keystone tests.\n* Changed neutron.tests.api.base.BaseNetworkTest:\n  - Re-implemented get_client_manager so that it returns the Neutron\n    clients manager and not the one in the Tempest repo.\n  - Updated it from the Tempest repo so that it uses the new way\n    to manage credentials (Since it now uses the Tempest test base\n    class and not our out of date forked copy).\n\nChange-Id: I4f9193dfe26f2d36985cb480a98709ec182a2f7b\n"
    },
    {
      "commit": "be6187d1e2920cf9d76d01cfa14698ed708ed1b3",
      "tree": "8a91c2942695479af10d0bf76ef9cd6ea74fc92d",
      "parents": [
        "cc2041fbf27032b6329ade058895994aefc57f02"
      ],
      "author": {
        "name": "Sergey Vilgelm",
        "email": "sergey@vilgelm.info",
        "time": "Sat Sep 12 21:55:01 2015 +0300"
      },
      "committer": {
        "name": "Sergey Vilgelm",
        "email": "sergey@vilgelm.info",
        "time": "Sat Sep 12 22:12:50 2015 +0300"
      },
      "message": "Fix missing value types for log message\n\nThis patch add missing value types for some log message of exception.\n\nChange-Id: Ie9f512bc804f0cd70df991b1910c975a2f9d6fcf\nCloses-Bug: #1494574\n"
    },
    {
      "commit": "b096d9f85db70568b51f0948190792c340d472fb",
      "tree": "01ad1be2e308ac9c827157a624d5ef5cc2176ca6",
      "parents": [
        "deb4631fa6800b0493fa67dcda2f6a6329745a3e"
      ],
      "author": {
        "name": "Maru Newby",
        "email": "marun@redhat.com",
        "time": "Mon Mar 09 18:54:54 2015 +0000"
      },
      "committer": {
        "name": "Maru Newby",
        "email": "marun@redhat.com",
        "time": "Mon Mar 09 21:24:55 2015 +0000"
      },
      "message": "Initial copy of api tests from tempest\n\nThis change is the result of running\ntools/copy_api_tests_from_tempest.sh.\n\nChange-Id: Ica02dbe1ed26f1bc9526ea9682756ebc5877cf4a\n"
    }
  ]
}
