Files
fn_registry/functions/infra/setup_vps_app.md
T
egutierrez 47fac22230 chore: auto-commit (799 archivos)
- .claude/CLAUDE.md
- .claude/commands/subagentes.md
- .claude/rules/INDEX.md
- .mcp.json
- bash/functions/cybersecurity/analyze_dns.md
- bash/functions/cybersecurity/audit_http_headers.md
- bash/functions/cybersecurity/audit_ssh_config.md
- bash/functions/cybersecurity/check_firewall.md
- bash/functions/cybersecurity/detect_suspicious_users.md
- bash/functions/cybersecurity/encrypt_file.md
- ...

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 00:28:20 +02:00

1.6 KiB

name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, params, output, tested, tests, test_file_path, file_path
name kind lang domain version purity signature description tags uses_functions uses_types returns returns_optional error_type imports params output tested tests test_file_path file_path
setup_vps_app pipeline go infra 1.0.0 impure func SetupVPSApp(conn SSHConn, cfg DeployConfig) error Orquesta el setup inicial de una app en un VPS remoto: verifica SSH, crea dirs y usuario, sube binario, instala systemd unit y hace health check.
deploy
vps
setup
systemd
ssh
pipeline
infra
pendiente-usar
ssh_check_go_infra
vps_setup_app_go_infra
ssh_upload_go_infra
ssh_exec_go_infra
systemd_generate_unit_go_infra
systemd_install_go_infra
health_check_http_go_infra
ssh_conn_go_infra
DeployConfig_go_infra
false error_go_core
fmt
name desc
conn conexión SSH al VPS destino
name desc
cfg configuración de deploy con nombre, rutas, build, puerto, env vars
nil si el setup completo fue exitoso false
functions/infra/setup_vps_app.go

Ejemplo

conn := SSHConn{Host: "185.x.x.x", User: "root"}
cfg := DeployConfig{
    AppName:     "dag_engine",
    LocalDir:    "apps/dag_engine",
    RemoteDir:   "/opt/apps/dag_engine",
    BinaryName:  "dag_engine",
    ServiceUser: "deploy",
    Port:        8080,
    HealthPath:  "/api/health",
    Env:         map[string]string{"PORT": "8080"},
}
err := SetupVPSApp(conn, cfg)

Notas

Pipeline de 6 pasos para primera instalación. Después del setup inicial, usar deploy_app_remote para deploys continuos (no regenera dirs ni systemd unit). El health check espera hasta 30 segundos con polling cada 2s.