Vérification par docker compose config avant écriture, application avec docker compose up -d et retour à la version précédente en cas d'échec. Historique des versions par fichier. Le Caddyfile et le compose gardent un retour à la ligne final. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
72 lines
3.0 KiB
TypeScript
72 lines
3.0 KiB
TypeScript
/*
|
|
|--------------------------------------------------------------------------
|
|
| Routes file
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| The routes file is used for defining the HTTP routes.
|
|
|
|
|
*/
|
|
|
|
import { middleware } from '#start/kernel'
|
|
import router from '@adonisjs/core/services/router'
|
|
import { controllers } from '#generated/controllers'
|
|
|
|
router
|
|
.group(() => {
|
|
router.post('auth/login', [controllers.Auth, 'login'])
|
|
|
|
router
|
|
.group(() => {
|
|
router.post('auth/logout', [controllers.Auth, 'logout'])
|
|
router.get('auth/me', [controllers.Auth, 'me'])
|
|
|
|
router.get('overview', [controllers.Overview, 'index'])
|
|
|
|
router.get('metrics/live', [controllers.Metrics, 'live'])
|
|
router.get('metrics/history', [controllers.Metrics, 'history'])
|
|
|
|
router.get('containers', [controllers.Containers, 'index'])
|
|
router.get('containers/:id', [controllers.Containers, 'show'])
|
|
router.get('containers/:id/logs', [controllers.Containers, 'logs'])
|
|
router.get('containers/:id/compose', [controllers.Compose, 'show'])
|
|
router.put('containers/:id/compose', [controllers.Compose, 'update'])
|
|
router.get('containers/:id/compose/versions/:versionId', [controllers.Compose, 'version'])
|
|
router.post('containers/:id/:action', [controllers.Containers, 'action'])
|
|
|
|
router.get('sites', [controllers.Sites, 'index'])
|
|
router.post('sites/check', [controllers.Sites, 'check'])
|
|
router.get('sites/:id', [controllers.Sites, 'show'])
|
|
|
|
router.get('projects', [controllers.Projects, 'index'])
|
|
router.post('projects', [controllers.Projects, 'store'])
|
|
router.get('projects/options', [controllers.Projects, 'options'])
|
|
router.get('projects/:category/:name', [controllers.Projects, 'show'])
|
|
router.post('projects/:category/:name/fetch', [controllers.Projects, 'fetch'])
|
|
router.post('projects/:category/:name/actions/:action', [controllers.Projects, 'action'])
|
|
|
|
router.get('caddy', [controllers.Caddy, 'show'])
|
|
router.put('caddy', [controllers.Caddy, 'update'])
|
|
router.post('caddy/reload', [controllers.Caddy, 'reload'])
|
|
router.get('caddy/versions', [controllers.Caddy, 'versions'])
|
|
router.get('caddy/versions/:id', [controllers.Caddy, 'version'])
|
|
router.post('caddy/versions/:id/restore', [controllers.Caddy, 'restore'])
|
|
|
|
router.get('backups', [controllers.Backups, 'index'])
|
|
router.post('backups', [controllers.Backups, 'store'])
|
|
router.get('backups/:name', [controllers.Backups, 'download'])
|
|
router.delete('backups/:name', [controllers.Backups, 'destroy'])
|
|
|
|
router.get('jobs/:id/stream', [controllers.Jobs, 'stream'])
|
|
|
|
router.get('audit', [controllers.Audit, 'index'])
|
|
router.get('audit/:id', [controllers.Audit, 'show'])
|
|
})
|
|
.use(middleware.auth())
|
|
})
|
|
.prefix('/api')
|
|
|
|
/**
|
|
* Every other URL is a page of the Angular application.
|
|
*/
|
|
router.get('*', [controllers.Spa, 'index'])
|