<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div>Hi Chris,</div><div><br></div><div>So there is no rule saying you can't ask keystone. However, we do emit events (audit, needs to be configured) to the message bus when tenants (or in v3 parlance, projects) are deleted. This allows nova to mark things in a way to cleanup / do direct cleanup. </div><div><br></div><div>There have been a few conversations about this, but we haven't made significant progress (as far as I know) on this topic. </div><div><br></div><div>The best solution proposal (iirc) was that we need to creat a listener or similar that the other services could hook a callback to that will do the cleanup directly rather than require blocking the main API for the cleanup. </div><div><br></div><div>Keystone is open to these improvements and ideas. It just doesn't scale of every action from every service has to ask keystone if <thing> still exists. Let's make sure we don't start using a pattern that will cause significant issues down the road.  </div><div><br></div><div>--Morgan</div><div><br>Sent via mobile</div><div><br>On May 7, 2015, at 09:37, Chris St. Pierre <<a href="mailto:chris.a.st.pierre@gmail.com">chris.a.st.pierre@gmail.com</a>> wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr">This bug recently came to my attention: <a href="https://bugs.launchpad.net/nova/+bug/1241587">https://bugs.launchpad.net/nova/+bug/1241587</a><div><br></div><div>I've reopened it, because it is an actual problem, especially for people using nova-network and Rally, which creates and deletes tons of tenants.</div><div><br></div><div>The obvious simple solution is to allow deletion of the 'default' security group if it is assigned to a tenant that doesn't exist, but I wasn't sure what the most acceptable way to do that within Nova would be. Is it acceptable to perform a call to the Keystone API to check for the tenant? Or is there another, better way?</div><div><br></div><div>Alternatively, is there a better way to tackle the problem altogether?</div><div><br></div><div>Thanks!<br clear="all"><div><br></div>-- <br><div class="gmail_signature">Chris St. Pierre</div>
</div></div>
</div></blockquote><blockquote type="cite"><div><span>__________________________________________________________________________</span><br><span>OpenStack Development Mailing List (not for usage questions)</span><br><span>Unsubscribe: <a href="mailto:OpenStack-dev-request@lists.openstack.org">OpenStack-dev-request@lists.openstack.org</a>?subject:unsubscribe</span><br><span><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a></span><br></div></blockquote></body></html>