f21664e052
Nuevas funciones infra para deploy sin Docker: generación de units systemd (pura), instalación/restart/status de servicios remotos via SSH, setup inicial de VPS (crear dirs, usuario, permisos), y pipelines de deploy completo (setup_vps_app, deploy_app_remote). Incluye tipo DeployConfig con la configuración de deploy por app.
1.5 KiB
1.5 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 | |||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| systemd_generate_unit | function | go | infra | 1.0.0 | pure | func SystemdGenerateUnit(name, execStart, workDir, user string, env map[string]string) string | Genera el texto de un archivo .service de systemd para una app. Incluye restart automático y env vars en orden determinista. |
|
false |
|
|
texto completo del archivo .service listo para escribir a /etc/systemd/system/ | false | functions/infra/systemd_generate_unit.go |
Ejemplo
unit := SystemdGenerateUnit(
"dag_engine",
"/opt/apps/dag_engine/dag_engine",
"/opt/apps/dag_engine",
"deploy",
map[string]string{"PORT": "8080", "DB_PATH": "/opt/apps/dag_engine/data/ops.db"},
)
fmt.Println(unit)
Notas
Función pura sin I/O. Las env vars se ordenan alfabéticamente para output determinista. Genera un unit con Restart=on-failure y RestartSec=5.