Bug 1041216

Summary: [RFE][nova]: Transfer terminate_instance logic to conductor task manager.
Product: Red Hat OpenStack Reporter: RHOS Integration <rhos-integ>
Component: RFEsAssignee: RHOS Maint <rhos-maint>
Status: CLOSED UPSTREAM QA Contact: Ami Jeain <ajeain>
Severity: unspecified Docs Contact:
Priority: medium    
Version: unspecifiedCC: markmc, ndipanov, sgordon, yeylon
Target Milestone: ---Keywords: FutureFeature, Triaged, Upstream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://blueprints.launchpad.net/nova/+spec/terminate-instance-tasks
Whiteboard: upstream_milestone_none upstream_status_unknown upstream_definition_drafting
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-19 17:04:47 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description RHOS Integration 2013-12-12 13:58:57 UTC
Cloned from launchpad blueprint https://blueprints.launchpad.net/nova/+spec/terminate-instance-tasks.

Description:

Begin transfer of conductor workflow for terminating a instance (and cleaning up its resources) which is done inside the compute manager to being managed by the conductor task management layer. To start moving this workflow to be 'conducted' vs locally applied we need to begin the transfer (and likely refactor) of logic from where it is now to the conductor (with a light-weight task-receiver that will still exist in the compute manager to fulfill conductor requests).

This will involve the following:

0. Document and understand the current workflow.

1. Moving the conduction of the terminate_instance workflow to the conductor (reducing whats in nova compute to a smaller set). Handle the new and current error states of that workflow in the conductor that result from this modified workflow.

2. Support the above terminate_instance workflow running in the conductor via taskflow (which brings in resumption, recovery, state tracking and various other benefits) by bringing in taskflow to aid in this process
  - https://blueprints.launchpad.net/nova/+spec/terminate-instance-activate-via-taskflow

Specification URL (additional information):

None