mirror of
https://github.com/containers/podman-compose.git
synced 2025-04-29 20:04:46 +02:00
FIXES #377: down -v
This commit is contained in:
parent
1fcf4fe6e1
commit
18876d2c09
@ -917,11 +917,15 @@ class Podman:
|
|||||||
return p
|
return p
|
||||||
|
|
||||||
def volume_inspect_all(self):
|
def volume_inspect_all(self):
|
||||||
output = self.output(["volume", "inspect", "--all"]).decode('utf-8')
|
output = self.output([], "volume", ["inspect", "--all"]).decode('utf-8')
|
||||||
return json.loads(output)
|
return json.loads(output)
|
||||||
|
|
||||||
def volume_rm(self, name):
|
def volume_inspect_proj(self, proj=None):
|
||||||
return self.run(["volume", "rm", name])
|
if not proj:
|
||||||
|
proj = self.compose.project_name
|
||||||
|
volumes = [(vol.get("Labels", {}), vol) for vol in self.volume_inspect_all()]
|
||||||
|
volumes = [(labels.get("io.podman.compose.project", None), vol) for labels, vol in volumes]
|
||||||
|
return [vol for vol_proj, vol in volumes if vol_proj==proj]
|
||||||
|
|
||||||
def normalize_service(service):
|
def normalize_service(service):
|
||||||
for key in ("env_file", "security_opt", "volumes"):
|
for key in ("env_file", "security_opt", "volumes"):
|
||||||
@ -1534,11 +1538,9 @@ def compose_down(compose, args):
|
|||||||
for pod in compose.pods:
|
for pod in compose.pods:
|
||||||
compose.podman.run([], "pod", ["rm", pod["name"]], sleep=0)
|
compose.podman.run([], "pod", ["rm", pod["name"]], sleep=0)
|
||||||
if args.volumes:
|
if args.volumes:
|
||||||
volumes = compose.podman.volume_inspect_all()
|
volume_names = [vol["Name"] for vol in compose.podman.volume_inspect_proj()]
|
||||||
for volume in volumes:
|
for volume_name in volume_names:
|
||||||
project = volume.get("Labels", {}).get("io.podman.compose.project")
|
compose.podman.run([], "volume", ["rm", volume_name])
|
||||||
if project == compose.project_name:
|
|
||||||
compose.podman.volume_rm(volume["Name"])
|
|
||||||
|
|
||||||
@cmd_run(podman_compose, 'ps', 'show status of containers')
|
@cmd_run(podman_compose, 'ps', 'show status of containers')
|
||||||
def compose_ps(compose, args):
|
def compose_ps(compose, args):
|
||||||
|
Loading…
Reference in New Issue
Block a user