<div dir="ltr">HI Dmitry,<br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Aug 8, 2017 at 7:13 PM, Dmitry Tantsur <span dir="ltr"><<a href="mailto:dtantsur@redhat.com" target="_blank">dtantsur@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi!<br>
<br>
Thanks for raising this.<span class="gmail-"><br>
<br>
On 08/07/2017 02:47 PM, Pavlo Shchelokovskyy wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Hi all,<br>
<br>
currently our GlanceImageService seems to support several ways of defining a reference to glance image:<br>
<br>
1) simple image UUID [0]<br>
2) image UUID prefixed with 'glance://' protocol [1] (well, actually anything starting with 'glance://' and ending with '/<uuid>')<br>
3) full REST path to the image (as in http://<glance-api>/v2/images/<wbr><image-uuid>), also used to extract the glance API address [2]<br>
<br>
Support for #3 must surely be removed, as we are moving to API endpoint discovery from keystone catalog.<br>
Besides I am pretty sure this code path can not actually be reached currently, as the 'is_glance_image' will ignore such image refs and return False for those [3], and 'get_image_service' would also not return the GlanceImageService instance for such image refs [4].<br>
Hence the question - if it is unusable anyway now, should we execute the standard deprecation process when removing support for it or just remove right away?<br>
</blockquote>
<br></span>
If unsure, always use the standard process ;) Unless somebody is ready to set up DevStack, and try it out, and prove that it's completely and hopelessly broken.</blockquote><div><br></div><div>Did just that [0] - hacked up our tempest configuration so that the 'http' url for whole disk image used for *HttpLink standalone tests leads to <glance-endpoint>/v2/images/<uuid> [1].</div><div>As I kind of expected, both *HttpLink standalone tests failed, right on validating of the deploy interface when trying to do a HEAD on that URL instead of 'glance image show', receiving 401 [2].</div><div>On a side note, it seems our logging is insufficient in this parts, as I could not find any relevant logs in ironic-conductor even at debug level, all that's there are final RPC processing error logs from api.</div><div><br></div><div>So I am quite confident that this code paths [3] in service_utils is a dead end indeed :-/</div><div><br></div><div>[0] <a href="https://review.openstack.org/#/c/492184/">https://review.openstack.org/#/c/492184/</a></div><div>[1] <a href="http://logs.openstack.org/84/492184/1/check/gate-ironic-dsvm-standalone-ubuntu-xenial/32ea5de/logs/tempest_conf.txt.gz">http://logs.openstack.org/84/492184/1/check/gate-ironic-dsvm-standalone-ubuntu-xenial/32ea5de/logs/tempest_conf.txt.gz</a></div><div>[2] <a href="http://logs.openstack.org/84/492184/1/check/gate-ironic-dsvm-standalone-ubuntu-xenial/32ea5de/logs/testr_results.html.gz">http://logs.openstack.org/84/492184/1/check/gate-ironic-dsvm-standalone-ubuntu-xenial/32ea5de/logs/testr_results.html.gz</a></div><div>[3] <a href="https://github.com/openstack/ironic/blob/7e6ce7e78c4378f2f86d085df61a26507a410738/ironic/common/glance_service/service_utils.py#L159-L166">https://github.com/openstack/ironic/blob/7e6ce7e78c4378f2f86d085df61a26507a410738/ironic/common/glance_service/service_utils.py#L159-L166</a></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail-"><br>
<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
As for the #1 and #2 I do not see any big difference between those, and proposed deprecating and eventually removing support for #2 ('glance://' scheme) as part of [5]. Two people in review already raised a concern about removing such support.<br>
</blockquote>
<br></span>
To be honest, I like glance://<uuid> more, as it makes it obvious where the image is coming from vs http://. I don't mind removing it too much, but I guess supporting it is not a lot of code, right?<br></blockquote><div><br></div><div>That's not too much burden indeed, as long as we actually do only that - as I said, right now it is more like "glance://<anything>/uuid"</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail-">
<br>
Thus I'd like to ask a broader audience - do we need support for glance image references in 'glance://*<UUID>' form? Is it actually used somewhere? What are the benefits of having it besides simple UUID?<br>
<br>
[0] <a href="http://git.openstack.org/cgit/openstack/ironic/tree/ironic/common/glance_service/service_utils.py#n149" rel="noreferrer" target="_blank">http://git.openstack.org/cgit/<wbr>openstack/ironic/tree/ironic/c<wbr>ommon/glance_service/service_u<wbr>tils.py#n149</a><br>
[1] <a href="http://git.openstack.org/cgit/openstack/ironic/tree/ironic/common/glance_service/service_utils.py#n155" rel="noreferrer" target="_blank">http://git.openstack.org/cgit/<wbr>openstack/ironic/tree/ironic/c<wbr>ommon/glance_service/service_u<wbr>tils.py#n155</a><br>
[2] <a href="http://git.openstack.org/cgit/openstack/ironic/tree/ironic/common/glance_service/service_utils.py#n160" rel="noreferrer" target="_blank">http://git.openstack.org/cgit/<wbr>openstack/ironic/tree/ironic/c<wbr>ommon/glance_service/service_u<wbr>tils.py#n160</a><br>
[3] <a href="http://git.openstack.org/cgit/openstack/ironic/tree/ironic/common/glance_service/service_utils.py#n208" rel="noreferrer" target="_blank">http://git.openstack.org/cgit/<wbr>openstack/ironic/tree/ironic/c<wbr>ommon/glance_service/service_u<wbr>tils.py#n208</a><br>
[4] <a href="http://git.openstack.org/cgit/openstack/ironic/tree/ironic/common/image_service.py#n267" rel="noreferrer" target="_blank">http://git.openstack.org/cgit/<wbr>openstack/ironic/tree/ironic/c<wbr>ommon/image_service.py#n267</a><br>
[5] <a href="https://review.openstack.org/#/c/467728" rel="noreferrer" target="_blank">https://review.openstack.org/#<wbr>/c/467728</a><br>
<br>
Cheers,<br>
<br>
-- <br>
Dr. Pavlo Shchelokovskyy<br>
Senior Software Engineer<br>
Mirantis Inc<br>
</span><a href="http://www.mirantis.com" rel="noreferrer" target="_blank">www.mirantis.com</a> <<a href="http://www.mirantis.com" rel="noreferrer" target="_blank">http://www.mirantis.com</a>><br>
<br>
<br>
______________________________<wbr>______________________________<wbr>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.op<wbr>enstack.org?subject:unsubscrib<wbr>e</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi<wbr>-bin/mailman/listinfo/openstac<wbr>k-dev</a><br>
<br>
</blockquote>
<br>
<br>
______________________________<wbr>______________________________<wbr>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.op<wbr>enstack.org?subject:unsubscrib<wbr>e</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi<wbr>-bin/mailman/listinfo/openstac<wbr>k-dev</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr">Dr. Pavlo Shchelokovskyy<div>Senior Software Engineer</div><div>Mirantis Inc</div><div><a href="http://www.mirantis.com" target="_blank">www.mirantis.com</a></div></div></div></div></div>
</div></div>