)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":27380,"name":"Boyron Sébastien","email":"sboyron@redhat.com","username":"sboyron"},"change_message_id":"6f7502ef73292ad6a3db3038568808dcf383f1d9","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2020-09-30 09:54:39 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"update python-tripleoclient to 13.7.0"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ie55f48825956922428ec6070c7cbf8706deb19b9"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9f560f44_f3b6b4f9","line":8,"updated":"2020-09-30 06:37:13.000000000","message":"You can let a single ligne empty, then explain the add of new requirements, and give the commit number associated.","commit_id":"0438c2358196a68c0c78acdbf06caf1ee4663a61"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"f5c11b196b1388eff24662ab3a6c261758ba7996","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Add PEP3151 patch to avoid SUSE CI issue catching KeyError"},{"line_number":10,"context_line":"and OSError. [0]"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"[0] https://review.opendev.org/#/c/756720/"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Ie55f48825956922428ec6070c7cbf8706deb19b9"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9f560f44_b66e6f61","line":12,"range":{"start_line":12,"start_character":0,"end_line":12,"end_character":42},"updated":"2020-10-08 15:00:16.000000000","message":"Please add:\n\ndepends-on: #756720/","commit_id":"d0381f6824be9d19f55847bb418efb3ba942fb1d"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"afe5a0afa7312884da4d2cd837c3d929f46548a8","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Add PEP3151 patch to avoid SUSE CI issue catching KeyError"},{"line_number":10,"context_line":"and OSError. [0]"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"[0] https://review.opendev.org/#/c/756720/"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Ie55f48825956922428ec6070c7cbf8706deb19b9"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9f560f44_f6baa7bd","line":12,"range":{"start_line":12,"start_character":0,"end_line":12,"end_character":42},"in_reply_to":"9f560f44_b66e6f61","updated":"2020-10-08 15:01:18.000000000","message":"You can transform this line to ensure that the fix is landed first.","commit_id":"d0381f6824be9d19f55847bb418efb3ba942fb1d"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"f55b9a138ce6f46c45217071ebb8335954e7bf6a","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Add PEP3151 patch to avoid SUSE CI issue catching KeyError"},{"line_number":10,"context_line":"and OSError."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"depends-on: #756720"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Ie55f48825956922428ec6070c7cbf8706deb19b9"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9f560f44_767177de","line":12,"range":{"start_line":12,"start_character":0,"end_line":12,"end_character":19},"updated":"2020-10-08 15:16:38.000000000","message":"Sorry:\n\n```\nDepends-On: https://review.opendev.org/#/c/756720/\n```\n\nc.f https://docs.opendev.org/opendev/infra-manual/latest/developers.html#cross-repository-dependencies","commit_id":"7979eb7241b9ef5e80db90f9f2a047b562a18bfc"}],"openstack/python-tripleoclient/0001-catch-KeyError-and-OSError-PEP3151.patch":[{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"459051e34d1e9fc2ed4612c6ba4814837aaada8f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"diff --git a/tripleoclient/utils.py b/tripleoclient/utils.py"},{"line_number":2,"context_line":"index 42c939c6..63721f91 100644"},{"line_number":3,"context_line":"--- a/tripleoclient/utils.py"},{"line_number":4,"context_line":"+++ b/tripleoclient/utils.py"},{"line_number":5,"context_line":"@@ -589,7 +589,7 @@ def run_ansible_playbook(playbook, inventory, workdir, playbook_dir\u003dNone,"},{"line_number":6,"context_line":"     get_uid \u003d int(os.getenv(\u0027SUDO_UID\u0027, os.getuid()))"},{"line_number":7,"context_line":"     try:"},{"line_number":8,"context_line":"         user_pwd \u003d pwd.getpwuid(get_uid)"},{"line_number":9,"context_line":"-    except TypeError:"},{"line_number":10,"context_line":"+    except (KeyError, TypeError):"},{"line_number":11,"context_line":"         home \u003d constants.CLOUD_HOME_DIR"},{"line_number":12,"context_line":"     else:"},{"line_number":13,"context_line":"         home \u003d user_pwd.pw_dir"},{"line_number":14,"context_line":"diff --git a/tripleoclient/v1/overcloud_netenv_validate.py b/tripleoclient/v1/overcloud_netenv_validate.py"},{"line_number":15,"context_line":"index cd06acf9..15f1b038 100644"},{"line_number":16,"context_line":"--- a/tripleoclient/v1/overcloud_netenv_validate.py"},{"line_number":17,"context_line":"+++ b/tripleoclient/v1/overcloud_netenv_validate.py"},{"line_number":18,"context_line":"@@ -163,7 +163,7 @@ class ValidateOvercloudNetenv(command.Command):"},{"line_number":19,"context_line":"         try:"},{"line_number":20,"context_line":"             with open(path, \u0027r\u0027) as nic_file:"},{"line_number":21,"context_line":"                 nic_data \u003d yaml.safe_load(nic_file)"},{"line_number":22,"context_line":"-        except IOError:"},{"line_number":23,"context_line":"+        except (IOError, OSError):"},{"line_number":24,"context_line":"             self.log.error("},{"line_number":25,"context_line":"                 \u0027The resource \"%s\" reference file does not exist: \"%s\"\u0027,"},{"line_number":26,"context_line":"                 resource, path)"}],"source_content_type":"text/x-diff","patch_set":10,"id":"9f560f44_d18b2d66","line":26,"range":{"start_line":1,"start_character":0,"end_line":26,"end_character":32},"updated":"2020-10-08 15:28:17.000000000","message":"Please prefer to use the official corresponding patch:\n\n```\nFrom 41d43e1ab71f2270341c9c29ecbae7eec4465030 Mon Sep 17 00:00:00 2001\nFrom: Sébastien Boyron \u003csboyron@redhat.com\u003e\nDate: Thu, 08 Oct 2020 16:19:39 +0200\nSubject: [PATCH] Add catch for OSError and KeyError (PEP\t3151)\n\nDuring RPM packaging SUSE CI where raising KeyError and\nOSError [0].\n\n[0] https://review.opendev.org/755159\n\nChange-Id: I47e25d3c70183e7617e42ac83a55f3d6e4f7a70f\n---\n\ndiff --git a/tripleoclient/utils.py b/tripleoclient/utils.py\nindex 677e2bf..6955d4a 100644\n--- a/tripleoclient/utils.py\n+++ b/tripleoclient/utils.py\n@@ -592,7 +592,7 @@\n     get_uid \u003d int(os.getenv(\u0027SUDO_UID\u0027, os.getuid()))\n     try:\n         user_pwd \u003d pwd.getpwuid(get_uid)\n-    except TypeError:\n+    except (KeyError, TypeError):\n         home \u003d constants.CLOUD_HOME_DIR\n     else:\n         home \u003d user_pwd.pw_dir\ndiff --git a/tripleoclient/v1/overcloud_netenv_validate.py b/tripleoclient/v1/overcloud_netenv_validate.py\nindex cd06acf..15f1b03 100644\n--- a/tripleoclient/v1/overcloud_netenv_validate.py\n+++ b/tripleoclient/v1/overcloud_netenv_validate.py\n@@ -163,7 +163,7 @@\n         try:\n             with open(path, \u0027r\u0027) as nic_file:\n                 nic_data \u003d yaml.safe_load(nic_file)\n-        except IOError:\n+        except (IOError, OSError):\n             self.log.error(\n                 \u0027The resource \"%s\" reference file does not exist: \"%s\"\u0027,\n                 resource, path)\n```","commit_id":"e8546ac156b7e08fbb03f303208a4d32cd0c8bf0"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"501312a040b9977982ba2268e9c26a7efe6b1483","unresolved":false,"context_lines":[{"line_number":1,"context_line":"diff --git a/tripleoclient/utils.py b/tripleoclient/utils.py"},{"line_number":2,"context_line":"index 42c939c6..63721f91 100644"},{"line_number":3,"context_line":"--- a/tripleoclient/utils.py"},{"line_number":4,"context_line":"+++ b/tripleoclient/utils.py"},{"line_number":5,"context_line":"@@ -589,7 +589,7 @@ def run_ansible_playbook(playbook, inventory, workdir, playbook_dir\u003dNone,"},{"line_number":6,"context_line":"     get_uid \u003d int(os.getenv(\u0027SUDO_UID\u0027, os.getuid()))"},{"line_number":7,"context_line":"     try:"},{"line_number":8,"context_line":"         user_pwd \u003d pwd.getpwuid(get_uid)"},{"line_number":9,"context_line":"-    except TypeError:"},{"line_number":10,"context_line":"+    except (KeyError, TypeError):"},{"line_number":11,"context_line":"         home \u003d constants.CLOUD_HOME_DIR"},{"line_number":12,"context_line":"     else:"},{"line_number":13,"context_line":"         home \u003d user_pwd.pw_dir"},{"line_number":14,"context_line":"diff --git a/tripleoclient/v1/overcloud_netenv_validate.py b/tripleoclient/v1/overcloud_netenv_validate.py"},{"line_number":15,"context_line":"index cd06acf9..15f1b038 100644"},{"line_number":16,"context_line":"--- a/tripleoclient/v1/overcloud_netenv_validate.py"},{"line_number":17,"context_line":"+++ b/tripleoclient/v1/overcloud_netenv_validate.py"},{"line_number":18,"context_line":"@@ -163,7 +163,7 @@ class ValidateOvercloudNetenv(command.Command):"},{"line_number":19,"context_line":"         try:"},{"line_number":20,"context_line":"             with open(path, \u0027r\u0027) as nic_file:"},{"line_number":21,"context_line":"                 nic_data \u003d yaml.safe_load(nic_file)"},{"line_number":22,"context_line":"-        except IOError:"},{"line_number":23,"context_line":"+        except (IOError, OSError):"},{"line_number":24,"context_line":"             self.log.error("},{"line_number":25,"context_line":"                 \u0027The resource \"%s\" reference file does not exist: \"%s\"\u0027,"},{"line_number":26,"context_line":"                 resource, path)"}],"source_content_type":"text/x-diff","patch_set":10,"id":"9f560f44_51ed5d22","line":26,"range":{"start_line":1,"start_character":0,"end_line":26,"end_character":32},"in_reply_to":"9f560f44_d18b2d66","updated":"2020-10-08 15:29:05.000000000","message":"https://review.opendev.org/changes/756720/revisions/41d43e1ab71f2270341c9c29ecbae7eec4465030/patch?zip","commit_id":"e8546ac156b7e08fbb03f303208a4d32cd0c8bf0"}],"openstack/python-tripleoclient/python-tripleoclient.spec.j2":[{"author":{"_account_id":27380,"name":"Boyron Sébastien","email":"sboyron@redhat.com","username":"sboyron"},"change_message_id":"6f7502ef73292ad6a3db3038568808dcf383f1d9","unresolved":false,"context_lines":[{"line_number":61,"context_line":"Requires:       {{ py3(\u0027simplejson\u0027) }}"},{"line_number":62,"context_line":"Requires:       {{ py3(\u0027six\u0027) }}"},{"line_number":63,"context_line":"Requires:       {{ py3(\u0027websocket-client\u0027) }}"},{"line_number":64,"context_line":"Requires:       {{ py3(\u0027python-zaqarclient\u0027) }}"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"%description -n python3-tripleoclient"},{"line_number":67,"context_line":"python-tripleoclient is a Python plugin to OpenstackClient"}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"9f560f44_93ec98f5","line":64,"updated":"2020-09-30 06:37:13.000000000","message":"You may have to add : \n\n  Requires:       {{ py3(\u0027ansible-runner\u0027) }}\n\nThis new requirement comes from :\n https://github.com/openstack/python-tripleoclient/commit/bcc9c667471e832739c20ae06b8325ef95a5e56b\n\nTo investigate this, you can find this issue here :\nhttps://logserver.rdoproject.org/59/755159/1/openstack-check-rdo/DLRN-rpmbuild-rpm-packaging-centos-8/fc5f96b/job-output.txt\nby searching for ModuleNotFoundError.","commit_id":"0438c2358196a68c0c78acdbf06caf1ee4663a61"},{"author":{"_account_id":13294,"name":"Javier Peña","email":"jpena@redhat.com","username":"jpena"},"change_message_id":"ac97420e4dc73a6e41a77ccc7cfd492f774a034a","unresolved":false,"context_lines":[{"line_number":14,"context_line":"Group:          Development/Languages/Python"},{"line_number":15,"context_line":"URL:            https://launchpad.net/{{ pypi_name }}"},{"line_number":16,"context_line":"Source0:        {{ source }}"},{"line_number":17,"context_line":"Patch0:         0001-catch-KeyError-and-OSError-PEP3151.patch"},{"line_number":18,"context_line":"BuildRequires:  {{ py3(\u0027ansible-runner\u0027) }}"},{"line_number":19,"context_line":"BuildRequires:  openstack-macros"},{"line_number":20,"context_line":"BuildRequires:  {{ py2pkg(\u0027tripleo-common\u0027) }}"}],"source_content_type":"text/x-jinja2","patch_set":10,"id":"9f560f44_51039d0c","line":17,"updated":"2020-10-08 15:20:22.000000000","message":"Could you include the review as a comment above? That will help us as a reminder in the future, when a new release includes the commit.","commit_id":"e8546ac156b7e08fbb03f303208a4d32cd0c8bf0"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"e4a20d79c480cb751aa12f35744d61de0cf691a8","unresolved":false,"context_lines":[{"line_number":14,"context_line":"Group:          Development/Languages/Python"},{"line_number":15,"context_line":"URL:            https://launchpad.net/{{ pypi_name }}"},{"line_number":16,"context_line":"Source0:        {{ source }}"},{"line_number":17,"context_line":"Patch0:         0001-catch-KeyError-and-OSError-PEP3151.patch"},{"line_number":18,"context_line":"BuildRequires:  {{ py3(\u0027ansible-runner\u0027) }}"},{"line_number":19,"context_line":"BuildRequires:  openstack-macros"},{"line_number":20,"context_line":"BuildRequires:  {{ py2pkg(\u0027tripleo-common\u0027) }}"}],"source_content_type":"text/x-jinja2","patch_set":10,"id":"9f560f44_d15ded16","line":17,"in_reply_to":"9f560f44_51039d0c","updated":"2020-10-08 15:24:59.000000000","message":"Agreed\n\nIt could be worth to put the context here too and the fix\u0027s link https://review.opendev.org/#/c/756720/","commit_id":"e8546ac156b7e08fbb03f303208a4d32cd0c8bf0"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"691de5ba7ff39b818bd9766d17e2972b8081b9a6","unresolved":false,"context_lines":[{"line_number":15,"context_line":"URL:            https://launchpad.net/{{ pypi_name }}"},{"line_number":16,"context_line":"Source0:        {{ source }}"},{"line_number":17,"context_line":"# Patch added due to SUSE CI error due to PEP3151 must be removed"},{"line_number":18,"context_line":"# when tps://review.opendev.org/#/c/756720/ will be released"},{"line_number":19,"context_line":"Patch0:         0001-catch-KeyError-and-OSError-PEP3151.patch"},{"line_number":20,"context_line":"BuildRequires:  {{ py3(\u0027ansible-runner\u0027) }}"},{"line_number":21,"context_line":"BuildRequires:  openstack-macros"}],"source_content_type":"text/x-jinja2","patch_set":12,"id":"9f560f44_f1911148","line":18,"range":{"start_line":18,"start_character":7,"end_line":18,"end_character":10},"updated":"2020-10-08 15:47:25.000000000","message":"typo","commit_id":"21a83f208ddf852fe94c70c188892538e307ce9c"}]}
