package infra

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

// DockerRemoveImage elimina una imagen Docker local. Si force es true, fuerza la eliminación.
func DockerRemoveImage(image string, force bool) error {
	args := []string{"rmi"}
	if force {
		args = append(args, "-f")
	}
	args = append(args, image)

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