Allow retype between encrypted type and non-encrypted type

Registered by Lisa Li

Currently when a cinder volume is created, it can't retype it from encrypted to non-encrypted, or from non-encrypted to encrypted.
Scenario:
Users at first stores data in raw volumes, and later they want to transfer them to encrypted.

Blueprint information

Status:
Started
Approver:
Sean McGinnis
Priority:
Medium
Drafter:
Lisa Li
Direction:
Approved
Assignee:
Lisa Li
Definition:
Approved
Series goal:
None
Implementation:
Needs Code Review
Milestone target:
None
Started by
Lisa Li

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/retype-encrypted-volume,n,z

Addressed by: https://review.openstack.org/248593
    Retype encrypted volumes

Addressed by: https://review.openstack.org/319078
    Retype encrypted volumes

Addressed by: https://review.openstack.org/280492
    Replace key manager with Castellan

Addressed by: https://review.openstack.org/341914
    Add encryptor attach/detach in utils

Addressed by: https://review.openstack.org/357605
    [WIP] For tempest test

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.