Skip to content

Create a more granular flag in vic-machine for deleting volume stores #6604

@matthewavery

Description

@matthewavery

Currently when a user wishes to delete a volume store along with a VCH they are forced to use vic-machine delete --force. This has become increasingly unsafe as the --force command has been overloaded with many meanings, including the manner in which the resource pools are handled. The removal of a volume store is not a clear result of a user deciding to use --force and as such in our documentation we do state that --force will do this, but there is no recourse for a user that needs to use --force but also wants to keep their volume stores.

Volume store removal should be moved to having it's own flag in the vic-machine delete path such as --delete-volume-store:<volume store name>. This flag should be repeatable in case the user does not wish to delete all of their volume stores. A prime use case for this is a user wanting to clean out a junk volume store that is bloated while also cleaning up a VCH that has valuable data in other stores.

approach:
The deletion of volume stores is already gated on the --force flag. Instead we should gate volume store deletion logic on the presence of an active --delete-volume-store flag and the just aggregate all of the target volume stores to perform a deletion operation against. A good example of repeatable flags for vic-machine can be found for the vic-machine create --volume-store flag. The same goes for finding examples of how vic-machine interacts with the volume store code base.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/storageStorage-related functionalityarea/uxcomponent/installkind/enhancementBehavior that was intended, but we want to make betterkind/featureNew functionality you could include in marketing materialseverity/2-seriousHigh usability or functional impact. Often has no workaround.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions