Production no longer builds from source or self-updates via cron/git pull:
setup.sh now only provisions the server once (Docker, /opt/anouma, a
restricted `anouma-deploy` SSH user whose key can only ever run
deploy.sh, generated secrets). All future deployments run through
.gitea/workflows/ci.yml (lint/typecheck/test/build on every push) and
release.yml (on a vX.Y.Z tag: build the image, push it to the Gitea
registry, then SSH-trigger deploy.sh on the server), which pulls,
migrates, restarts, healthchecks, backs up the database first, and
automatically rolls back the code on a failed healthcheck.
docker-compose.yml's app service now runs a registry image
(${ANOUMA_IMAGE}) instead of building locally.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
50 lines
1.4 KiB
JSON
50 lines
1.4 KiB
JSON
{
|
|
"name": "anouma",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "tsx watch server.ts",
|
|
"build": "next build",
|
|
"start": "NODE_ENV=production tsx server.ts",
|
|
"lint": "eslint",
|
|
"test": "echo \"No automated test suite configured yet — add one (e.g. vitest) and update this script.\"",
|
|
"payload": "payload",
|
|
"generate:types": "payload generate:types",
|
|
"generate:importmap": "payload generate:importmap",
|
|
"migrate": "payload migrate",
|
|
"migrate:create": "payload migrate:create",
|
|
"seed": "payload run scripts/seed.ts",
|
|
"seo:check": "payload run scripts/seo-check.ts"
|
|
},
|
|
"dependencies": {
|
|
"@payloadcms/db-postgres": "^3.88.0",
|
|
"@payloadcms/next": "^3.88.0",
|
|
"@payloadcms/richtext-lexical": "^3.88.0",
|
|
"@payloadcms/ui": "^3.88.0",
|
|
"drizzle-orm": "^0.45.2",
|
|
"framer-motion": "^13.1.1",
|
|
"graphql": "^16.14.2",
|
|
"next": "16.3.2",
|
|
"nodemailer": "^9.0.5",
|
|
"payload": "^3.88.0",
|
|
"react": "19.2.8",
|
|
"react-dom": "19.2.8",
|
|
"sharp": "^0.35.3",
|
|
"tsx": "^4.23.12",
|
|
"ws": "^8.21.3"
|
|
},
|
|
"devDependencies": {
|
|
"@tailwindcss/postcss": "^4",
|
|
"@types/node": "^20",
|
|
"@types/nodemailer": "^8.0.1",
|
|
"@types/react": "^19",
|
|
"@types/react-dom": "^19",
|
|
"@types/ws": "^8.18.1",
|
|
"eslint": "^9",
|
|
"eslint-config-next": "16.3.2",
|
|
"tailwindcss": "^4",
|
|
"typescript": "^5"
|
|
}
|
|
}
|