Add status reset when abnormal appear

Registered by chenyb4

I want to use blueprints change the senlin status, when the status for some reason it triggers a certain state for a long time.

Senlin has exist status about:

 - INIT
 - ACTIVE
 - ERROR
 - WARNING
 - CREATING
 - UPDATING
 - DELETING
 - RECOVERING
 - OPERATING

In this status, We can't ensure that every state can perform a change, not a long-term state. If state in ACTIVE or ERROR we are execute delete operation, but the other state, don't delete, maybe we can only delete it through the database. So, I want add reset-state operation.

Thie blueprints allow user use thie operatin update change:

- senlin reset-state xxxx --active (the default error, if don't add --active)

reset-state operation allow node or cluster state update.

Blueprint information

Status:
Not started
Approver:
Qiming Teng
Priority:
Undefined
Drafter:
chenyb4
Direction:
Needs approval
Assignee:
chenyb4
Definition:
Pending Approval
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

This looks like a very dangerous operation to me. Senlin engine is very strict on resource status management. I don't think we should expose an API to change the resource status. It will render the whole engine very unstable.

Imagine this: you have a cluster which is RECOVERING, do you want it to be deletable?
If you have a node which is in ERROR status, do you want Senlin to recover its status or you want to intervene instead?

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.