<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Sep 28, 2016 at 6:21 AM, Jiahao Liang <span dir="ltr"><<a href="mailto:jiahao.liang@oneconvergence.com" target="_blank">jiahao.liang@oneconvergence.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"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="gmail-">On Tue, Sep 27, 2016 at 5:35 PM, Rabi Mishra <span dir="ltr"><<a href="mailto:ramishra@redhat.com" target="_blank">ramishra@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"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span>On Wed, Sep 28, 2016 at 1:01 AM, Zane Bitter <span dir="ltr"><<a href="mailto:zbitter@redhat.com" target="_blank">zbitter@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"><span>On 27/09/16 15:11, Jiahao Liang wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Hello all,<br>
<br>
I am trying to use heat to launch lb resources with Octavia as backend.<br>
The template I used is<br>
from <a href="https://github.com/openstack/heat-templates/blob/master/hot/lbaasv2/lb_group.yaml" rel="noreferrer" target="_blank">https://github.com/openstack/h<wbr>eat-templates/blob/master/hot/<wbr>lbaasv2/lb_group.yaml</a>.<br>
<br>
Following are a few observations:<br>
<br>
1. Even though Listener was created with ERROR status, heat will still<br>
go ahead and mark it Creation Complete. As in the heat code, it only<br>
check whether root Loadbalancer status is change from PENDING_UPDATE to<br>
ACTIVE. And Loadbalancer status will be changed to ACTIVE anyway no<br>
matter Listener's status.<br>
</blockquote>
<br></span>
That sounds like a clear bug.<br></blockquote><div><br></div></span><div>It seems we're checking for any exceptions from the client[1], before checking for the<br></div><div>loadbalancer status. I could not see any other way to check the listener status afterwards.<br>Probably a lbaas bug with octavia driver?<br><br></div><div>Could you please raise a bug with the heat/lbaas logs? </div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><br>[1]  <a href="https://git.openstack.org/cgit/openstack/heat/tree/heat/engine/resources/openstack/neutron/lbaas/listener.py#n183" target="_blank">https://git.openstack.org/cgit<wbr>/openstack/heat/tree/heat/engi<wbr>ne/resources/openstack/neutron<wbr>/lbaas/listener.py#n183</a> <br></div></div></div></div></blockquote><div><br></div></span><div> In Octavia, creating resources (listeners, pools, etc.) is an async operation which it wouldn't raise any exception. </div><div>A normal workflow is:</div><div>1. heat/neutron client send a create api to Octavia</div><div>2. Octavia return a response to client and set the resource to PENDING_CREATE (no exception will throw to client if the api goes through.)</div><div>3. It creation succeeds, Octavia set that resource to ACTIVE; otherwise, set it to ERROR.</div></div></div></div></blockquote><br></div><div class="gmail_quote">Unlike loadbalancer, I don't see any provisioning_status attribute for listener in lbaas api[1].<br><br>[1] <a href="http://git.openstack.org/cgit/openstack/neutron-lbaas/tree/neutron_lbaas/extensions/loadbalancerv2.py#n192">http://git.openstack.org/cgit/openstack/neutron-lbaas/tree/neutron_lbaas/extensions/loadbalancerv2.py#n192</a><br></div></div></div>