)]}'
{
  "log": [
    {
      "commit": "b33ec4bf1bec70f9a95af55fe47d30418c7325c2",
      "tree": "dd37f654de09384046485ed68795f1f09bf8a030",
      "parents": [
        "42517968ff7bdced07c5bc08b6cb2b8d10d246cc",
        "ec07b343d25e9964db57ef9c3e2a89deeb5ac56e"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Tue Apr 18 17:15:32 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Apr 18 17:15:32 2023 +0000"
      },
      "message": "Merge \"Remove support for opensuse\""
    },
    {
      "commit": "f834f9adaf9c228ff4ec6a5e24e6d4cf3ca6a992",
      "tree": "ba76ecdeb3276dd4f464a5a79e4c7aabdf9776b6",
      "parents": [
        "ab8e51eb49068a8c5004007c18fdfb9b1fcc0954"
      ],
      "author": {
        "name": "Michael Johnson",
        "email": "johnsomor@gmail.com",
        "time": "Mon Mar 06 18:47:03 2023 +0000"
      },
      "committer": {
        "name": "Michael Johnson",
        "email": "johnsomor@gmail.com",
        "time": "Mon Mar 06 20:09:10 2023 +0000"
      },
      "message": "Fix NotImplementedError in dbcounter on SQLA 2.x\n\nThis patch fixes a NotImplementedError raised in the dbcounter plugin when using SQLAlchemy 2.x. The plugin signature has changed and now requires an \"update_url\" method as part of the plugin[1].\nThis patch also updates the do_incr() explicit SQL string to use a TextClause and the new requirement for named bound parameters[2].\n\nCloses-Bug: #2009521\n\n[1] https://docs.sqlalchemy.org/en/20/changelog/migration_14.html#changes-to-createengineplugin\n[2] https://docs.sqlalchemy.org/en/20/changelog/migration_20.html#execute-method-more-strict-execution-options-are-more-prominent\n\nChange-Id: Ie5484597057a3306757cc46b657446ad61ac2098\n"
    },
    {
      "commit": "ec07b343d25e9964db57ef9c3e2a89deeb5ac56e",
      "tree": "8aba9bcbaeeb4deb79b6e317bb1e4bca0096bf3b",
      "parents": [
        "864f4d1ef05e3e539d3537fa4c8d731df9571c9d"
      ],
      "author": {
        "name": "Martin Kopec",
        "email": "mkopec@redhat.com",
        "time": "Tue Jan 24 17:38:45 2023 +0100"
      },
      "committer": {
        "name": "Martin Kopec",
        "email": "mkopec@redhat.com",
        "time": "Thu Feb 16 12:01:39 2023 +0100"
      },
      "message": "Remove support for opensuse\n\nWe haven\u0027t been testing the distro for a while in CI, e.g. in\nTempest, the jobs on opensuse15 haven\u0027t been executed for a year\nnow.\nTherefore the patch removes opensuse support from devstack.\n\nCloses-Bug: #2002900\nChange-Id: I0f5e4c644e2d14d1b8bb5bc0096d1469febe5fcc\n"
    },
    {
      "commit": "818d1a225d54291d1da1f8011f92affb2998d0e9",
      "tree": "66ba6ed6899420db636dd4ff5a21547daa227f47",
      "parents": [
        "2795e8215da782e9d485c3ba5df1bd0a622658a5"
      ],
      "author": {
        "name": "Martin Kopec",
        "email": "mkopec@redhat.com",
        "time": "Mon Nov 28 11:19:45 2022 +0100"
      },
      "committer": {
        "name": "Martin Kopec",
        "email": "mkopec@redhat.com",
        "time": "Mon Nov 28 11:19:45 2022 +0100"
      },
      "message": "[doc] Update Ubuntu to 22.04\n\nThis updates documentation to reflect the switch to\nUbuntu 22.04 (jammy) in the CI:\nhttps://review.opendev.org/c/openstack/devstack/+/860795\n\nChange-Id: I8bee430029dcc719629bd92451c2791571f8a30c\n"
    },
    {
      "commit": "d1c2bf5e7c739bc5a7eeac602b477edb9f6630c2",
      "tree": "bb1773a20a92fc11856a19ab993f4bf3d1bcc991",
      "parents": [
        "1f5d6c0abba7c18dc809a68ed893a6e8f77b207a"
      ],
      "author": {
        "name": "Rodolfo Alonso Hernandez",
        "email": "ralonsoh@redhat.com",
        "time": "Wed Nov 02 16:43:41 2022 +0100"
      },
      "committer": {
        "name": "Rodolfo Alonso Hernandez",
        "email": "ralonsoh@redhat.com",
        "time": "Mon Nov 07 08:21:34 2022 +0000"
      },
      "message": "Add new service \"file_tracker\"\n\nThis new service periodically tracks the file open in the system.\n\nCloses-Bug: #1995502\nChange-Id: I02e097fef07655ff571af9f35bf258b2ed975098\n"
    },
    {
      "commit": "fe7cfa6b8c7573d643d66d3684de03e4183651bb",
      "tree": "1a37dabf94bd54adc6c30793e5ed3ec9f95a5049",
      "parents": [
        "eacaa99853e3c1ed938a5d54b30d69ece8a45335"
      ],
      "author": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Thu Jun 23 09:25:22 2022 -0700"
      },
      "committer": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Thu Jun 23 09:25:22 2022 -0700"
      },
      "message": "Avoid including bad service names in perf.json\n\nSome of the API services are not properly mounted under /$service/\nin the apache proxy. This patch tries to avoid recording data\nfor \"services\" like \"v2.0\" (in the case of neutron) by only adding\nnames if they\u0027re all letters. A single warning is emitted for any\nservices excluded by this check.\n\nFor the moment this will mean we don\u0027t collect data for those services,\nbut when their devstack API config is fixed, they\u0027ll start to show\nup.\n\nChange-Id: I41cc300e89a4f97a008a8ba97c91f0980f9b9c3f\n"
    },
    {
      "commit": "8eede1fc391c08352d5cdc8d980c12cface5a354",
      "tree": "cb6122e440e3ff420eff4b83f51f9594e70887b4",
      "parents": [
        "7391297bc348dc89f7e29c1ab804b1e62d419ae9",
        "c869d59857c636d21ecd0329023038b24252627d"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Wed Jun 08 21:39:03 2022 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Jun 08 21:39:03 2022 +0000"
      },
      "message": "Merge \"Add support for IPv6 tunnel endpoints\""
    },
    {
      "commit": "e6e7100e853f2ba06bf2157fd87ae948faba1d1f",
      "tree": "d242770d93720ed2d4efd58b9968d1580e14d4a1",
      "parents": [
        "e661cae7e8b6f4c843aaac9ecd2d89083d20ed45"
      ],
      "author": {
        "name": "Dr. Jens Harbott",
        "email": "harbott@osism.tech",
        "time": "Tue Jun 07 10:12:59 2022 +0200"
      },
      "committer": {
        "name": "Dr. Jens Harbott",
        "email": "harbott@osism.tech",
        "time": "Tue Jun 07 13:42:54 2022 +0200"
      },
      "message": "Don\u0027t install pinned setuptools with distro pip\n\nWe are seeing failures when using an updated setuptools version\ninstalled together with distro pip on Ubuntu 22.04. Install the version\nfrom u-c only when we are also installing pip from upstream.\n\nChange-Id: Ibb6e9424e5794ccbf9a937d2eecfa3bf60ed312e\n"
    },
    {
      "commit": "c869d59857c636d21ecd0329023038b24252627d",
      "tree": "eb2cda8344a3bfcd26e8a20e329b763abdcc33d8",
      "parents": [
        "e661cae7e8b6f4c843aaac9ecd2d89083d20ed45"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "bhaley@redhat.com",
        "time": "Fri Feb 28 14:55:08 2020 -0500"
      },
      "committer": {
        "name": "Brian Haley",
        "email": "haleyb.dev@gmail.com",
        "time": "Tue Jun 07 02:28:51 2022 +0000"
      },
      "message": "Add support for IPv6 tunnel endpoints\n\nCurrently, neutron tunnel endpoints must be IPv4 addresses,\ni.e. $HOST_IP, although IPv6 endpoints are supported by most\ndrivers.\n\nCreate a TUNNEL_IP_VERSION variable to choose which host IP\nto use, either HOST_IP or HOST_IPV6, and configure it in the\nOVS and Linuxbridge agent driver files. The default is still\nIPv4, but it can be over-ridden by specifying TUNNEL_ENDPOINT_IP\naccordingly.\n\nThis behaves similar to the SERVICE_IP_VERSION option, which\ncan either be set to 4 or 6, but not 4+6 - the tunnel overhead\nshould be consistent on all systems in order not to have MTU\nissues.\n\nMust set the ML2 overlay_ip_version config option to match\nelse agent tunnel sync RPC will not work.\n\nMust set the OVN external_ids:ovn-encap-ip config option to\nthe correct address.\n\nUpdated \u0027devstack-ipv6-only\u0027 job definition and verification role\nthat will set all services and tunnels to use IPv6 addresses.\n\nCloses-bug: #1619476\n\nChange-Id: I6034278dfc17b55d7863bc4db541bbdaa983a686\n"
    },
    {
      "commit": "906cf815284d3ab7ffcf0eeab16b1a7585ee4750",
      "tree": "b4c9377e5a0a7409dda82da6d4ac4adbbc31b0eb",
      "parents": [
        "35fb53423a68f8d156693ae79c1c6950538a33b7",
        "e85c68e60ff460f0e16eefd5f084862628a3c54d"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Fri Jun 03 18:44:10 2022 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Jun 03 18:44:10 2022 +0000"
      },
      "message": "Merge \"Add apache2 to the services we collect for memory\""
    },
    {
      "commit": "0ae279b54aa53953f4cf48e2c2aa386b5bc0f2c0",
      "tree": "9bd0b1f9243062adb24c0e235628ccfe8be58904",
      "parents": [
        "d0657a02e59b706b3063d3a6941421ccf3762c36",
        "c64ea4f213afebd1602d05cdd4d5bc14eaf5356b"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Tue May 31 21:15:54 2022 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue May 31 21:15:54 2022 +0000"
      },
      "message": "Merge \"Fix doc and user create script to set homedir permissions\""
    },
    {
      "commit": "d0657a02e59b706b3063d3a6941421ccf3762c36",
      "tree": "44647354c1b718e90c009f15673bd9d3ae280ad7",
      "parents": [
        "0e08e9b48c33855fe513655d5a018e891e06b49b",
        "1cdf413ac6f993dc2074741be4627acdc3f10304"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Tue May 31 19:04:26 2022 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue May 31 19:04:26 2022 +0000"
      },
      "message": "Merge \"Do not barf stack trace if stats DB is missing\""
    },
    {
      "commit": "e85c68e60ff460f0e16eefd5f084862628a3c54d",
      "tree": "ec85311d458ff509a7e8af9eaebce02486fdc3d2",
      "parents": [
        "0e08e9b48c33855fe513655d5a018e891e06b49b"
      ],
      "author": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Thu May 26 09:31:36 2022 -0700"
      },
      "committer": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Thu May 26 09:31:36 2022 -0700"
      },
      "message": "Add apache2 to the services we collect for memory\n\nChange-Id: Ic6daef5b4df50ce43c6782542cb54c1958e54655\n"
    },
    {
      "commit": "c64ea4f213afebd1602d05cdd4d5bc14eaf5356b",
      "tree": "90370d709a99472a34b450efe80cc92643e38d7b",
      "parents": [
        "d380858b2de619d7712ebd84c7d9c5114a4405fe"
      ],
      "author": {
        "name": "yatinkarel",
        "email": "ykarel@redhat.com",
        "time": "Wed Apr 20 12:30:09 2022 +0530"
      },
      "committer": {
        "name": "Dr. Jens Harbott",
        "email": "frickler@offenerstapel.de",
        "time": "Wed May 25 06:34:30 2022 +0000"
      },
      "message": "Fix doc and user create script to set homedir permissions\n\nRHEL based distros set homedir permissions to 700,\nand Ubuntu 21.04+ to 750[1], i.e missing executable\npermission for group or others, this results into failures\nas defined in the below bug.\n\nSince in doc we add useradd command, it\u0027s good to\nadd instructions to fix the permissions there itself\ninstead of getting failures during installation and then\nfixing it.\n\nAlso update user create script to fix permissions\nby adding executable bit to DEST directory if missing.\n\n[1] https://discourse.ubuntu.com/t/private-home-directories-for-ubuntu-21-04-onwards/19533\n\nCloses-Bug: #1966858\nChange-Id: Id2787886433281238eb95ee11a75eddeef514293\n"
    },
    {
      "commit": "8e1d5aa22eb799fafe7ec8454be279479cba6da3",
      "tree": "6cc2672e25d0174735b65509e1da7959bda3190a",
      "parents": [
        "50e3c06ec245e8a5e7ca24015b0c152e3bc40a5c",
        "560ee16a85b22b4456177d289cf53c31c6a1ca6b"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Tue May 24 11:34:09 2022 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue May 24 11:34:09 2022 +0000"
      },
      "message": "Merge \"Drop openEuler support\""
    },
    {
      "commit": "1cdf413ac6f993dc2074741be4627acdc3f10304",
      "tree": "38d6165679c87495844aa49514fb0986380e4b27",
      "parents": [
        "50e3c06ec245e8a5e7ca24015b0c152e3bc40a5c"
      ],
      "author": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Mon May 23 13:56:13 2022 -0700"
      },
      "committer": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Mon May 23 13:56:13 2022 -0700"
      },
      "message": "Do not barf stack trace if stats DB is missing\n\nThis can happen if devstack fails to run, but we still run the post\ntasks. Also could happen if some sort of hybrid job configuration\ndoes not run all of devstack but we still end up running post jobs.\n\nJust warn to stderr and assume no DB info.\n\nChange-Id: I211a331ab668dbb0ad7882908cca4363f865d924\n"
    },
    {
      "commit": "50e3c06ec245e8a5e7ca24015b0c152e3bc40a5c",
      "tree": "1876a283b05919beacbba07e51a0980b5b6df89a",
      "parents": [
        "34c28426767dea608b1bf54ad2bc7fdc27b49f16"
      ],
      "author": {
        "name": "Clark Boylan",
        "email": "clark.boylan@gmail.com",
        "time": "Thu May 19 13:36:43 2022 -0700"
      },
      "committer": {
        "name": "Clark Boylan",
        "email": "clark.boylan@gmail.com",
        "time": "Fri May 20 10:35:18 2022 -0700"
      },
      "message": "Fix dbcounter installation on Jammy\n\nThere are two problems with dbcounter installation on Jammy. The first\nis straightforward. We have to use `py_modules` instead of `modules` to\nspecify the source file. I don\u0027t know how this works on other distros\nbut the docs [0] seem to clearly indicate py_modules does this.\n\nThe second issue is quite an issue and requires story time. When\npip/setuptools insteall editable installs (as is done for many of the\nopenstack projects) it creates an easy-install.pth file that tells the\npython interpreter to add the source dirs of those repos to the python\npath. Normally these paths are appended to your sys.path. Pip\u0027s isolated\nbuild env relies on the assumption that these paths are appeneded to the\npath when it santizes sys.path to create the isolated environemnt.\n\nHowever, when SETUPTOOLS_SYS_PATH_TECHNIQUE is set to rewrite the paths\nare not appended and are inserted in the middle. This breaks pip\u0027s\nisolated build env which broke dbcounter installations. We fix this by\nnot setting SETUPTOOLS_SYS_PATH_TECHNIQUE to rewrite. Upstream indicates\nthe reason we set this half a decade ago has since been fixed properly.\n\nThe reason Jammy and nothing else breaks is that python3.10 is the first\npython version to use pip\u0027s isolated build envs by default.\n\nI\u0027ve locally fiddled with a patch to pip [1] to try and fix this\nbehavior even when rewrite is set. I don\u0027t plan to push this upstream\nbut it helps to illustrate where the problem lies. If someone else would\nlike to upstream this feel free.\n\nFinally this change makes the jammy platform job voting again and adds\nit to the gate to ensure we don\u0027t regress again.\n\n[0] https://docs.python.org/3/distutils/sourcedist.html#specifying-the-files-to-distribute\n[1] https://paste.opendev.org/show/bqVAuhgMtVtfYupZK5J6/\n\nChange-Id: I237f5663b0f8b060f6df130de04e17e2b1695f8a\n"
    },
    {
      "commit": "560ee16a85b22b4456177d289cf53c31c6a1ca6b",
      "tree": "da9a10d19b242e3d2cc414e461439c70c07eaf4a",
      "parents": [
        "08254ca3127042d2ed081df4bcb8ff15ca7bdb2e"
      ],
      "author": {
        "name": "Dr. Jens Harbott",
        "email": "harbott@osism.tech",
        "time": "Thu May 19 13:58:11 2022 +0200"
      },
      "committer": {
        "name": "Dr. Jens Harbott",
        "email": "harbott@osism.tech",
        "time": "Thu May 19 14:06:11 2022 +0200"
      },
      "message": "Drop openEuler support\n\nThe job is broken since it is running with python3.7 and most services\nnow require at least python3.8.\n\nSigned-off-by: Dr. Jens Harbott \u003charbott@osism.tech\u003e\nChange-Id: Ie21f71acffabd78c79e2b141951ccf30a5c06445\n"
    },
    {
      "commit": "64d68679d9660e304ab3550929fe9892a124ac6f",
      "tree": "2d515391562cf58f70b29bba1862bd74244d1acd",
      "parents": [
        "fe52d7f0a88de2dc330923cf6cf52c83ccb92bd6"
      ],
      "author": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Fri Apr 22 07:58:29 2022 -0700"
      },
      "committer": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Thu May 12 07:55:30 2022 -0700"
      },
      "message": "Improve API log parsing\n\nTwo runs of the same job on the same patch can yield quite different\nnumbers for API calls if we just count the raw calls. Many of these\nare tempest polling for resources, which on a slow worker can require\nmany more calls than a fast one.\n\nTempest seems to not change its User-Agent string, but the client\nlibraries do. So, if we ignore the regular \"python-urllib\" agent\ncalls, we get a much more stable count of service-to-service API\ncalls in the performance report.\n\nNote that we were also logging in a different (less-rich) format for\nthe tls-proxy.log file, which hampers our ability to parse that\ndata in the same format. This switches it to \"combined\" which is used\nby the access.log and contains more useful information, like the\nuser-agent, among other things.\n\nChange-Id: I8889c2e53f85c41150e1245dcbe2a79bac702aad\n"
    },
    {
      "commit": "fe52d7f0a88de2dc330923cf6cf52c83ccb92bd6",
      "tree": "98a1e56a45f2f8bc52e9386a00bdf39c2c347bba",
      "parents": [
        "d450e146ccc9b43ce151f57523e4e4c88b9fdafb"
      ],
      "author": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Thu Apr 28 12:34:38 2022 -0700"
      },
      "committer": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Thu May 12 07:55:02 2022 -0700"
      },
      "message": "Change DB counting mechanism\n\nThe mysql performance_schema method for counting per-database queries\nis very heavyweight in that it requires full logging (in a table) of\nevery query. We do hundreds of thousands in the course of a tempest\nrun, which ends up creating its own performance problem.\n\nThis changes the approach we take, which is to bundle a very tiny\nsqlalchemy plugin module which counts just what we care about in\na special database.\n\nIt is more complex than just enabling the features in mysql, but it\nis a massively smaller runtime overhead. It also provides us the\nopportunity to easily zero the counters just before a tempest run.\n\nChange-Id: I361bc30bb970cdaf18b966951f217862d302f0b9\n"
    },
    {
      "commit": "85c2999e27b873a516fab75958b313673b6478e5",
      "tree": "1abea35ccf0d5593c46b9e51b964943a262d5f88",
      "parents": [
        "bfae1bee794219acb3f40c8a098e955dd1afc122",
        "1b601c7b1e8a3ec4816cb827ccd8bf909a05debb"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Wed Apr 27 22:49:07 2022 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Apr 27 22:49:07 2022 +0000"
      },
      "message": "Merge \"Tolerate missing deps in get-stats.py\""
    },
    {
      "commit": "1b601c7b1e8a3ec4816cb827ccd8bf909a05debb",
      "tree": "db28e4d032434113e3f51b1d25b3b37058e7bdb6",
      "parents": [
        "76c519bde69cb05b09aea3e983cf35469acaa624"
      ],
      "author": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Mon Apr 25 07:47:56 2022 -0700"
      },
      "committer": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Tue Apr 26 08:02:39 2022 -0700"
      },
      "message": "Tolerate missing deps in get-stats.py\n\nIn order to run on systems where not all requirements are present,\nwe should be tolerant of missing external dependencies, such as\npsutil and pymysql. Print a warning (to stderr) and just leave out\nthose stats in that case.\n\nAlso make running the stats collector use ignore_errors:yes to avoid\nfailures in the future. I think the stats is not critical enough to\nfail a job for bugs like this.\n\nRelated-Bug: #1970195\nChange-Id: I132b0e1f5033c4f109a8b8cc776c0877574c4a49\n"
    },
    {
      "commit": "bab0c9210371e1cfa321b8528217a7f2e156d7a1",
      "tree": "b5d044754e61bbbc71c66a44c3a200f064482c53",
      "parents": [
        "3b0c035b905debf9d2f520360a9b0e5e74720b23"
      ],
      "author": {
        "name": "Harald Jensås",
        "email": "hjensas@redhat.com",
        "time": "Tue Apr 26 15:46:56 2022 +0200"
      },
      "committer": {
        "name": "Harald Jensås",
        "email": "hjensas@redhat.com",
        "time": "Tue Apr 26 15:51:35 2022 +0200"
      },
      "message": "Use tryint() for stats value\n\nIn some cases the value is [not set], in this case\nthe conversion to integer does not work.\n\nCloses-Bug: #1970431\nChange-Id: I74df7d8bc9f5cbe0709a6471cf7639caea0b58e8\n"
    },
    {
      "commit": "c2772c2984e4f29aa6032725e4f7d8680a54ed19",
      "tree": "be68d78a7eb1aaff15200705d4139dc616216318",
      "parents": [
        "aac6b6c7912b3feae4b68789508bee4bf1544731"
      ],
      "author": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Fri Apr 08 08:48:49 2022 -0700"
      },
      "committer": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Wed Apr 20 13:07:22 2022 -0700"
      },
      "message": "Gather performance data after tempest\n\nThis makes us gather a bunch of consistent statistics after we run\ntempest that can be use to measure the impact of a given change. These\nare stable metrics such as \"number of DB queries made\" and \"how much\nmemory is each service using after a tempest run.\"\n\nNote that this will always run after devstack to generate the JSON\nfile, but there are two things that control its completeness:\n\n - MYSQL_GATHER_PERFORMANCE must be enabled to get per-db stats\n - Unless tls-proxy is enabled, we will only get API stats for keystone\n\nChange-Id: Ie3b1504256dc1c9c6b59634e86fa98494bcb07b1\n"
    },
    {
      "commit": "a756f4b9681d429f2612164eb01d57c800ff2d2a",
      "tree": "5759d8260fb7308d12c11d355892b9dded5751d7",
      "parents": [
        "099411815b2b43849b4ee23930b413ac8de8d14e"
      ],
      "author": {
        "name": "Rodolfo Alonso Hernandez",
        "email": "ralonsoh@redhat.com",
        "time": "Mon Jan 31 16:38:31 2022 +0000"
      },
      "committer": {
        "name": "Rodolfo Alonso",
        "email": "ralonsoh@redhat.com",
        "time": "Tue Feb 01 11:27:05 2022 +0000"
      },
      "message": "Add python3.6 pip support\n\nSince pip v22, python3.6 is not supported (the minimum version is\npython3.7). This patch adds the reference for the pip3.6 URL to be\nused instead of the default one.\n\nCloses-Bug: #1959600\nChange-Id: Iab2c391d5388461fe9e9037cee81884ce8032e72\n"
    },
    {
      "commit": "d6909e41af4b776e68fb133a31ff086fdaff38ff",
      "tree": "0937b73944f294e59953a03287f974ed8313847b",
      "parents": [
        "d5d0bed479497560489983ae1fc80444b44fe029"
      ],
      "author": {
        "name": "Dr. Jens Harbott",
        "email": "harbott@osism.tech",
        "time": "Sat Jan 22 13:54:12 2022 +0100"
      },
      "committer": {
        "name": "Dr. Jens Harbott",
        "email": "harbott@osism.tech",
        "time": "Sat Jan 22 17:02:29 2022 +0100"
      },
      "message": "Use distro pip on Ubuntu\n\nRunning get-pip.py fails on Ubuntu when running twice, e.g. after a\nunstack/stack cycle. Just use distro pip instead.\n\nCloses-Bug: #1957048\nSigned-off-by: Dr. Jens Harbott \u003charbott@osism.tech\u003e\nChange-Id: I87a8d53ed8860dd017a6c826dee6b6f4baef3c96\n"
    },
    {
      "commit": "d5d0bed479497560489983ae1fc80444b44fe029",
      "tree": "fdaac4193663d0bc45d75709587309a120dfce12",
      "parents": [
        "b6656b7b38db212d6aa471aa01a9cfaf6024d64b"
      ],
      "author": {
        "name": "yatinkarel",
        "email": "ykarel@redhat.com",
        "time": "Mon Jan 17 12:04:16 2022 +0530"
      },
      "committer": {
        "name": "yatin",
        "email": "ykarel@redhat.com",
        "time": "Mon Jan 17 08:43:52 2022 +0000"
      },
      "message": "Workaround CentOS 8-stream bug until fixed\n\nRecent iputils release in CentOS 8-stream causing\nping failures with non root user. This needs a fix\nin systemd package as mentioned in the Related Bugs,\nuntil it\u0027s fixed and is in 8-stream mirrors let\u0027s\nworkaround it by setting net.ipv4.ping_group_range\nsetting manually.\n\nRelated-Bug: #1957941\nRelated-Bug: rhbz#2037807\nChange-Id: I0d8dac910647968b625020c2a94e626ba5255058\n"
    },
    {
      "commit": "7880ba665e2d594b2eabb0533e6dca52e042ca50",
      "tree": "929c86999c7e4588f1f8186015fa86f2286f8fb8",
      "parents": [
        "6c849e371384e468679d3d030fe494a36587c505"
      ],
      "author": {
        "name": "Kevin Zhao",
        "email": "kevin.zhao@linaro.org",
        "time": "Wed Mar 31 04:58:28 2021 +0000"
      },
      "committer": {
        "name": "wangxiyuan",
        "email": "wangxiyuan1007@gmail.com",
        "time": "Wed Dec 22 14:47:27 2021 +0800"
      },
      "message": "openEuler 20.03 LTS SP2 support\n\nopenEuler is an open-source Linux based operating system. The current\nopenEuler kernel is based on Linux and supports multi arch, such as X86_64\nand aarch64. It fully unleashes the potential of computing chips. As an\nefficient, stable, and secure open-source OS built by global open-source\ncontributors, openEuler applies to database, big data, cloud computing,\nand AI scenarios. openEuler is using RPM for package management.\n\nNote:\nCurrently there is no available package for uwsgi-plugin-python3 and ovn, so that\nopenEuler needs manually install them from source.\n\nWebsite: https://www.openeuler.org/en/\n\nChange-Id: I169a0017998054604a63ac6c177d0f43f8a32ba6\nCo-Authored-By: wangxiyuan \u003cwangxiyuan1007@gmail.com\u003e\nSigned-off-by: Kevin Zhao \u003ckevin.zhao@linaro.org\u003e\n"
    },
    {
      "commit": "5ea4c3c18c558ec1fa37e0dd9b28ce66c3da1130",
      "tree": "3e8c9f8c93a01a753a09df434a4fec8ebcd44676",
      "parents": [
        "f9a896c6e6afcf52e9a50613285940c26e353ba3"
      ],
      "author": {
        "name": "Alfredo Moralejo",
        "email": "amoralej@redhat.com",
        "time": "Tue Nov 16 15:13:03 2021 +0100"
      },
      "committer": {
        "name": "Alfredo Moralejo",
        "email": "amoralej@redhat.com",
        "time": "Thu Dec 02 09:10:48 2021 +0100"
      },
      "message": "Support CentOS Stream 9\n\nThis patch includes changes required to run devstack on CentOS Stream 9\nwhich has been already published in official repos by CentOS team [1]:\n\n- Add RDO deps repository for CS9.\n- remove xinetd package from installation for swift. Note that\n  rsync-daemon is installed which should work fine.\n- Replace genisoimage by xorriso in CS9.\n- Use /etc/os-release to identify the distro in CS9 as it doesn\u0027t\n  provide lsb_release command.\n- Use pip from rpm package instead of from get-pip.py as done in Fedora.\n- Add non-voting job devstack-platform-centos-9-stream to the check\n  pipeline.\n\nChange-Id: Ic67cddabd5069211dc0611994b8b8360bcd61bef\n"
    },
    {
      "commit": "fb2e74100854b01992e3dc7be35bd42ff22780b7",
      "tree": "e3121dd914fb00500d1a1b506a44b786b4058062",
      "parents": [
        "bca0448438a3328bd797c16c427f1d80d5bd52aa",
        "c2491bac9d3b3f0446e67b4ea960cb88da9aec0e"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Wed Nov 03 12:30:07 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Nov 03 12:30:07 2021 +0000"
      },
      "message": "Merge \"Stop creating a keystone admin site\""
    },
    {
      "commit": "c2491bac9d3b3f0446e67b4ea960cb88da9aec0e",
      "tree": "a40e4300cf2ec92db51ff18ca48892ade1295aa7",
      "parents": [
        "c027ddd3f895802f5cab37d2cb04162686a3a3cb"
      ],
      "author": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Sun Jun 14 18:06:23 2020 +0200"
      },
      "committer": {
        "name": "Dr. Jens Harbott",
        "email": "harbott@osism.tech",
        "time": "Sun Oct 17 17:11:03 2021 +0200"
      },
      "message": "Stop creating a keystone admin site\n\nKeystone no longer has any special functionality hidden behind the admin\nsite. KEYSTONE_AUTH_URI which used to point to the admin site has long\nago been changed to be a copy of KEYSTONE_SERVICE_URI, which points to\nthe public site.\n\nDrop all KEYSTONE_AUTH_* variables except KEYSTONE_AUTH_URI which may\nstill be in use in some plugins.\n\nThis also allows to finally drop the fixup_keystone() function.\n\nChange-Id: I549f3cadc27d137e014241cdd47e90267859c848\n"
    },
    {
      "commit": "ee1c614eda833b38ad0d526b4b1e493dfe5968be",
      "tree": "e8a218948221bb80eca70847750ba7b1d7d07379",
      "parents": [
        "c027ddd3f895802f5cab37d2cb04162686a3a3cb"
      ],
      "author": {
        "name": "Jens Harbott",
        "email": "frickler@offenerstapel.de",
        "time": "Sat Oct 16 17:33:12 2021 +0200"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "frickler@offenerstapel.de",
        "time": "Sat Oct 16 17:33:12 2021 +0200"
      },
      "message": "Fix use of yaml.load()\n\nThe use of this function has been deprecated for a long time[0]. With\nPyYAML\u003d\u003d6.0 the call is now failing, so replace it with the safe\nversion.\n\n[0] https://msg.pyyaml.org/load\n\nSigned-off-by: Jens Harbott \u003cfrickler@offenerstapel.de\u003e\nChange-Id: I7a170262b50a5c80a516095b872d52e1bea5479d\n"
    },
    {
      "commit": "82facd6edf7cefac1ab68de4fe9054d7c4cb50db",
      "tree": "1aa79048e9bc936822daaaa61dd767d83dfa4241",
      "parents": [
        "10d20b14e70f9dcf79a2f42c27c3b21a0ff67644",
        "a5d52831dc4d357906f5514943e17ab535e9e578"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Tue Oct 12 20:43:00 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Oct 12 20:43:00 2021 +0000"
      },
      "message": "Merge \"Fix updating setuptools in Centos\""
    },
    {
      "commit": "10d20b14e70f9dcf79a2f42c27c3b21a0ff67644",
      "tree": "16ff346cf630df2237045e33e2721bbf99c0d7f1",
      "parents": [
        "d603c2a459a211ca29662796d4939424dbbac079",
        "61a37bff9a35337f5924ca7cc61c76e42e55d787"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Mon Oct 11 09:26:28 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Oct 11 09:26:28 2021 +0000"
      },
      "message": "Merge \"Further fixup for Ubuntu cloud images\""
    },
    {
      "commit": "23cbf138b417bf26280460cfe35c5aa1ca8c7cc9",
      "tree": "ccfda76bb48028c5565072bab74f213a549f4f32",
      "parents": [
        "e2e88dc19ade9d269e5027427f1288e57ce4762f",
        "bfc79dc98bfe68e22d3a58099bf550eda1a90a67"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Mon Oct 11 08:10:36 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Oct 11 08:10:36 2021 +0000"
      },
      "message": "Merge \"tools: Fix use of continue\""
    },
    {
      "commit": "e2e88dc19ade9d269e5027427f1288e57ce4762f",
      "tree": "dba5f9b39568d66d7653e8cbf3a44fca2af56499",
      "parents": [
        "2e336ee79fbc9a2b6b99c3a43079890dc67212d5",
        "ac1b723c20fb67aaecd43cd08c6eee88c5f339f2"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Mon Oct 11 00:53:22 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Oct 11 00:53:22 2021 +0000"
      },
      "message": "Merge \"Fix displaying usage for make_cert.sh\""
    },
    {
      "commit": "61a37bff9a35337f5924ca7cc61c76e42e55d787",
      "tree": "7a12031edaa60a0b7c08977e56062e9450416040",
      "parents": [
        "982b03c605bc06e0bf9a03ff576995816155c64e"
      ],
      "author": {
        "name": "Dr. Jens Harbott",
        "email": "harbott@osism.tech",
        "time": "Fri Oct 08 10:59:09 2021 +0200"
      },
      "committer": {
        "name": "Dr. Jens Harbott",
        "email": "harbott@osism.tech",
        "time": "Fri Oct 08 11:04:03 2021 +0200"
      },
      "message": "Further fixup for Ubuntu cloud images\n\nThe official Ubuntu cloud images have some further python pkgs\npreinstalled that conflict with our requirements. Allow to\noverwrite them.\n\nSigned-off-by: Dr. Jens Harbott \u003charbott@osism.tech\u003e\nCloses-Bug: 1871485\nChange-Id: I793c250cae5e7b9bc835b7016d790d1f9ae8a7f3\n"
    },
    {
      "commit": "bfc79dc98bfe68e22d3a58099bf550eda1a90a67",
      "tree": "482148bf5aa72fd14925bc3840e0323e8b6e9c77",
      "parents": [
        "982b03c605bc06e0bf9a03ff576995816155c64e"
      ],
      "author": {
        "name": "Michal Berger",
        "email": "michallinuxstuff@gmail.com",
        "time": "Tue Oct 05 15:40:20 2021 +0200"
      },
      "committer": {
        "name": "Michal Berger",
        "email": "michallinuxstuff@gmail.com",
        "time": "Tue Oct 05 15:44:45 2021 +0200"
      },
      "message": "tools: Fix use of continue\n\ncontinue is not used in a proper context here (outside of loop). Use\nnull cmd instead to simply fall through the pip installation.\n\nSigned-off-by: Michal Berger \u003cmichallinuxstuff@gmail.com\u003e\nChange-Id: Iaea2e5c0177b475edf19d08d71933a74debbb5d9\n"
    },
    {
      "commit": "8dac135cb89fa5d27d7af344703db0a20cf550e1",
      "tree": "b26dd7635ff57a77b6fe4156db179f04c230abf3",
      "parents": [
        "156ccbad85f30cd4c9c33d30b612b3151d542f8e"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Aug 11 14:56:05 2021 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Aug 11 15:00:18 2021 +1000"
      },
      "message": "Simplify pip install\n\nThe uninstall here has been around since\nIbb4b42119dc2e51577c77bbbbffb110863e5324d.  At the time, there might\nhave been conflicts between packaged and installed pip.  We don\u0027t need\nit today; get-pip.py keeps itself separate enough in /usr/local on all\nplatforms.  Thus we can also remove the suse/centos special-casing.\n\npython3-pip is in the RPM list so we don\u0027t need to\nre-install for Fedora.\n\nAdd a note on why we are over-installing pip.\n\nRemove some old setuptools workarounds that are commented out.\n\nChange-Id: Ie3cb81a8ff71cf4b81e23831c380f83b0381de71\n"
    },
    {
      "commit": "a20971850afb555ee4b04068a39a67a533b69901",
      "tree": "b55fc08cc9d906a2db2af943e193915fffbbf960",
      "parents": [
        "2df2aa01584fb2a26112c60f0a16869e233cb7ee"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Aug 10 14:11:12 2021 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Aug 11 14:07:17 2021 +1000"
      },
      "message": "install_pip: Use packaged pip on Fedora\n\nThis uses the python3-pip package for Fedora but maintains the status\nquo for existing distributions (i.e. for Suse we run get-pip.py but\ndon\u0027t uninstall, and for everything else we uninstall python3-pip and\nrun get-pip.py to be running the latest pip).\n\nAs noted inline, installing get-pip.py over Fedora 34\u0027s package no\nlonger works, and likely won\u0027t ever work again.  Unlike the LTS\ndistributions, the Fedora pip should be more up-to-date, so I think\nit\u0027s best we just avoid any package overwrites.\n\nChange-Id: I84129aadfcf585bb150a3daa39616246d3d84bbd\n"
    },
    {
      "commit": "2df2aa01584fb2a26112c60f0a16869e233cb7ee",
      "tree": "cf56c3014ce6c8026604253dce80a49f9fae53fd",
      "parents": [
        "6b9a5646225a766f6240e2a1a93a92b82e088aa0"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Aug 10 13:50:08 2021 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Aug 10 14:36:30 2021 +1000"
      },
      "message": "install_pip: don\u0027t fail when not installed\n\nOn some platforms, \"python -m pip\" isn\u0027t available.  Currently this is\nrun undconditionally from the \"get_versions\" function; remove the call.\n\nChange-Id: I91d6c66d055f02fa7b4368593b629933f82d8117\n"
    },
    {
      "commit": "6b9a5646225a766f6240e2a1a93a92b82e088aa0",
      "tree": "69b78dd517cd4f914cae253031747c18755cadde",
      "parents": [
        "13f02e8b7607e89096f719b1fa83734bf3332ec6"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Jul 28 11:19:57 2021 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Aug 10 14:22:35 2021 +1000"
      },
      "message": "Revert \"Workaround for new pip 20.3 behavior\"\n\nThis reverts commit 7a3a7ce876a37376fe0dca7278e41a4f46867daa and\nbcd0acf6c0b5d6501e91133c3a937b3fc40f7122 and part of\nf1ed7c77c50ac28cb58c9f7ed885c6a3e0a75403 which all cap our pip\ninstalls.\n\nGiven the pip ecosystem can often incorporate major changes, tracking\nupstream at least generally gives us one problem at a time to solve\nrather than trying to handle version jumps when LTS distros update.\n\nThe new dependency resolver included some changes that disallow\nsetting URL\u0027s like \"file:///path/to/project#egg\u003dproject\" in\nconstraints.  Apparently the fact it used to work was an accident of\nthe requires/constraints mechanism; it does make some sense as the URL\ndoesn\u0027t really have a version-number that the resolver can put in an\nordering graph.\n\nThe _setup_package_with_constraints_edit function comment highlights\nwhat this is trying to do\n\n # Updates the constraints from REQUIREMENTS_DIR to reflect the\n # future installed state of this package. This ensures when we\n # install this package we get the from source version.\n\nIn other words; if constraints has \"foo\u003d\u003d1.2.3\" and Zuul has checked\nout \"foo\" for testing, we have to make sure pip doesn\u0027t choose version\n1.2.3 from pypi.\n\nIt seems like removing the entry from upper-requirements.txt is the\nimportant part; adding the URL path to the on-disk version was just\nsomething that seemed to work at the time, but isn\u0027t really necessary.\nWe will install the package in question which will be the latest\nversion (from Zuul checkout) and without the package in\nupper-requirements.txt nothing will try and downgrade it.\n\nTherefore the solution proposed here is to remove the adding of the\nURL parts.\n\nThis allows us to uncap pip and restore testing with the new\ndependency resolver.\n\nCloses-Bug: #1906322\nChange-Id: Ib9ba52147199a9d6d0293182d5db50c4a567d677\n"
    },
    {
      "commit": "ac1b723c20fb67aaecd43cd08c6eee88c5f339f2",
      "tree": "ebfd8e32467866f8728ed64822211a720e14ed2c",
      "parents": [
        "e937dcb7431d1dc8c0fff7a2c3c22d2a1eae4a27"
      ],
      "author": {
        "name": "Roman Dobosz",
        "email": "gryf73@gmail.com",
        "time": "Fri Aug 06 12:52:01 2021 +0200"
      },
      "committer": {
        "name": "Roman Dobosz",
        "email": "gryf73@gmail.com",
        "time": "Fri Aug 06 12:55:39 2021 +0200"
      },
      "message": "Fix displaying usage for make_cert.sh\n\nNow, if no arguments are passed to make_cert.sh script, it will fail on:\n\n  tools/make_cert.sh: line 30: [: missing `]\u0027\n\nand might go on with generating certs depending on the bash settings.\nIt is fixed within this patch.\n\nChange-Id: I62bf9c972ebd1644da622439e05114f245f20809\n"
    },
    {
      "commit": "a5d52831dc4d357906f5514943e17ab535e9e578",
      "tree": "50926605f100f40ed1c212339d28408f14cd71b9",
      "parents": [
        "6af3cb9eb273c127c20bc07f65c9a5d7f8ba95cd"
      ],
      "author": {
        "name": "Gregory Thiemonge",
        "email": "gthiemon@redhat.com",
        "time": "Fri Jun 18 13:53:21 2021 +0200"
      },
      "committer": {
        "name": "Gregory Thiemonge",
        "email": "gthiemon@redhat.com",
        "time": "Mon Jun 21 09:58:47 2021 +0200"
      },
      "message": "Fix updating setuptools in Centos\n\nIn RHEL-based distributions, updating setuptools using pip removes the\nfiles from the python3-setuptools RPM. It breaks some tools such as\nsemanage (which is used by diskimage-builder) that use the -s flag of\nthe python interpreter (don\u0027t import modules from /usr/local).\nThis commit reinstalls python3-setuptools to fix those applications.\n\nChange-Id: Ib44857e83f75acf37823fae912960a801c83cf7f\n"
    },
    {
      "commit": "74bcc0b4ef2e8fd3a6caf831608d920dd90d0523",
      "tree": "f3cdc71aec71e94d96cb287c6f1124894afaa441",
      "parents": [
        "89baa314c1408251abd9f4d61d9cf5e5c945bc4e",
        "5a684eb51b4c18aee2051c5a7c703f50bbcc41ca"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Tue Jun 15 07:13:31 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jun 15 07:13:31 2021 +0000"
      },
      "message": "Merge \"Drop broute from ebtables_dump\""
    },
    {
      "commit": "5a684eb51b4c18aee2051c5a7c703f50bbcc41ca",
      "tree": "44da2fd2813aa9521c5f17f2f6f612fff7db05bb",
      "parents": [
        "22038a9a8c4418d6d49bed83024a3cd97e627860"
      ],
      "author": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Wed Jun 09 09:37:34 2021 +0200"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Wed Jun 09 09:37:34 2021 +0200"
      },
      "message": "Drop broute from ebtables_dump\n\nThis table is no longer present on most installations, drop it\nfrom the list to avoid error messages during log collection\nthat people mistake to be the real error why devstack is failing.\n\nThis may lose some debugging information in edge cases, but I\nthink the improvement of the general user experience is more\nimportant.\n\nChange-Id: Ibb9b247a018a788c8c4b40487762319fe470bf0f\nCloses-Bug: 1885198\n"
    },
    {
      "commit": "2fb8c7a5eea6f9321eef36fb9b8fd8e55465c91e",
      "tree": "4cfaa89fc4059f29ecd3afb6f892d26887a03e32",
      "parents": [
        "96509ea025459ac077d2c85289da7725c53235cf"
      ],
      "author": {
        "name": "Radosław Piliszek",
        "email": "radoslaw.piliszek@gmail.com",
        "time": "Mon Jun 07 17:44:54 2021 +0000"
      },
      "committer": {
        "name": "Radosław Piliszek",
        "email": "radoslaw.piliszek@gmail.com",
        "time": "Mon Jun 07 17:44:54 2021 +0000"
      },
      "message": "Move verify-ipv6-only-deployments\n\nfrom Tempest to DevStack as it tests DevStack side of things and\nis useful for projects not using Tempest.\n\nVerbatim copy except for the devstack- prefix and the /devstack/\npath.\n\nChange-Id: Ie166730843f874b9c99e37244e460d7ad33b7eeb\n"
    },
    {
      "commit": "c9abd1d6ba6be00b10f6d04dbfe61ae7ba8e313d",
      "tree": "459e758b20629ffdbd36d41e69e9a23847faf25e",
      "parents": [
        "b04a62beff3c2093f1c91341d8b2a9083f759cd1",
        "7ad4cd07c8bf4f302acc4fc6684e362309332c9d"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Tue May 18 07:54:47 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue May 18 07:54:47 2021 +0000"
      },
      "message": "Merge \"Drop Bionic support\""
    },
    {
      "commit": "7ad4cd07c8bf4f302acc4fc6684e362309332c9d",
      "tree": "cc86b1fdfdef4a624fbd599dd42e63f6a1403b53",
      "parents": [
        "0386c1cda61b57da3aedde05e317137c354fb4d9"
      ],
      "author": {
        "name": "Ghanshyam Mann",
        "email": "gmann@ghanshyammann.com",
        "time": "Thu Apr 29 09:24:38 2021 -0500"
      },
      "committer": {
        "name": "Ghanshyam Mann",
        "email": "gmann@ghanshyammann.com",
        "time": "Thu Apr 29 09:33:59 2021 -0500"
      },
      "message": "Drop Bionic support\n\nSince victoria cycle, we have moved upstream testing to\nUbuntu Focal (20.04) and so does no Bionic distro in\nXena cycle testing runtime[1]. Grenade jobs also started\nrunning on Focal since victoria was released.\n\nOnly thing left was legacy jobs which were not migrated to\nUbuntu Focal in Victoria and as per another community-wide\ngoal[2], all the lgeacy jobs were suppsoed to be migrated\nto zuulv3 native jobs in victoria cycle itself. One of the\npending job was in nova (nova-grenade-multinode) which is also\nmigrated to zuulv3 native now\n- https://review.opendev.org/c/openstack/nova/+/778885\n\nIf there is any job running on bionic, we strongly recommend\nto migrate it to Ubuntu Focal.\n\n[1] https://governance.openstack.org/tc/reference/runtimes/xena.html\n[2] https://governance.openstack.org/tc/goals/selected/victoria/native-zuulv3-jobs.html\n\nChange-Id: I39e38e4a6c2e52dd3822c9fdea354258359a9f53\n"
    },
    {
      "commit": "b02a43291cc5e2d5677ecbb80c0fd608d67a1374",
      "tree": "46649fc38080c576317dcf18ec3022474ccd1e51",
      "parents": [
        "c062792709def9ef10ddac68867e1b7bf9009435"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Nov 27 12:59:04 2018 +1100"
      },
      "committer": {
        "name": "Stephen Finucane",
        "email": "stephenfin@redhat.com",
        "time": "Wed Apr 28 16:31:17 2021 +0000"
      },
      "message": "Handle disappearing pids in mlock_report.py\n\nIf a pid disappears on us while we\u0027re reading, we should just continue\non.\n\nEnvironmentError is just an alias for OSError since Python 3.3, so use\nthe latter name. [0]\n\n[0] https://docs.python.org/3/library/exceptions.html#OSError\n\nChange-Id: I3a25cca328e1469f72c84a118a9691c1c0258bc4\nCloses-Bug: #1926434\n"
    },
    {
      "commit": "970891a4ef863344fb1425727b3c3bf91b1c8bb5",
      "tree": "782a639eca786b0645bd8b95cc8d5b77351092c3",
      "parents": [
        "3c6d1059298788d4ce35845fdb1bef2938046702"
      ],
      "author": {
        "name": "Stephen Finucane",
        "email": "sfinucan@redhat.com",
        "time": "Tue Mar 02 16:45:39 2021 +0000"
      },
      "committer": {
        "name": "Stephen Finucane",
        "email": "sfinucan@redhat.com",
        "time": "Fri Mar 05 15:10:19 2021 +0000"
      },
      "message": "Remove references to XenAPI driver\n\nThe XenAPI driver was removed during the Victoria release [1], while the\nlibvirt+xen driver has been removed in the Wallaby release [2]. Remove\nreferences to Xen from DevStack since its all a no-op now.\n\n[1] I42b302afbb1cfede7a0f7b16485a596cd70baf17\n[2] I73305e82da5d8da548961b801a8e75fb0e8c4cf1\n\nChange-Id: If7055feb88391f496a5e5e4c72008bf0050c5356\nSigned-off-by: Stephen Finucane \u003csfinucan@redhat.com\u003e\n"
    },
    {
      "commit": "edee6dc341e40939360b36ce9fd09052dea1ee4d",
      "tree": "61f64332f28a337b5449045ecd11f1a8fcec2448",
      "parents": [
        "e2f574fb9036f5b4abc05e2c244a1d6caa322063"
      ],
      "author": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Tue Jan 12 14:04:38 2021 -0800"
      },
      "committer": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Tue Jan 12 17:41:19 2021 -0800"
      },
      "message": "Add debug helper script\n\nI\u0027m not sure if others will find this useful, but I use this\nscript to run pieces of devstack while trying to write/debug\nthings. It saves me a lot of time being able to get to some\nproject-lib function without a full clean/re-stack.\n\nFigured I\u0027d share in case it\u0027s worth putting into the tree.\n\nChange-Id: I9a92fa71d34f50c2f5ba7d11c1a45301bd4478bf\n"
    },
    {
      "commit": "aef50ed18c3c9b7c01894f6c8e00e297abebe690",
      "tree": "63540aed6c7cfdc64e988551d6b02ef82b40ff1d",
      "parents": [
        "04b0b61557f7dad6c32b566255c21a36e4b0aefa",
        "e651d9ef8840bb7dd497b557125ce1cd5290993d"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Wed Dec 30 16:29:29 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Dec 30 16:29:29 2020 +0000"
      },
      "message": "Merge \"[OVN] Use OVN from packages\""
    },
    {
      "commit": "e651d9ef8840bb7dd497b557125ce1cd5290993d",
      "tree": "f1f5c124b08d2161bc195e38a84b5817b160d278",
      "parents": [
        "3a96dd10c6d416ee79c5a4a1572bf56f58d3ad2f"
      ],
      "author": {
        "name": "Lucas Alvares Gomes",
        "email": "lucasagomes@gmail.com",
        "time": "Thu Nov 19 14:50:01 2020 +0000"
      },
      "committer": {
        "name": "Slawek Kaplonski",
        "email": "skaplons@redhat.com",
        "time": "Sat Dec 19 18:50:48 2020 +0100"
      },
      "message": "[OVN] Use OVN from packages\n\nThis patch changes the OVN module from DevStack to allow for using the\nOSapackaged version of OVN instead of compiling it from source.\n\nA new variable called OVN_BUILD_FROM_SOURCE has been introduced and when\nset to False (the default value) OVN will then use the packaged version\nfor setting up DevStack.\n\nNote, in the stop_ovn() function, the OVN metadata agent service name\nwas wrong and the service wasn\u0027t being stopped as part of ./unstack.sh.\nThis patch also fixed it as well.\n\nChange-Id: Ib41e3b486550200572afd6b3ba783d7644d70d44\nSigned-off-by: Lucas Alvares Gomes \u003clucasagomes@gmail.com\u003e\nCo-Authored-By: Slawek Kaplonski \u003cskaplons@redhat.com\u003e\n"
    },
    {
      "commit": "7a3a7ce876a37376fe0dca7278e41a4f46867daa",
      "tree": "e7b6220131ee80d2778994bb7253499a46d86367",
      "parents": [
        "907b9042b8aaee8b8b31beb9a1435cf9d1d69f1a"
      ],
      "author": {
        "name": "Elod Illes",
        "email": "elod.illes@est.tech",
        "time": "Mon Nov 30 18:30:02 2020 +0100"
      },
      "committer": {
        "name": "Ghanshyam Mann",
        "email": "gmann@ghanshyammann.com",
        "time": "Mon Nov 30 17:01:20 2020 -0600"
      },
      "message": "Workaround for new pip 20.3 behavior\n\nThis patch caps pip version during bootstrap to avoid the issue:\n\n\"ERROR: Links are not allowed as constraints\"\n\nA proper fix would be to adapt to new pip behavior.\n\nDepends-On: https://review.opendev.org/764811\nChange-Id: I1feed4573820436f91f8f654cc189fa3a21956fd\n"
    },
    {
      "commit": "6c03a85d8bebffb17ec923d9f94a499dd8c4854b",
      "tree": "2f6b93c1a848b17ca3a08c200af8e8786794e59c",
      "parents": [
        "47f76acbbac350ea18df6a9463876d38c3a13539"
      ],
      "author": {
        "name": "Sean Mooney",
        "email": "work@seanmooney.info",
        "time": "Tue Nov 10 14:10:11 2020 +0000"
      },
      "committer": {
        "name": "Jens Harbott (frickler)",
        "email": "j.harbott@x-ion.de",
        "time": "Wed Nov 11 04:59:21 2020 +0000"
      },
      "message": "enable ussuri cloud archive on ubuntu bionic\n\nThis change updates bionic installs to use the\nussuri cloud archive to enable the use of libvirt 6.0.0.\nThis is required to prevent a libvirt bug that causes intermittent\nfailures for the tempest test_live_block_migration_paused testcase.\n\nChange-Id: I9c395c2b5fdfe6ad9a43477280e88e9a9b34f057\nRelated-Bug: 1901739\n"
    },
    {
      "commit": "7de6e0b2eca9ac661a92badef4488d8d6380b06f",
      "tree": "1cde5e12702eb71e889809794c3bf8deda058ddb",
      "parents": [
        "0545b48f3b14f2951033b5e09db3190a95cf3527"
      ],
      "author": {
        "name": "Sean Mooney",
        "email": "work@seanmooney.info",
        "time": "Wed Oct 21 13:59:50 2020 +0100"
      },
      "committer": {
        "name": "Sean Mooney",
        "email": "work@seanmooney.info",
        "time": "Wed Oct 21 14:05:17 2020 +0100"
      },
      "message": "fix ipv6 flag order in worlddump\n\nthis change corrects the flag order from \u0027route -6\u0027\nto \u0027-6 route\u0027 as the -6 flag is an option when used with\nip is an argument to the the ip command and not the route\nsubcommand.\n\n-6 is accpeted as an argument to the standalone \u0027route\u0027\ncommannd but not \u0027ip route\u0027 subcommand.\n\nChange-Id: Ic2ae472e42b7b455693d0aade48dc5109e1f21ba\n"
    },
    {
      "commit": "0545b48f3b14f2951033b5e09db3190a95cf3527",
      "tree": "0e49c7349615954fc50748b75d0f58d53fb50405",
      "parents": [
        "6e68add2758d5a07c96188da7c3c75671a2dad8e"
      ],
      "author": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Tue Oct 13 16:06:44 2020 +0200"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Tue Oct 13 16:06:44 2020 +0200"
      },
      "message": "Add IPv6 route information to worlddump\n\nThe \"ip route\" command only outputs IPv4 routes, add a command to also\nshow IPv6 route information.\n\nDrop output from \"ip link\" as that information is contained within the\n\"ip addr\" output already.\n\nChange-Id: Iae87f43c4b1c57f07de041e823da9d350c670389\n"
    },
    {
      "commit": "3ebb95f9b5e82256e66fcedb23f8f0740349c898",
      "tree": "343e71910f6e5ba40adeed8c45a9f927f108fa4e",
      "parents": [
        "29efb7282296c183d5036bc64451a9469a053056"
      ],
      "author": {
        "name": "Dan Radez",
        "email": "dradez@redhat.com",
        "time": "Fri Oct 02 09:46:31 2020 -0400"
      },
      "committer": {
        "name": "Dan Radez",
        "email": "dradez@redhat.com",
        "time": "Sat Oct 10 10:34:12 2020 +0000"
      },
      "message": "Removing fixup for f32 + dnsmasq 2.81\n\nworkaround reported https://bugs.launchpad.net/neutron/+bug/1896945\nfixed by https://review.opendev.org/#/c/755356/\n\nChange-Id: I86a0be548e344ed4e95eab7212ba432bf570d2ae\n"
    },
    {
      "commit": "fa5742f8e1d95802cf8c623e29fcbc4931903b68",
      "tree": "7618be95c5bc67cf0d05bd591a1d66c24171896e",
      "parents": [
        "0e45edd3bf609b597f966042b683a4d56ba32fe6"
      ],
      "author": {
        "name": "Lee Yarwood",
        "email": "lyarwood@redhat.com",
        "time": "Tue Sep 08 09:38:14 2020 +0100"
      },
      "committer": {
        "name": "Lee Yarwood",
        "email": "lyarwood@redhat.com",
        "time": "Fri Sep 25 11:33:57 2020 +0100"
      },
      "message": "Add Fedora 32 to supported list and use as fedora-latest\n\nThis includes a workaround to a known dnsmasq \u003e\u003d 2.81 issue that\nresults in unanswered DHCP requests from instances as documented in the\nfollowing Neutron bug:\n\ndnsmasq \u003e\u003d 2.81 not responding to DHCP requests with current q-dhcp configs\nhttps://bugs.launchpad.net/neutron/+bug/1896945\n\nFor the time being we will attempt to downgrade to 2.80 to avoid this.\n\nRelated-Bug: #1896945\nChange-Id: I3a760c43956221424926bd9dad0ebe9b28ae2b52\n"
    },
    {
      "commit": "eac2b0789cbc784230807e6c0ff7612ec5ed6a96",
      "tree": "0674f78e4417705f8531c016c285cfe24adb6b38",
      "parents": [
        "1f8109ac29c6222fea2f02ffd487701de29e2355",
        "7f7f488bc385dd707a3a6d8dae7859bbe72182e5"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Mon Sep 21 23:52:43 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Sep 21 23:52:43 2020 +0000"
      },
      "message": "Merge \"Bionic: Enable Train UCA for updated QEMU and libvirt\""
    },
    {
      "commit": "1f8109ac29c6222fea2f02ffd487701de29e2355",
      "tree": "6571907199e36523b390777befed1a711cac2646",
      "parents": [
        "a7252cc0f4cd7af1b47a97ce4621a2055bc9da73",
        "f0c12bd4b54eec793cd73e0bf4d07dc2d7fee4ea"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Sat Sep 19 11:36:12 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sat Sep 19 11:36:12 2020 +0000"
      },
      "message": "Merge \"Further py2 cleanup for Fedora\""
    },
    {
      "commit": "7f7f488bc385dd707a3a6d8dae7859bbe72182e5",
      "tree": "a31ccce0d9114ac51f9ac80e79ed252dca2757cc",
      "parents": [
        "a7252cc0f4cd7af1b47a97ce4621a2055bc9da73"
      ],
      "author": {
        "name": "Lee Yarwood",
        "email": "lyarwood@redhat.com",
        "time": "Thu Aug 20 09:27:01 2020 +0100"
      },
      "committer": {
        "name": "Lee Yarwood",
        "email": "lyarwood@redhat.com",
        "time": "Thu Sep 17 17:47:21 2020 +0100"
      },
      "message": "Bionic: Enable Train UCA for updated QEMU and libvirt\n\nThis is will allow the openstack/nova project to facilitate a minimum\nrequired version bump of QEMU and libvirt within the libvirt virt driver\nin I8e349849db0b1a540d295c903f1470917b82fd97 ahead of the planned switch\nto focal later in Victoria.\n\nChange-Id: I85eb45632ff229676f7c29708f4a7cc64b3d90e3\n"
    },
    {
      "commit": "68d639f4d613eba8c7a65ea81f091a9ad61f114b",
      "tree": "0489377c8056793ee08bfaab5e5b9beac3c56eeb",
      "parents": [
        "ae21b3556ff215c0f73bc0ebbc90d72fa59a3459",
        "04fdd8c9eb37a34bb3155bee1f9d21c5dfb0d794"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Wed Sep 16 06:24:38 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Sep 16 06:24:38 2020 +0000"
      },
      "message": "Merge \"Fix propose-updates job\""
    },
    {
      "commit": "f0c12bd4b54eec793cd73e0bf4d07dc2d7fee4ea",
      "tree": "ba0c12428269fdeb585da91cc7768905e82f795e",
      "parents": [
        "b9fe9c74f68f1881c0602748301ec6b68ed508d6"
      ],
      "author": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Wed Jun 24 07:26:35 2020 +0200"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Sat Aug 22 14:06:14 2020 +0200"
      },
      "message": "Further py2 cleanup for Fedora\n\nChange-Id: I2433e2ed067f866751bf49983c0a7efce4be8900\n"
    },
    {
      "commit": "b9fe9c74f68f1881c0602748301ec6b68ed508d6",
      "tree": "dea83cb04f3c732f3a7f6161ee40d2c3ef2ee71e",
      "parents": [
        "5b1d5a99fa875100df042fcae9c8e96383dc1f4b"
      ],
      "author": {
        "name": "Carlos Goncalves",
        "email": "cgoncalves@redhat.com",
        "time": "Thu Aug 20 14:42:55 2020 +0200"
      },
      "committer": {
        "name": "Carlos Goncalves",
        "email": "cgoncalves@redhat.com",
        "time": "Thu Aug 20 15:15:10 2020 +0200"
      },
      "message": "Make PyYAML overridable on Red Hat family distros\n\nThis patch fixes an early stack issue where the following error message\nwould be presented:\n\nERROR: Cannot uninstall \u0027PyYAML\u0027. It is a distutils installed project\nand thus we cannot accurately determine which files belong to it which\nwould lead to only a partial uninstall.\n\nWe also drop references to removal of Python 2 library egg infos now\nthat Python 2 is EOL.\n\nCloses-Bug: #1892363\nChange-Id: I2876ee58ab6b73682869d6b4e684e10ac5e56ad9\n"
    },
    {
      "commit": "04fdd8c9eb37a34bb3155bee1f9d21c5dfb0d794",
      "tree": "2ce5728946f3bc78d3f16389d2f1aec2df50d7ca",
      "parents": [
        "647fef0b405deea635a710c124d508a59e6d1119"
      ],
      "author": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Sun Aug 02 13:13:00 2020 +0200"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Sun Aug 02 13:13:00 2020 +0200"
      },
      "message": "Fix propose-updates job\n\nWe need to use python3, our deps are no longer installed in python.\n\nIncludes the current set of updates to the plugin registry.\n\nChange-Id: I4753ddf60ed066cc11fa74dbbd63210dbad733a8\n"
    },
    {
      "commit": "f8dbfd394a826779f3af403fd5316b9d86492802",
      "tree": "c84cc22ba5747eab1ad7ba632d120affd4979619",
      "parents": [
        "105b2f4ee5f4eb3a6fc00fa3385b6e6ee3aba8c1"
      ],
      "author": {
        "name": "Abhishek Kekane",
        "email": "akekane@redhat.com",
        "time": "Mon Jul 06 18:42:30 2020 +0000"
      },
      "committer": {
        "name": "Ghanshyam Mann",
        "email": "gmann@ghanshyammann.com",
        "time": "Mon Jul 06 14:01:08 2020 -0500"
      },
      "message": "Revert \"Drop keystone dedicated ports\"\n\nThis reverts commit f6286cb586eb1f861866bfdf85c4f873c79fd592.\n\nThis patch is blocking glance as it needs mod_wsgi to perform new import workflow.\n\nChange-Id: I4475247dfe986114d37678b3d3d552c0c7d02ddc\n"
    },
    {
      "commit": "d7a82f41e469fc51fb021184c1fa6c98da428411",
      "tree": "8b0efcf039e29af25b4c70f7a842ae3b44cfbda6",
      "parents": [
        "f6286cb586eb1f861866bfdf85c4f873c79fd592"
      ],
      "author": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Tue Jun 23 10:21:09 2020 +0200"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Fri Jun 26 15:27:32 2020 +0200"
      },
      "message": "Drop support for python2\n\npython2 is EOL, let\u0027s move on and only support python3.\n\nChange-Id: Ieffda4edea9cc19484c04420ed703f7141ef9f15\n"
    },
    {
      "commit": "f6286cb586eb1f861866bfdf85c4f873c79fd592",
      "tree": "348f349361c56961202a8eff6efb6964d9e6d5c0",
      "parents": [
        "32c00890ed5f296ccb829196accfb437dbed8f6f"
      ],
      "author": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Sat Jun 13 11:40:09 2020 +0200"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Fri Jun 26 15:26:22 2020 +0200"
      },
      "message": "Drop keystone dedicated ports\n\nThose historic references to port 5000 and 35357 aren\u0027t being used\nanymore for some time, so let us drop them.\n\nClean up some python2/3 wording along the way.\n\nNo longer mention Identity API v2, which is also a thing of the past.\n\nChange-Id: Iafff097eee082f24ea2ae27ad038ad115aa36c61\n"
    },
    {
      "commit": "f1ed7c77c50ac28cb58c9f7ed885c6a3e0a75403",
      "tree": "e266d726c846b032bc55553e37a31afb3538fad2",
      "parents": [
        "c2c2b6b415a4289ab740e7506f68e820ecbc5818"
      ],
      "author": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Thu Jun 11 05:51:26 2020 +0000"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Tue Jun 23 08:02:52 2020 +0200"
      },
      "message": "Use python3 pip module instead of pip binary\n\nFocal only provides a pip3 binary, no pip3.8. Instead of working around\nthat with a symlink, use the module instead.\n\nAdd version information output for this variant.\n\nChange-Id: I7af194ecc40e4d43c10ce067a661bb6ab4ca37d4\n"
    },
    {
      "commit": "4f2a6171056f9dc3adaaf6752f559bd95a586428",
      "tree": "27da1a94db0b5ac248e7afca71e9d260396c9634",
      "parents": [
        "d6a8784041e0e9bfad3e0112de2e5f7b317287a9"
      ],
      "author": {
        "name": "Hervé Beraud",
        "email": "hberaud@redhat.com",
        "time": "Tue Jun 02 20:10:56 2020 +0200"
      },
      "committer": {
        "name": "Hervé Beraud",
        "email": "hberaud@redhat.com",
        "time": "Tue Jun 02 20:10:56 2020 +0200"
      },
      "message": "Stop to use the __future__ module.\n\nThe __future__ module [1] was used in this context to ensure compatibility\nbetween python 2 and python 3.\n\nWe previously dropped the support of python 2.7 [2] and now we only support\npython 3 so we don\u0027t need to continue to use this module and the imports\nlisted below.\n\nImports commonly used and their related PEPs:\n- `division` is related to PEP 238 [3]\n- `print_function` is related to PEP 3105 [4]\n- `unicode_literals` is related to PEP 3112 [5]\n- `with_statement` is related to PEP 343 [6]\n- `absolute_import` is related to PEP 328 [7]\n\n[1] https://docs.python.org/3/library/__future__.html\n[2] https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html\n[3] https://www.python.org/dev/peps/pep-0238\n[4] https://www.python.org/dev/peps/pep-3105\n[5] https://www.python.org/dev/peps/pep-3112\n[6] https://www.python.org/dev/peps/pep-0343\n[7] https://www.python.org/dev/peps/pep-0328\n\nChange-Id: Icf8bd00b271f44b6bb0c932d6d49fe6de8a22537\n"
    },
    {
      "commit": "782efb0f8a0b6c64e5b6a317ff5bf905e51da850",
      "tree": "9677e670892450c69d75fba4c1ec9ae21f81bbae",
      "parents": [
        "53c2f6fe23318d16f311fde58901ad12e37049a0"
      ],
      "author": {
        "name": "Colleen Murphy",
        "email": "colleen.murphy@suse.com",
        "time": "Mon May 11 18:28:32 2020 -0700"
      },
      "committer": {
        "name": "Colleen Murphy",
        "email": "colleen.murphy@suse.com",
        "time": "Mon May 11 18:28:32 2020 -0700"
      },
      "message": "Fix pip distro package removal for focal\n\nUbuntu Focal doesn\u0027t have python-pip, only python3-pip. Trying to\nuninstall a package that apt doesn\u0027t know about (installed or\nuninstalled) results in a nonzero exit code so devstack fails. This\npatch makes the package removal safer for both python2 and python3 cases\nby checking first if the package exists.\n\nChange-Id: I3b1118888cb0617ffb99b72c7e9a32308033783e\n"
    },
    {
      "commit": "1147300b9c572a19cf4c70ad3ba1fab7ccb965cc",
      "tree": "c2bccf71a4adeedc19e2478b4fc9573ca5795a0a",
      "parents": [
        "773fd20dd9f9b93fcf78098e451d601f852646f7"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Thu Apr 30 10:09:47 2020 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Thu Apr 30 10:09:47 2020 +1000"
      },
      "message": "Remove bridge-utils/brctl usage\n\nThis package isn\u0027t available on some distributions hasn\u0027t been\nrequired in Neutron for several years\nIf679e79fa3242ee1cd8610b5525deca35b41c87e.  Remove it.\n\nChange-Id: I7308a885c1d084efe2f0b9f542443d35966140ed\n"
    },
    {
      "commit": "01826e1c5b65e8d9c88b4f195bb688137b28c0c5",
      "tree": "c0dcdd53eec3c9c26eef5d45cdf6a18392d37042",
      "parents": [
        "fdceb69319b0c0414a4088bce555d16abd317365",
        "1587ba1bd59fe0115c273ee2382bf627fce937a3"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Thu Apr 09 16:00:35 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Apr 09 16:00:35 2020 +0000"
      },
      "message": "Merge \"Remove fixup_virtualenv\""
    },
    {
      "commit": "497caf015729d451428d5b608853741689f153b3",
      "tree": "900e57ae940da6eed997796ed316b7d2b883d65a",
      "parents": [
        "f4ab2ce5645aba422c1a0f1600736782383ca874"
      ],
      "author": {
        "name": "Colleen Murphy",
        "email": "colleen.murphy@suse.com",
        "time": "Fri Apr 03 10:14:07 2020 -0700"
      },
      "committer": {
        "name": "Colleen Murphy",
        "email": "colleen.murphy@suse.com",
        "time": "Fri Apr 03 10:14:07 2020 -0700"
      },
      "message": "Fix opensuse trusted certificates\n\nThere\u0027s a bug[1] with the combination of the p11-kit and\nca-certificates-mozilla packages available on the latest built\nopensuse-15 node in nodepool (which has not been rebuilt for weeks due\nto a separate issue[2]) which causes the standard CA bundle to not be\ninstalled correctly and causes jobs that call to external HTTPS services\nto fail. Upgrading both packages in sync fixes the issue.\n\n[1] https://bugzilla.suse.com/show_bug.cgi?id\u003d1154871\n[2] http://bugzilla.suse.com/show_bug.cgi?id\u003d1166139\n\nChange-Id: Ia8fdfe12fd9089e178adcb2b5eec997eebada262\nNeeded-by: https://review.opendev.org/713566\n"
    },
    {
      "commit": "1587ba1bd59fe0115c273ee2382bf627fce937a3",
      "tree": "3f7a3772fa583a0ee9a679f2aa1711f0a32bfb79",
      "parents": [
        "be26306b4ab470e65cc93305453d2945aa33bf78"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Thu Mar 12 15:13:37 2020 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Fri Apr 03 09:36:01 2020 +1100"
      },
      "message": "Remove fixup_virtualenv\n\nThis first came in with Id749c37ab7fefa96b35f11816b56b9def5ef4b08.  It\ntalks about ancient versions of pip; can\u0027t see we need it any more.\n\nChange-Id: I9d4831955070990a81a809d988612d9d5b1aa672\n"
    },
    {
      "commit": "8d4ae4ffc4a351a72a24bdf5fe6f7ac17445985a",
      "tree": "e74b4e35683fcc127ecf53f605cd6dc4240159a7",
      "parents": [
        "60a2a89232dfcd5208d606193fbbe1d5cc2c91a4"
      ],
      "author": {
        "name": "LuyaoZhong",
        "email": "luyao.zhong@intel.com",
        "time": "Wed Feb 19 08:16:03 2020 +0000"
      },
      "committer": {
        "name": "LuyaoZhong",
        "email": "luyao.zhong@intel.com",
        "time": "Wed Feb 19 08:37:45 2020 +0000"
      },
      "message": "bug-fix: \u0027bytes\u0027 type in python3 cause command fail\n\n\u0027str\u0027 type in python2 is \u0027bytes\u0027 type in python3,\nwhen use python3, we will get a prefix \u0027b\u0027:\n\nsudo ip netns exec b\u0027qrouter-39cc2b45-a27c-49c5-94a6-26443a49ac63\u0027 ip\nneigh\n--------------------------------------------------------------------------\n*** Failed to run \u0027sudo ip netns exec\nb\u0027qrouter-39cc2b45-a27c-49c5-94a6-26443a49ac63\u0027 ip neigh\u0027: Command \u0027sudo\nip netns exec b\u0027qrouter-39cc2b45-a27c-49c5-94a6-26443a49ac63\u0027 ip neigh\u0027\nreturned non-zero exit status 1.\n\nThe message above is raised by running tools/worlddump.py with python3.\n\nChange-Id: Ic254af86fa27729839f00c0ad4a5bbbc9e545a09\n"
    },
    {
      "commit": "21a10d3499abd6e9cd1950b3615502bef5ad6b45",
      "tree": "38757a10e8e7c5c46ee3784cf2c509b82150f6ca",
      "parents": [
        "2dcbc28abab7eb51b9e3fd549fab49d42c48e90f"
      ],
      "author": {
        "name": "Federico Ressi",
        "email": "fressi@redhat.com",
        "time": "Fri Jan 31 07:43:30 2020 +0100"
      },
      "committer": {
        "name": "Radosław Piliszek",
        "email": "radoslaw.piliszek@gmail.com",
        "time": "Mon Feb 17 17:03:47 2020 +0000"
      },
      "message": "Use python3 as default python command\n\nAfter Python 2 is getting unsupported, new distros\nlike CentOS 8 and RHEL8 have stopped providing \u0027python\u0027\npackage forcing user to decide which alternative to\nuse by installing \u0027python2\u0027 or \u0027python3.x\u0027 package\nand then setting python alternative.\n\nThis change is intended to make using python3 command as\nmuch as possible and use it as default \u0027python\u0027 alternative\nwhere needed.\n\nThe final goals motivating this change are:\n - stop using python2 as much as possible\n - help adding support for CentOS 8 and RHEL8\n\nChange-Id: I1e90db987c0bfa6206c211e066be03ea8738ad3f\n"
    },
    {
      "commit": "fdd631d27a34a02022d223d28c8d269c6f03123e",
      "tree": "bf732559c1193f985fee55463475f1727e0bdaf0",
      "parents": [
        "38f5d0b856ca12934e1bbc219b9e0936769c0dcb",
        "3555b48ff45a109e6456923d597fa174084387ab"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Fri Jan 31 05:57:23 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Jan 31 05:57:23 2020 +0000"
      },
      "message": "Merge \"Switch to python3 for memory_peak service\""
    },
    {
      "commit": "7611d3dfd2e1f68bf11027756fd5b217d5ae9640",
      "tree": "48c869c06fdb785fc6060e7a78189f4e8057ba63",
      "parents": [
        "455be66098353b08dabf38ec7256998de89ac755"
      ],
      "author": {
        "name": "Carlos Camacho",
        "email": "ccamacho@redhat.com",
        "time": "Thu Jan 30 14:39:51 2020 +0100"
      },
      "committer": {
        "name": "Carlos Camacho",
        "email": "ccamacho@redhat.com",
        "time": "Thu Jan 30 14:41:14 2020 +0100"
      },
      "message": "Add -r option when removing egg-info files/folders\n\nWe are hitting this error:\n+ tools/fixup_stuff.sh:fixup_ubuntu:82 :\n    sudo rm -f /usr/lib/python3/dist-packages/httplib2-0.11.3.egg-info\nrm: cannot remove\n    \u0027/usr/lib/python3/dist-packages/httplib2-0.11.3.egg-info\u0027: Is a directory\n\nThis patch adds the -r option to allow removing folders.\n\nChange-Id: Ib7bb8b0a3dcf747bcc06da1a2fb17fa9d8808484\n"
    },
    {
      "commit": "3555b48ff45a109e6456923d597fa174084387ab",
      "tree": "792d506793a5a748ac0f1a13eaef6364a6fcab68",
      "parents": [
        "455be66098353b08dabf38ec7256998de89ac755"
      ],
      "author": {
        "name": "Federico Ressi",
        "email": "fressi@redhat.com",
        "time": "Fri Jan 24 06:49:03 2020 +0100"
      },
      "committer": {
        "name": "Federico Ressi",
        "email": "fressi@redhat.com",
        "time": "Thu Jan 30 12:35:34 2020 +0000"
      },
      "message": "Switch to python3 for memory_peak service\n\nWhen starting \u0027memory_peak\u0027 service is using python command instead of\npython3, while psutil (required package) is most probably being\ninstalled into the python3 environment (as we are dropping python2.7\nsupport).\n\nCloses-Bug: #1860753\nChange-Id: Ia2b7e2e33d784560443131e2965f520b361a54e3\n"
    },
    {
      "commit": "e727dd56821231677e398133a3f991dcc3931ff4",
      "tree": "2bb92f936d05a2938ae0ab2733011c5c1648143b",
      "parents": [
        "761663dbfbddad4bc11d03e71e514c0f43c15668"
      ],
      "author": {
        "name": "Witek Bedyk",
        "email": "witold.bedyk@suse.com",
        "time": "Mon Jan 27 16:00:12 2020 +0100"
      },
      "committer": {
        "name": "Witek Bedyk",
        "email": "witold.bedyk@suse.com",
        "time": "Mon Jan 27 17:11:23 2020 +0100"
      },
      "message": "Remove conflicting packages in Ubuntu\n\nFollowing packages conflict with pip installed versions:\n* httplib2\n* pyasn1-modules\n\nChange-Id: Ic4f70f839765e67394509cc543560aac7f50e287\n"
    },
    {
      "commit": "4dc02f97e7a750bf97ec71ce7fedd49e96dc5bdb",
      "tree": "0c53771d78ee2da3c710401af8ef8ded7468b74e",
      "parents": [
        "f9a6986b90f896f2c0d122ae2572411f9c13f506"
      ],
      "author": {
        "name": "Witek Bedyk",
        "email": "witold.bedyk@suse.com",
        "time": "Fri Jan 24 18:52:25 2020 +0100"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Sun Jan 26 09:41:57 2020 +0000"
      },
      "message": "Remove fixup_python_packages\n\nThe hack has be around for pip 1.4.1 and older. It should be safe to\nremove it by now. In fact it causes problems in my Ubutu Bionic VM when\ntrying to overwrite httplib2 library installed from the distro package.\n\nChange-Id: I34b826f4e8f10f8d44b888120f19fcc7ba501b3d\n"
    },
    {
      "commit": "6a4c74dda8ea71171c730ac847d0723bd9fd1524",
      "tree": "22b12588531d6e2ef55813b4d709371b7626c7f5",
      "parents": [
        "e18325ca67dcb70b01a29563432291e1baf9f46e",
        "afd346a0a10d016e6ab95bdba3932eb6df8f636b"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Thu Jan 23 13:56:04 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Jan 23 13:56:04 2020 +0000"
      },
      "message": "Merge \"devstack-plugins-list: skip openstack/openstack\""
    },
    {
      "commit": "afd346a0a10d016e6ab95bdba3932eb6df8f636b",
      "tree": "40417cb33b8a5ea80014a4746037c415198b7f44",
      "parents": [
        "f483e85a8730754ec724919bfb638402fb749b63"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Thu Jan 23 13:13:05 2020 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Thu Jan 23 13:13:05 2020 +1100"
      },
      "message": "devstack-plugins-list: skip openstack/openstack\n\nThe proposal job to update the plugin list has been failing for a long\ntime as it gets a 500 error from gitea on the openstack/openstack\nrepo.  This is an odd \"superrepo\" with all projects as submodules;\nthus openstack/openstack/devstack is actually a project, not the\ndirectory with a plugin in it.\n\nSkip this repo (gitea shouldn\u0027t return a 500, but that\u0027s another\nthing...)\n\nRegenerate the list manually for this run.\n\nChange-Id: I6ed65bcb720d4cb10702cbf66106120e001ec35f\n"
    },
    {
      "commit": "e18325ca67dcb70b01a29563432291e1baf9f46e",
      "tree": "e9972150de6ab0c50a5515636b2bdce6a18f4f16",
      "parents": [
        "2e45f2c267c9ababdbdfc4c505b329398391c5f9"
      ],
      "author": {
        "name": "Dr. Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Wed Jan 22 05:54:06 2020 +0000"
      },
      "committer": {
        "name": "Dr. Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Wed Jan 22 13:37:11 2020 +0000"
      },
      "message": "Fix pip uncap fallout for nova and barbican\n\nNeed to make PyYAML overridable on Ubuntu, it is a dependency for e.g.\ncloud-init, so we cannot remove it.\n\nDepends-On: https://review.opendev.org/703792\nChange-Id: I4423dfb2c30299903b52a2bb06d846dd487f5b8b\n"
    },
    {
      "commit": "5ae6f5ec37772a0bfcf7f07ce161c5d1628f8ab1",
      "tree": "f639d8734a574086ee9873d9de8b6e27cef2d521",
      "parents": [
        "b9dfa46f0a84015183311f51fab3b026f4596792",
        "279a7589b03db69fd1b85d947cd0171dacef94ee"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Tue Jan 21 18:36:06 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jan 21 18:36:06 2020 +0000"
      },
      "message": "Merge \"Revert \"Do not use pip 10 or higher\"\""
    },
    {
      "commit": "2e6677869925c86c01cae883b3dde6cccad81d30",
      "tree": "de656a3baa337139d15a13cca00c6201ea75f68e",
      "parents": [
        "b0f87b286645ff20ed0bdde5443ecdbe4ae0dbd0"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Nov 20 10:41:34 2019 +1100"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Thu Nov 21 18:38:32 2019 +0000"
      },
      "message": "Drop Xenial support\n\nWith the goals of Ussuri being Python 3.6 [1], the python 3.5\nenvironment on Xenial is too old.  Remove testing and the most obvious\nbits of support from devstack.\n\nAlso drop claimed support for artful, which is long EOL.\n\n[1] https://governance.openstack.org/tc/reference/runtimes/ussuri.html\n\nChange-Id: Iefcca99904dde76b34efbbfc0e04515dfa5a09e5\n"
    },
    {
      "commit": "279a7589b03db69fd1b85d947cd0171dacef94ee",
      "tree": "00d473d08d0fbe73f39ab99af0df13d95453cb27",
      "parents": [
        "48b519b5c62be33388b76fd25eebb5673d1e2c18"
      ],
      "author": {
        "name": "Jens Harbott (frickler)",
        "email": "j.harbott@x-ion.de",
        "time": "Mon Apr 16 12:08:30 2018 +0000"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Wed Nov 20 21:02:39 2019 +0000"
      },
      "message": "Revert \"Do not use pip 10 or higher\"\n\nThis reverts commit f99d1771ba1882dfbb69186212a197edae3ef02c.\n\nAdded workarounds that might want to get split into their own patch\nbefore merging:\n\n- Don\u0027t install python-psutil\n- Don\u0027t run peakmem_tracker\n\nChange-Id: If4fb16555e15082a4d97cffdf3cfa608a682997d\n"
    },
    {
      "commit": "da18895162bababea638b3f28c76cb9766e821b6",
      "tree": "7fbd59acd8855e9ad4ffb483a829b76208cbce19",
      "parents": [
        "b461a092c4a9509eabddea8a917a1628984860f9"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "bhaley@redhat.com",
        "time": "Thu Oct 31 14:49:23 2019 -0400"
      },
      "committer": {
        "name": "Brian Haley",
        "email": "bhaley@redhat.com",
        "time": "Wed Nov 06 09:55:47 2019 +0800"
      },
      "message": "Fix brctl calls\n\nSome distros no longer ship brctl, iproute2 should be used\nin its place. The linuxbridge agent plugin script was still\nusing it, as was worlddump, which generates this warning on\na failure:\n\n    Running devstack worlddump.py\n    /bin/sh: 1: brctl: not found\n\nConditionalizing worlddump based on whether brctl is installed\nto make this go away.\n\nChange-Id: Iafbf4038bab08c261d45d117b12d4629ba32d65e\n"
    },
    {
      "commit": "e6f495e2dd550e74ad392f88b67be35fc38b3e0d",
      "tree": "ccea93f77bcb4038d5b19998eaa72d699a9a37dd",
      "parents": [
        "deb3ff50f15bc89921ea548f5b53d49492c5ee65",
        "893817d30af5edded6cae9005ac6f00712fd787d"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Mon Oct 07 10:55:13 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Oct 07 10:55:13 2019 +0000"
      },
      "message": "Merge \"generate-devstack-plugins-list: Retry on opendev.org 500\""
    },
    {
      "commit": "6eb2c5990d738612c4cec34daeb673092303a50a",
      "tree": "3db565d81e9457cc6ad6fdb6e9ff99f420b52e29",
      "parents": [
        "e3cd502252a52c10007a7a39b98359d97d9cc24a"
      ],
      "author": {
        "name": "Colleen Murphy",
        "email": "colleen.murphy@suse.de",
        "time": "Wed Sep 25 12:51:23 2019 -0700"
      },
      "committer": {
        "name": "Jens Harbott (frickler)",
        "email": "j.harbott@x-ion.de",
        "time": "Thu Sep 26 07:26:27 2019 +0000"
      },
      "message": "Fix six package on opensuse for pip 10\n\nopenSUE Leap 15.0 and 15.1 both provide python3-six version 1.11.0.\nSince version 1.12.0 was released, pip\u003e\u003d10 recognizes the version\ndifference and tries to uninstall the distro-provided version and fails.\nThis change adds another hack to remove the egg-info file for the six\nlibrary so that pip can manage it directly. We also have to wait to\ninstall os-testr until after the fixup has happened since trying to\ninstall it triggers the issue.\n\nChange-Id: I4649abe06b5893a5251bfcdd4234abccde6ceda2\n"
    },
    {
      "commit": "893817d30af5edded6cae9005ac6f00712fd787d",
      "tree": "7fb940557f4bb8131e1f3057d860e2c427b15eb7",
      "parents": [
        "1a46c898db9c16173013d95e2bc954992121077c"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Sep 25 08:30:07 2019 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Sep 25 08:30:07 2019 +1000"
      },
      "message": "generate-devstack-plugins-list: Retry on opendev.org 500\n\nA 500 error from gitea can occasionally show up as a project dropping\ntheir devstack plugin (I543faced83a685d48706d004ae49800abfb89dc5).\n\nTo avoid noise in the proposal jobs, implement a small retry loop for\n500 errors.\n\nChange-Id: Ide23e4de819a2c751d887eeaa7f0b9d0437f8e2c\n"
    },
    {
      "commit": "bfb176579bb9ea407c84b0c3a840a9d04207333b",
      "tree": "8804846ee07ba076b63ff7f0854a434bf8356d8f",
      "parents": [
        "7d2663d44c18c8d435b268765f23d15d92174c73",
        "ce396d374bc00f21671bcdae30e12c44cd1ef1eb"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Fri Sep 13 15:17:18 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Sep 13 15:17:18 2019 +0000"
      },
      "message": "Merge \"Fix worlddump log collection\""
    },
    {
      "commit": "916659374a27a6960dff044462e93f9712d58474",
      "tree": "a30e96a1d4e1d08ff5578805041f584b141fa26f",
      "parents": [
        "951e14d6dd534236e2710a48fb3d86d66f5c0228",
        "6c7337e80ee10ed180df284e492d36fa1f60ebc2"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Fri Sep 13 08:08:26 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Sep 13 08:08:26 2019 +0000"
      },
      "message": "Merge \"Make stop/disable of apparmor work on all SLE systems\""
    },
    {
      "commit": "ce396d374bc00f21671bcdae30e12c44cd1ef1eb",
      "tree": "644ad5c0d18f844410f1db89ecfec438fe7157a7",
      "parents": [
        "650769a3115704aa8af8b346a57838d46b87ba6a"
      ],
      "author": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Thu Sep 05 08:51:33 2019 +0000"
      },
      "committer": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Thu Sep 12 10:21:17 2019 +0000"
      },
      "message": "Fix worlddump log collection\n\nAll credit for figuring this out goes to frickler (and that was the hard\nbit so thank you!). The worlddump files were not being collected because\nthey weren\u0027t in our log collection list. Add worlddump to this list\nso that we collect these files.\n\nOne thing that makes this slightly complicated is the worlddump files\nare named with a timestamp and we can\u0027t have globs in our collection\nlist. To address this we create a copy of the file with a -latest.txt\nsuffix. This gives us a deterministic file name for log collection\nwithout using globs.\n\nNote we do not use a symlink here because some jobs gzip their log files\n(breaking symlinks) and others do not. This makes it painful to always\nhave a valid link. Not having a valid link can break log collection.\n\nHardlinks may be another option but simply making a copy is easier to\nmanage as you don\u0027t have to worry about links preexisting and the\ndumpfiles are not that large.\n\nChange-Id: I96ae5f5290546ad25ca434c1106c01354d2d053c\n"
    },
    {
      "commit": "5406b6f3cceeb3fd3fa8f9f13aa1eb63371a450b",
      "tree": "430ef127a5aa52751aa3c61269182fe3065d7d7a",
      "parents": [
        "3ff4f9ebed14a81a6de8a38926922caf94dc6684",
        "5e2d0e0bb5beffc23087383e7923dabaa2004a98"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.opendev.org",
        "time": "Tue Aug 20 10:41:05 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Aug 20 10:41:05 2019 +0000"
      },
      "message": "Merge \"Permit use of sudo-ldap instead of sudo package\""
    },
    {
      "commit": "8dd89e52d04da2230914deceaee7c4d41e73ccc2",
      "tree": "79e9c9008af28ec54ec290353d45825a4b92de02",
      "parents": [
        "c9abbf5709b04dedde15ca19796908103957f6b2"
      ],
      "author": {
        "name": "Andreas Jaeger",
        "email": "aj@suse.com",
        "time": "Sun Aug 11 16:00:12 2019 +0200"
      },
      "committer": {
        "name": "Andreas Jaeger",
        "email": "aj@suse.com",
        "time": "Sun Aug 11 16:15:34 2019 +0200"
      },
      "message": "Update docs building\n\nSwitch to \"modern\" way of building docs using sphinx-build directly,\nremove now unsed parts from setup.cfg.\n\nUpgrade to openstackdocstheme 1.20 and remove obsolete variables from\nconf.py.\n\nConvert external links to internal RST links so that Sphinx can verify\nthat they are correct.\n\nReplace redirected links with new targets.\n\nUse opendev.org instead of github.com where appropriate.\n\nChange-Id: Iedcc008b170821aa74acefc02ec6a243a0dc307c\n"
    },
    {
      "commit": "6c7337e80ee10ed180df284e492d36fa1f60ebc2",
      "tree": "e06005bee606c5ceba6d99bd61a3225047bdb072",
      "parents": [
        "1f6bea1768c2066f3dd5604aee569ad633f45fbc"
      ],
      "author": {
        "name": "Adam Spiers",
        "email": "aspiers@suse.com",
        "time": "Wed Aug 07 14:34:56 2019 +0100"
      },
      "committer": {
        "name": "Adam Spiers",
        "email": "aspiers@suse.com",
        "time": "Thu Aug 08 12:52:07 2019 +0100"
      },
      "message": "Make stop/disable of apparmor work on all SLE systems\n\nThe existing code to disable apparmor on SUSE systems only worked for\nrecent openSUSE / SLE releases.  On SLE12 (at least), aa-enabled and\naa-teardown are not available, so instead use systemd\u0027s interface for\nstop/disable.  However on newer releases, systemctl stop apparmor is a\nno-op:\n\n    https://www.suse.com/releasenotes/x86_64/SUSE-SLES/15/#fate-325343\n    https://gitlab.com/apparmor/apparmor/merge_requests/81\n    https://build.opensuse.org/package/view_file/openSUSE:Leap:15.2/apparmor/apparmor.service?expand\u003d1\n\nSo we still need to call aa-teardown if it\u0027s available.\n\nChange-Id: I8d99c8d743cc1935324e2e4fcb67efaa5241199e\n"
    }
  ],
  "next": "9ee5347e6956f27dbc01a2526bd08b7f7c48f6c0"
}
