)]}'
{"id":"openstack%2Fpython-openstackclient~531201","triplet_id":"openstack%2Fpython-openstackclient~master~I016a60462ba586f9fa7585c2cfafffd7be38de7b","project":"openstack/python-openstackclient","branch":"master","topic":"bug/1741223","hashtags":[],"change_id":"I016a60462ba586f9fa7585c2cfafffd7be38de7b","subject":"Check that Glance returns image data before processing it","status":"MERGED","created":"2018-01-04 17:06:25.000000000","updated":"2018-01-22 17:56:29.000000000","submitted":"2018-01-22 17:56:29.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"531201-1516643789636-bc0d53ac","meta_rev_id":"76fb51c3032f057cb6bdafec7d50fc37432cd2aa","_number":531201,"virtual_id_number":531201,"owner":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"value":0,"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},{"value":0,"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},{"value":0,"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},{"value":0,"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},{"value":0,"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":2,"date":"2018-01-22 17:56:29.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"all":[{"value":2,"date":"2018-01-05 18:53:13.000000000","_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"value":0,"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},{"value":0,"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},{"value":1,"date":"2018-01-08 03:42:04.000000000","permitted_voting_range":{"min":1,"max":2},"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},{"value":0,"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},{"value":2,"date":"2018-01-22 15:22:08.000000000","_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2018-01-09 10:00:19.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"all":[{"value":0,"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"value":0,"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},{"value":0,"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},{"value":0,"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},{"value":0,"date":"2018-01-08 04:02:09.000000000","_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},{"value":1,"date":"2018-01-22 15:22:08.000000000","_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2018-01-05 11:18:06.000000000","updated_by":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"reviewer":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"state":"REVIEWER"},{"updated":"2018-01-05 11:18:14.000000000","updated_by":{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},"reviewer":{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},"state":"REVIEWER"},{"updated":"2018-01-05 18:53:13.000000000","updated_by":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"reviewer":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"state":"REVIEWER"},{"updated":"2018-01-08 03:42:04.000000000","updated_by":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"reviewer":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"state":"REVIEWER"},{"updated":"2018-01-08 04:02:09.000000000","updated_by":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"reviewer":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"state":"REVIEWER"},{"updated":"2018-01-22 15:22:08.000000000","updated_by":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"reviewer":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"state":"REVIEWER"},{"updated":"2018-01-22 17:56:29.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"8f40c8db08279f5d1023a70c1ba2b46ca2b6d1e7","author":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"date":"2018-01-04 17:06:25.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"e8e82a7a31075db1d7734ce6141005d0d08c3043","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-01-04 19:24:35.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/01/531201/1/check/openstack-tox-pep8/098c2b6/ : SUCCESS in 4m 42s\n- openstack-tox-py27 http://logs.openstack.org/01/531201/1/check/openstack-tox-py27/86cde0a/ : SUCCESS in 4m 26s\n- openstack-tox-py35 http://logs.openstack.org/01/531201/1/check/openstack-tox-py35/9b38897/ : SUCCESS in 4m 13s\n- build-openstack-sphinx-docs http://logs.openstack.org/01/531201/1/check/build-openstack-sphinx-docs/a970fee/html/ : SUCCESS in 13m 01s\n- legacy-tempest-dsvm-neutron-src http://logs.openstack.org/01/531201/1/check/legacy-tempest-dsvm-neutron-src/f2ca852/ : SUCCESS in 1h 20m 25s\n- openstackclient-check-plugins http://logs.openstack.org/01/531201/1/check/openstackclient-check-plugins/01b9f86/ : SUCCESS in 7m 04s (non-voting)\n- osc-tox-py27-tips http://logs.openstack.org/01/531201/1/check/osc-tox-py27-tips/464134c/ : SUCCESS in 5m 13s\n- osc-tox-py35-tips http://logs.openstack.org/01/531201/1/check/osc-tox-py35-tips/3602259/ : SUCCESS in 5m 19s\n- osc-functional-devstack http://logs.openstack.org/01/531201/1/check/osc-functional-devstack/c881e42/ : SUCCESS in 38m 34s\n- osc-functional-devstack-tips http://logs.openstack.org/01/531201/1/check/osc-functional-devstack-tips/4faeb12/ : SUCCESS in 42m 02s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"50f6ccf9f042e2379f0b637e4f13a63207d29edf","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2018-01-04 19:45:25.000000000","message":"Patch Set 1:\n\nthis fixes v2, what about v1? \n\na release note could also be added","accounts_in_message":[],"_revision_number":1},{"id":"1533e1bcd8d4e32bd635e7c1c040f3ac2713c57d","author":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"date":"2018-01-05 11:17:49.000000000","message":"Patch Set 1:\n\nI can\u0027t be certain, but to my knowledge v1 is deprecated and unsupported. It means that we fix only related critical and security bugs https://github.com/openstack/glance/blob/master/glance/api/versions.py#L87-L100\n\nRegarding to the release note, in my understanding this is just a small bug-fix, which brings the openstackclient\u0027s work in line with native client\u0027s shell: https://github.com/openstack/python-glanceclient/blob/master/glanceclient/v2/shell.py#L356\nDo you really think we need an official announcement?","accounts_in_message":[],"_revision_number":1},{"id":"1f46c1111a0e5dd07697128b82e832f0c0893adf","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2018-01-05 14:27:48.000000000","message":"Patch Set 1:\n\n\u003e I can\u0027t be certain, but to my knowledge v1 is deprecated and\n \u003e unsupported. It means that we fix only related critical and\n \u003e security bugs https://github.com/openstack/glance/blob/master/glance/api/versions.py#L87-L100\n\nCorrect, but that\u0027s the server side. Last time dtroyer checked, OSC v3.x worked for versions os openstack server as far back as grizzly (or havana or icehouse?), so even though the server side of glace v1 has deprecated for a while, there are still some deployments of it that use latest OSC that would benefit from the fix.\n\n \u003e \n \u003e Regarding to the release note, in my understanding this is just a\n \u003e small bug-fix, which brings the openstackclient\u0027s work in line with\n \u003e native client\u0027s shell: https://github.com/openstack/python-glanceclient/blob/master/glanceclient/v2/shell.py#L356\n \u003e Do you really think we need an official announcement?\n\nI\u0027m OK without it, i guess, we tend to create a release note for any bug that is user facing, which this one is.","accounts_in_message":[],"_revision_number":1},{"id":"1c352f4e814c0466fd7eb8c70c4eabb47d473fe0","author":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"date":"2018-01-05 18:42:35.000000000","message":"Patch Set 1:\n\n@Steve. I checked v1 - it works well and raises NotFound error.\nv1: https://github.com/openstack/glance/blob/master/glance/api/v1/images.py#L515\nv2: https://github.com/openstack/glance/blob/master/glance/api/v2/image_data.py#L464 \n\nAlso I added a small release note as you asked.","accounts_in_message":[],"_revision_number":1},{"id":"d49c2e1e7f6f779e88c20f9e8e28db925b356525","author":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"date":"2018-01-05 18:43:53.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"67fe05dcfb484b4cfed222ba01b5b02c28215fb4","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2018-01-05 18:53:13.000000000","message":"Patch Set 2: Code-Review+2\n\nthank you!","accounts_in_message":[],"_revision_number":2},{"id":"a0677825941fdbb76d277f030e7a095e298c56f2","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-01-05 20:10:35.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/01/531201/2/check/openstack-tox-pep8/97dc420/ : SUCCESS in 4m 50s\n- openstack-tox-py27 http://logs.openstack.org/01/531201/2/check/openstack-tox-py27/c431b55/ : SUCCESS in 4m 17s\n- openstack-tox-py35 http://logs.openstack.org/01/531201/2/check/openstack-tox-py35/0ccf585/ : SUCCESS in 4m 43s\n- build-openstack-sphinx-docs http://logs.openstack.org/01/531201/2/check/build-openstack-sphinx-docs/18cb024/html/ : SUCCESS in 4m 56s\n- build-openstack-releasenotes http://logs.openstack.org/01/531201/2/check/build-openstack-releasenotes/a42b383/html/ : SUCCESS in 4m 11s\n- legacy-tempest-dsvm-neutron-src http://logs.openstack.org/01/531201/2/check/legacy-tempest-dsvm-neutron-src/aba2a88/ : SUCCESS in 1h 20m 49s\n- openstackclient-check-plugins http://logs.openstack.org/01/531201/2/check/openstackclient-check-plugins/c722d98/ : SUCCESS in 6m 36s (non-voting)\n- osc-tox-py27-tips http://logs.openstack.org/01/531201/2/check/osc-tox-py27-tips/2d35965/ : SUCCESS in 4m 26s\n- osc-tox-py35-tips http://logs.openstack.org/01/531201/2/check/osc-tox-py35-tips/01ffe59/ : SUCCESS in 4m 45s\n- osc-functional-devstack http://logs.openstack.org/01/531201/2/check/osc-functional-devstack/7e5ae55/ : SUCCESS in 40m 03s\n- osc-functional-devstack-tips http://logs.openstack.org/01/531201/2/check/osc-functional-devstack-tips/c0b32d7/ : SUCCESS in 41m 52s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"89b43348b99c1d39b68a2b75e755eb5927a16790","author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"date":"2018-01-08 03:42:04.000000000","message":"Patch Set 2: Code-Review+1","accounts_in_message":[],"_revision_number":2},{"id":"79a4583229001f06d67251a85e2ad54b170095a0","author":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"date":"2018-01-09 10:00:19.000000000","message":"Patch Set 2: Code-Review+1","accounts_in_message":[],"_revision_number":2},{"id":"69098aa7241ebbae79dd5ef9d8ff779927e888fb","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2018-01-22 15:21:06.000000000","message":"Patch Set 2: Code-Review+1\n\nv1 also needs to be fixed.  Clients have a different deprecation schedule, ie, we suport Image v1 until it is reasonable no longer in use in the field.  that\u0027s going to be a while yet.\n\nOur policy for critical fixes only applies to OSC stable releases independent of API version.","accounts_in_message":[],"_revision_number":2},{"id":"615e241b6a3a2a08e4d1796dd75a04071812746b","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2018-01-22 15:22:08.000000000","message":"Patch Set 2: Workflow+1 Code-Review+2\n\nNevermind me, v1 not afffected","accounts_in_message":[],"_revision_number":2},{"id":"b2ac97481967b9f46043b0daa2f1407cf34393bb","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-01-22 15:22:20.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"df4b335eec5aa1ff4718dc92d3f7d379372ba642","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-01-22 17:56:29.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/01/531201/2/gate/openstack-tox-pep8/2a767d3/ : SUCCESS in 4m 44s\n- openstack-tox-py27 http://logs.openstack.org/01/531201/2/gate/openstack-tox-py27/fe77cce/ : SUCCESS in 4m 38s\n- openstack-tox-py35 http://logs.openstack.org/01/531201/2/gate/openstack-tox-py35/870343a/ : SUCCESS in 4m 30s\n- build-openstack-sphinx-docs http://logs.openstack.org/01/531201/2/gate/build-openstack-sphinx-docs/17fab97/html/ : SUCCESS in 5m 12s\n- build-openstack-releasenotes http://logs.openstack.org/01/531201/2/gate/build-openstack-releasenotes/8e5e84b/html/ : SUCCESS in 4m 04s\n- legacy-tempest-dsvm-neutron-src http://logs.openstack.org/01/531201/2/gate/legacy-tempest-dsvm-neutron-src/a1f81db/ : SUCCESS in 2h 18m 49s\n- osc-tox-py27-tips http://logs.openstack.org/01/531201/2/gate/osc-tox-py27-tips/4a138c5/ : SUCCESS in 5m 41s\n- osc-tox-py35-tips http://logs.openstack.org/01/531201/2/gate/osc-tox-py35-tips/92fdd81/ : SUCCESS in 5m 38s\n- osc-functional-devstack http://logs.openstack.org/01/531201/2/gate/osc-functional-devstack/529eba4/ : SUCCESS in 39m 17s","accounts_in_message":[],"_revision_number":2},{"id":"c04c4367b6d568fb011dd543700bca876956b636","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-01-22 17:56:29.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"ed1b59848fd2a6b7bed7618ab5ac0db00e8110dc","revisions":{"5059fabeb16cc74532414f3936c82ed80a4477eb":{"kind":"REWORK","_number":1,"created":"2018-01-04 17:06:25.000000000","uploader":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"ref":"refs/changes/01/531201/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/01/531201/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/01/531201/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/01/531201/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/01/531201/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/01/531201/1"}}},"commit":{"parents":[{"commit":"b13a323128072f6f56619a816f5be165796171a4","subject":"Merge \"Update new documentation PTI jobs\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/b13a323128072f6f56619a816f5be165796171a4"}]}],"author":{"name":"Mike Fedosin","email":"mfedosin@redhat.com","date":"2018-01-04 16:49:28.000000000","tz":60},"committer":{"name":"Mike Fedosin","email":"mfedosin@redhat.com","date":"2018-01-04 17:06:23.000000000","tz":60},"subject":"Check that Glance returns image data before processing it","message":"Check that Glance returns image data before processing it\n\nNow if Glance cannot find image data it returns an empty\nresponse with 204 status code, instead of raising an error.\n\nGlance client handles this situation and wraps the response\nwith a RequestIdProxy object, whose \u0027wrapped\u0027 attribute is\nNone.\n\nBut when openstack client tries to parse this object using\nglanceclient\u0027s save_image util function, it fails with\n\"NoneType object is not iterable\" message, for the\nobject doesn\u0027t contain any data.\n\nThis patch adds additional check to prevent such behaviour\nand raises SystemExit exception if no data was returned from\nthe server.\n\nChange-Id: I016a60462ba586f9fa7585c2cfafffd7be38de7b\nCloses-Bug: #1741223\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/5059fabeb16cc74532414f3936c82ed80a4477eb"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/5059fabeb16cc74532414f3936c82ed80a4477eb"}]},"branch":"refs/heads/master"},"ed1b59848fd2a6b7bed7618ab5ac0db00e8110dc":{"kind":"REWORK","_number":2,"created":"2018-01-05 18:43:53.000000000","uploader":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"ref":"refs/changes/01/531201/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/01/531201/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/01/531201/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/01/531201/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/01/531201/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/01/531201/2"}}},"commit":{"parents":[{"commit":"b13a323128072f6f56619a816f5be165796171a4","subject":"Merge \"Update new documentation PTI jobs\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/b13a323128072f6f56619a816f5be165796171a4"}]}],"author":{"name":"Mike Fedosin","email":"mfedosin@redhat.com","date":"2018-01-04 16:49:28.000000000","tz":60},"committer":{"name":"Mike Fedosin","email":"mfedosin@redhat.com","date":"2018-01-05 18:36:49.000000000","tz":60},"subject":"Check that Glance returns image data before processing it","message":"Check that Glance returns image data before processing it\n\nNow if Glance v2 cannot find image data it returns an empty\nresponse with 204 status code, instead of raising an error.\n\nGlance client handles this situation and wraps the response\nwith a RequestIdProxy object, whose \u0027wrapped\u0027 attribute is\nNone.\n\nBut when openstack client tries to parse this object using\nglanceclient\u0027s save_image util function, it fails with\n\"NoneType object is not iterable\" message, for the\nobject doesn\u0027t contain any data.\n\nThis patch adds additional check to prevent such behaviour\nand raises SystemExit exception if no data was returned from\nthe server.\n\nGlance v1 is not affected, because it raises an error if can\u0027t\nfind an image data.\n\nChange-Id: I016a60462ba586f9fa7585c2cfafffd7be38de7b\nCloses-Bug: #1741223\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/ed1b59848fd2a6b7bed7618ab5ac0db00e8110dc"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/ed1b59848fd2a6b7bed7618ab5ac0db00e8110dc"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
