syntaxbullet
121c242168
fix: handle permission denied on backup directory
...
Deploy to Production / test (push) Successful in 35s
The backups directory may have been created by Docker/root, making it
unwritable by the deploy user. The script now detects this and attempts
to fix permissions automatically (chmod, then sudo chown as fallback).
Also added shared/db/backups to .gitignore.
2026-02-13 14:48:06 +01:00
syntaxbullet
942875e8d0
fix: replace 'source .env' with safe env loader in all scripts
...
Deploy to Production / test (push) Successful in 34s
The raw 'source .env' pattern breaks when values contain special bash
characters like ) in passwords or database URLs. This caused deploy:remote
to fail with 'syntax error near unexpected token )'.
Changes:
- Created shared/scripts/lib/load-env.sh: reads .env line-by-line with
export instead of source, safely handling special characters
- Updated db-backup.sh, db-restore.sh, deploy-remote.sh, remote.sh to
use the shared loader
- Reordered deploy-remote.sh: git pull now runs first (step 1) so the
remote always has the latest scripts before running backup (step 2)
2026-02-13 14:46:30 +01:00
syntaxbullet
aca5538d57
chore: improve DX scripts, fix test suite, and harden tooling
...
Deploy to Production / test (push) Successful in 32s
Scripts:
- remote.sh: remove unused open_browser() function
- deploy-remote.sh: add DB backup before deploy, --skip-backup flag, step numbering
- db-backup.sh: fix macOS compat (xargs -r is GNU-only), use portable approach
- db-restore.sh: add safety backup before restore, SQL file validation, file size display
- logs.sh: default to no-follow with --tail=100, order-independent arg parsing
- docker-cleanup.sh: add Docker health check, colored output
- test-sequential.sh: exclude *.integration.test.ts by default, add --integration flag
- simulate-ci.sh: pass --integration flag (has real DB)
Tests:
- db.test.ts: fix mock path from ./DrizzleClient to @shared/db/DrizzleClient
- server.settings.test.ts: rewrite mocks for gameSettingsService (old config/saveConfig removed)
- server.test.ts: add missing config.lootdrop and BotClient mocks, complete DrizzleClient chain
- indexes.test.ts: rename to indexes.integration.test.ts (requires live DB)
Config:
- package.json: test script uses sequential runner, add test:ci and db:restore aliases
- deploy.yml: use --integration flag in CI (has Postgres service)
2026-02-13 14:39:02 +01:00
syntaxbullet
6eb4a32a12
refactor: consolidate config types and remove file-based config
...
Tickets: #2 , #3
- Remove duplicate type definitions from shared/lib/config.ts
- Import types from schema files (game-settings.ts, guild-settings.ts)
- Add GuildConfig interface to guild-settings.ts schema
- Rename ModerationConfig to ModerationCaseConfig in moderation.service.ts
- Delete shared/config/config.json and shared/scripts/migrate-config-to-db.ts
- Update settings API to use gameSettingsService exclusively
- Return DB format (strings) from API instead of runtime BigInts
- Fix moderation service tests to pass config as parameter
Breaking Changes:
- Removes legacy file-based configuration system
- API now returns database format with string values for BigInt fields
2026-02-13 13:24:02 +01:00
syntaxbullet
c2b1fb6db1
feat: implement database-backed game settings with a new schema, service, and migration script.
Deploy to Production / test (push) Failing after 26s
2026-02-12 16:42:40 +01:00
syntaxbullet
610d97bde3
feat(scripts): add config migration script for guild settings
...
Add script to migrate existing config.json values to database with
bun run db:migrate-config command.
2026-02-12 15:02:05 +01:00
syntaxbullet
11c589b01c
chore: stop opening browser automatically when connecting to remote
Deploy to Production / test (push) Successful in 43s
2026-02-06 13:11:16 +01:00
syntaxbullet
109b36ffe2
chore: bump version, add deployment script
Deploy to Production / test (push) Successful in 52s
2026-02-05 13:05:07 +01:00
syntaxbullet
95f1b4e04a
ci: Update test database host in deployment workflow and add support for running specific tests in the CI simulation script.
Deploy to Production / test (push) Failing after 38s
Deploy to Production / build (push) Has been skipped
Deploy to Production / deploy (push) Has been skipped
2026-01-30 16:42:59 +01:00
syntaxbullet
62c6ca5e87
fix: Replace localhost with 127.0.0.1 in database connection URLs within CI/deployment scripts.
Deploy to Production / test (push) Failing after 35s
Deploy to Production / build (push) Has been skipped
Deploy to Production / deploy (push) Has been skipped
2026-01-30 16:34:14 +01:00
syntaxbullet
aac9be19f2
feat: Add a script to simulate CI locally by setting up a temporary PostgreSQL database, running tests, and updating dependencies.
Deploy to Production / test (push) Failing after 32s
Deploy to Production / build (push) Has been skipped
Deploy to Production / deploy (push) Has been skipped
2026-01-30 16:30:26 +01:00
syntaxbullet
9a2fc101da
chore: Enhance database debugging setup and expand test mocks for Drizzle queries and Discord API interactions.
Deploy to Production / test (push) Failing after 29s
Deploy to Production / build (push) Has been skipped
Deploy to Production / deploy (push) Has been skipped
2026-01-30 16:12:15 +01:00
syntaxbullet
5ff3fa9ab5
feat: Implement a sequential test runner script and integrate it into the deploy workflow.
Deploy to Production / test (push) Failing after 23s
Deploy to Production / build (push) Has been skipped
Deploy to Production / deploy (push) Has been skipped
2026-01-30 15:34:59 +01:00
syntaxbullet
1a3f5c6654
feat: Introduce scripts for database backup, restore, and log viewing, replacing remote dashboard and studio scripts.
Deploy to Production / test (push) Failing after 22s
Deploy to Production / build (push) Has been skipped
Deploy to Production / deploy (push) Has been skipped
2026-01-30 15:15:22 +01:00
syntaxbullet
f9dafeac3b
Merge branch 'main' of https://git.ayau.me/syntaxbullet/discord-rpg-concept
Deploy to Production / test (push) Failing after 1m27s
Deploy to Production / build (push) Has been skipped
Deploy to Production / deploy (push) Has been skipped
2026-01-30 13:44:04 +01:00
syntaxbullet
1a2bbb011c
feat: Introduce production Docker and CI/CD setup, removing internal documentation and agent workflows.
2026-01-30 13:43:59 +01:00
syntaxbullet
c1da71227d
chore: update cleanup scripts
2026-01-23 13:47:48 +01:00
syntaxbullet
17e636c4e5
feat: Overhaul Docker infrastructure with multi-stage builds, add a cleanup script, and refactor the update service to combine update and requirement checks.
2026-01-17 16:20:33 +01:00
syntaxbullet
a207d511be
docs: clarify drizzle studio access via proxy URL
2026-01-08 18:20:27 +01:00
syntaxbullet
2b641c952d
refactor: move config loading to shared directory
2026-01-08 16:15:55 +01:00