Files
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
deploy_app_remote pipeline go infra 1.0.0 impure func DeployAppRemote(conn SSHConn, cfg DeployConfig) error Orquesta el deploy continuo de una app a un VPS: verifica SSH, compila localmente, sube binario, reinicia systemd y hace health check.
deploy
vps
remote
ci
cd
pipeline
infra
pendiente-usar
ssh_check_go_infra
ssh_upload_go_infra
ssh_exec_go_infra
systemd_restart_go_infra
health_check_http_go_infra
ssh_conn_go_infra
DeployConfig_go_infra
false error_go_core
fmt
os/exec
strings
name desc
conn conexión SSH al VPS destino
name desc
cfg configuración de deploy con nombre, rutas, build command, puerto y health path
nil si el deploy completo fue exitoso false
functions/infra/deploy_app_remote.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",
    BuildCmd:   "CGO_ENABLED=0 GOOS=linux go build -o dag_engine .",
    Port:       8080,
    HealthPath: "/api/health",
}
err := DeployAppRemote(conn, cfg)

Notas

Pipeline de 5 pasos para deploy continuo (asume que el setup inicial ya se hizo con setup_vps_app). El build corre localmente en LocalDir con bash -c BuildCmd. Si BuildCmd está vacío, se salta el build y sube directamente el binario existente.