package infra

import (
	"fmt"
	"os/exec"
	"strings"
)

// DockerVolumeRemove elimina un volume Docker por nombre.
// Si force es true, fuerza la eliminación incluso si está en uso.
func DockerVolumeRemove(name string, force bool) error {
	args := []string{"volume", "rm"}
	if force {
		args = append(args, "-f")
	}
	args = append(args, name)

	out, err := exec.Command("docker", args...).CombinedOutput()
	if err != nil {
		return fmt.Errorf("docker volume rm %s: %s", name, strings.TrimSpace(string(out)))
	}
	return nil
}
