Bug 1234607
Summary: | There needs to be a force delete option for Heat stacks | ||
---|---|---|---|
Product: | Red Hat OpenStack | Reporter: | Jay Dobies <jason.dobies> |
Component: | openstack-heat | Assignee: | Zane Bitter <zbitter> |
Status: | CLOSED NOTABUG | QA Contact: | Amit Ugol <augol> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | 7.0 (Kilo) | CC: | sbaker, shardy, yeylon |
Target Milestone: | --- | ||
Target Release: | 8.0 (Liberty) | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2015-06-30 15:24:12 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Jay Dobies
2015-06-22 19:47:09 UTC
Heat has a 'stack-abandon' command which deletes the stack without deleting any of the underlying cloud resources, which sounds like what you would like. However the stack-abandon REST call is disabled by default due to bug 1353670. This bug doesn't really affect tripleo though since we have no intention of adopting an abandoned stack, so we should consider enabling abandon on the undercloud heat. To enable abandon and then abandon the overcloud, try the following: - on the undercloud /etc/heat/heat.conf set [DEFAULT]enable_stack_abandon=true - sudo systemctl restart openstack-heat-engine - heat stack-abandon overcloud > abandoned-overcloud.json - make other cli delete calls to clean up resources manually (nova delete, neutron port-delete, neutron port-list etc) puppet-heat has a parameter heat::enable_stack_abandon should we choose to enable abandon in the undercloud. Having said all that, I'd like to think that there would always be a way of deleting an ERRORed nova server. The way Heat works is that a stack essentially owns the resources it creates and is responsible for cleaning them up. If the resources can't be deleted then it's essentially never the right thing to do to just forget about them, as that leaks resources. The user always has the option of manually removing the resource from e.g. Nova, and a subsequent stack delete should recognise that the resource is gone and allow the stack to be deleted. If the server can't be deleted from the Nova API then Nova is the problem here, not Heat. Of course it's possible there could be a case where that Heat could fail to delete a resource in the case where it cannot be found (i.e. has already been deleted manually), but that would always be considered a bug in Heat and should be fixed rather than papering over it with a force delete option. |