Files
fn_registry/functions/infra/nordvpn_container_stop.go
T
egutierrez 2f119478af feat: funciones NordVPN bash y Go — CLI, contenedor Docker y parser de estado
Funciones bash para instalar, conectar, desconectar, estado, IP, ciudades, países y protocolo.
Funciones Go para gestionar contenedor NordVPN (run/start/stop) y parsear estado.
Incluye tipo NordVPNStatus y tests para el parser.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 20:55:08 +02:00

30 lines
750 B
Go

package infra
import (
"fmt"
)
// NordVPNContainerStop detiene y elimina el container gateway NordVPN.
// Tambien detiene containers que usen su red si se proporcionan.
func NordVPNContainerStop(gateway string, clientNames ...string) error {
if gateway == "" {
gateway = "nordvpn"
}
// Primero parar los clientes que usan la red del gateway
for _, name := range clientNames {
_ = DockerStopContainer(name, 5)
_ = DockerRemoveContainer(name, true)
}
// Parar y eliminar el gateway
if err := DockerStopContainer(gateway, 10); err != nil {
return fmt.Errorf("nordvpn container stop: %w", err)
}
if err := DockerRemoveContainer(gateway, true); err != nil {
return fmt.Errorf("nordvpn container remove: %w", err)
}
return nil
}