feat: add missing Coolify controller, view and routes

- rest/controllers/coolify_controller.go: proxy completo hacia API Coolify
- resources/views/coolify.html: interfaz Alpine.js con tabs apps/servers/services/dbs/projects/deployments/team
- rest/routes/user.go: registra todas las rutas /app/coolify/*

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
Lizandro Guarnizo
2026-05-25 21:01:58 -05:00
co-authored by Copilot
parent 5373cebf9c
commit ce2ffff3e8
3 changed files with 1489 additions and 0 deletions
+50
View File
@@ -162,6 +162,56 @@ func UserRoutes(app fiber.Router) {
protected.Get("/cloudflare/zones/:zone_id/ssl", controllers.GetCloudflareSSL)
protected.Get("/cloudflare/zones/:zone_id/firewall", controllers.GetCloudflareFirewall)
// ─── Coolify API ──────────────────────────────────────────────────
protected.Get("/coolify", middlewares.MenuMiddleware, controllers.CoolifyIndex)
protected.Get("/coolify/config", controllers.CoolifyGetConfig)
protected.Post("/coolify/config", controllers.CoolifySaveConfig)
protected.Get("/coolify/health", controllers.CoolifyTestConnection)
// Applications
protected.Get("/coolify/apps", controllers.CoolifyListApplications)
protected.Get("/coolify/apps/:uuid", controllers.CoolifyGetApplication)
protected.Get("/coolify/apps/:uuid/logs", controllers.CoolifyApplicationLogs)
protected.Get("/coolify/apps/:uuid/envs", controllers.CoolifyApplicationEnvs)
protected.Post("/coolify/apps/:uuid/envs", controllers.CoolifyApplicationEnvCreate)
protected.Patch("/coolify/apps/:uuid/envs", controllers.CoolifyApplicationEnvUpdateBulk)
protected.Delete("/coolify/apps/:uuid/envs/:env_id", controllers.CoolifyApplicationEnvDelete)
protected.Get("/coolify/apps/:uuid/start", controllers.CoolifyApplicationStart)
protected.Get("/coolify/apps/:uuid/stop", controllers.CoolifyApplicationStop)
protected.Get("/coolify/apps/:uuid/restart", controllers.CoolifyApplicationRestart)
protected.Get("/coolify/apps/:uuid/deployments", controllers.CoolifyApplicationDeployments)
protected.Post("/coolify/apps/:uuid/deploy", controllers.CoolifyApplicationDeploy)
// Servers
protected.Get("/coolify/servers", controllers.CoolifyListServers)
protected.Get("/coolify/servers/:uuid", controllers.CoolifyGetServer)
protected.Get("/coolify/servers/:uuid/resources", controllers.CoolifyServerResources)
protected.Get("/coolify/servers/:uuid/domains", controllers.CoolifyServerDomains)
protected.Get("/coolify/servers/:uuid/validate", controllers.CoolifyServerValidate)
// Services
protected.Get("/coolify/services", controllers.CoolifyListServices)
protected.Get("/coolify/services/:uuid", controllers.CoolifyGetService)
protected.Get("/coolify/services/:uuid/start", controllers.CoolifyServiceStart)
protected.Get("/coolify/services/:uuid/stop", controllers.CoolifyServiceStop)
protected.Get("/coolify/services/:uuid/restart", controllers.CoolifyServiceRestart)
protected.Get("/coolify/services/:uuid/envs", controllers.CoolifyServiceEnvs)
protected.Patch("/coolify/services/:uuid/envs", controllers.CoolifyServiceEnvUpdateBulk)
// Databases
protected.Get("/coolify/databases", controllers.CoolifyListDatabases)
protected.Get("/coolify/databases/:uuid", controllers.CoolifyGetDatabase)
protected.Get("/coolify/databases/:uuid/start", controllers.CoolifyDatabaseStart)
protected.Get("/coolify/databases/:uuid/stop", controllers.CoolifyDatabaseStop)
protected.Get("/coolify/databases/:uuid/restart", controllers.CoolifyDatabaseRestart)
// Projects
protected.Get("/coolify/projects", controllers.CoolifyListProjects)
protected.Get("/coolify/projects/:uuid", controllers.CoolifyGetProject)
protected.Get("/coolify/projects/:uuid/environments", controllers.CoolifyProjectEnvironments)
// Deployments
protected.Get("/coolify/deployments", controllers.CoolifyListDeployments)
protected.Get("/coolify/deployments/:uuid", controllers.CoolifyGetDeployment)
// Team
protected.Get("/coolify/team", controllers.CoolifyCurrentTeam)
protected.Get("/coolify/team/members", controllers.CoolifyTeamMembers)
protected.Get("/coolify/teams", controllers.CoolifyListTeams)
// ─── Pasarelas de Pago ────────────────────────────────────────────
protected.Get("/pasarelas-pago", middlewares.MenuMiddleware, controllers.PasarelasPage)
// Bold