Create separate handler for node (un)assignment

Registered by Alexandr Notchenko

Create separate handler for node (un)assignment depending it's state.

Current way of assigning and unassigning nodes is updating node attributes in PUT method of NodeCollectionHandler, which created intertwined code that didn't handled:

1) Correct validation of assignment action

2) Different kinds of node removal depending on node state, which forced to implement this logic on client side. (if something installed (cluster_id stays the same, pending_deletion = True) ; if still in bootstrap (cluster_id = None))

3) Difference in states of nodes in clients and server (Described in related bug)

4) Swallowed input,stopped operation mid through when encountered error, making operations not atomic

5) Step closer to implementation in REST object (general direction we are moving to handle complex objects in Nailgun)

Blueprint information

Status:
Complete
Approver:
Evgeniy L
Priority:
Medium
Drafter:
Alexandr Notchenko
Direction:
Approved
Assignee:
Alexandr Notchenko
Definition:
Approved
Series goal:
Accepted for 4.1.x
Implementation:
Implemented
Milestone target:
milestone icon 4.1
Started by
Alexandr Notchenko
Completed by
Alexandr Notchenko

Related branches

Sprints

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.