Skip to main content

Module vps

Module vps 

Source
Expand description

CRUD e persistência de registros de VPS.

Cada VPS é armazenada em $CONFIG_DIR/ssh-cli/config.toml com permissões 0o600 no Unix. Toda a gestão acontece via comandos CLI — ZERO arquivo .env.

O modelo modelo::VpsRegistro usa SecretString para senhas, garantindo Zeroize on Drop automático.

Modules§

modelo
Modelo de dados VpsRegistro.

Structs§

ArquivoConfig
Arquivo de configuração completo.

Functions§

buscar_por_nome
Busca um registro de VPS por nome.
caminho_config_padrao
Retorna o caminho do arquivo de config respeitando SSH_CLI_HOME.
carregar
Carrega o arquivo de configuração (retorna vazio se não existir).
construir_configuracao
Constrói ConfiguracaoConexao a partir de um VpsRegistro.
executar_comando_vps
Dispatcher dos subcomandos vps.
executar_connect
Define a VPS ativa gravando seu nome em <config_dir>/active.
executar_exec
Executa um comando em uma VPS via SSH.
executar_exec_with_client
Versão testável de executar_exec que aceita o cliente como parâmetro.
executar_health_check
Executa um health-check (ping SSH) em uma VPS e imprime a latência.
executar_sudo_exec
Executa um comando com sudo em uma VPS via SSH.
executar_sudo_exec_with_client
Versão testável de executar_sudo_exec que aceita o cliente como parâmetro.
ler_vps_ativa
Lê o nome da VPS ativa.
resolver_caminho_config
Resolve o caminho do arquivo de config a partir de um override opcional.
salvar
Salva o arquivo de configuração e aplica permissões 0o600 no Unix.