rm: add containers eviction with rm --force

Add ability to evict a container when it becomes unusable. This may
happen when the host setup changes after a container creation, making it
impossible for that container to be used or removed.
Evicting a container is done using the `rm --force` command.

Signed-off-by: Marco Vedovati <mvedovati@suse.com>
This commit is contained in:
Marco Vedovati
2019-07-05 12:54:07 +02:00
parent 83b2348313
commit dacbc5beb2
17 changed files with 540 additions and 122 deletions

View File

@ -58,6 +58,9 @@ type State interface {
// If the container is not in the set namespace, an error will be
// returned.
Container(id string) (*Container, error)
// Return a container ID from the database by full or partial ID or full
// name.
LookupContainerID(idOrName string) (string, error)
// Return a container from the database by full or partial ID or full
// name.
// Containers not in the set namespace will be ignored.
@ -98,6 +101,9 @@ type State interface {
// returned.
AllContainers() ([]*Container, error)
// Return a container config from the database by full ID
GetContainerConfig(id string) (*ContainerConfig, error)
// PLEASE READ FULL DESCRIPTION BEFORE USING.
// Rewrite a container's configuration.
// This function breaks libpod's normal prohibition on a read-only