hadesV3 runs as non-root user (1000) and can't write to Tomcat dirs.
Added tomcatWritableDirs config to mount emptyDir volumes at paths
like /usr/local/tomcat/conf/Catalina and /usr/local/tomcat/work.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
When mysql.enabled=false (external DB), data already exists.
Running migrations would be destructive, so dbinit now only
runs when internal MySQL subchart is enabled.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Root user doesn't have access on external DB. Now uses the same
database username helper as the main deployment.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
App looks for config at /etc/onlinesales/db/hadesV2/ but was only
mounted at /etc/onlinesales/config/hades/. Now mountPaths is a list
in values.yaml so both paths can be served.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
INSERT IGNORE without column names fails when extra columns
(alias, is_deleted) are added by hadesv2-auth schema migration.
Specifying columns makes the dump idempotent.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- MySQL 5.7 does not support CREATE TRIGGER IF NOT EXISTS
- Add DROP TRIGGER IF EXISTS before each CREATE TRIGGER in 004_hades.sql (69 triggers) and 002_dump.sql (90 triggers)
- DROP TRIGGER only removes trigger definition, does not affect table data
- Fixes ERROR 1359 (Trigger already exists) when dbinit Job runs multiple times
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Remove all DROP TABLE IF EXISTS statements from 004_hades.sql and 002_dump.sql
- Change CREATE TABLE to CREATE TABLE IF NOT EXISTS
- Change INSERT INTO to INSERT IGNORE INTO for seed data
- Prevents app_contexts table wipe when ArgoCD re-syncs trigger duplicate dbinit Job runs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Changed mysqlDatabase from "hadesdb" to "hades_db" to match what the
migration scripts expect. The 004_hades.sql migration references
hades_db database.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Enable ingress resource creation via Helm values instead of
workflow-created manifests. Supports configurable host, className,
annotations, and TLS settings.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Moved helm/hades/* to hades/ to match ArgoCD path: hades
- Included mysql-1.6.9.tgz subchart for ArgoCD dependency resolution
- Fixed sync wave ordering: dbinit wave 0, deployment wave 1