dbInit.mysqlUser and dbInit.mysqlPasswordKey are now configurable in
values.yaml. Defaults to root/mysql-root-password since SQL migrations
need SUPER privilege for triggers with DEFINER=root@%.
App (hades-service) still connects as hades_user — only the migration
job uses root.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Change database.username from "hades_user" to "mysql_user" to match
the shared MySQL user created by Backstage environment provisioning
- Remove mysql.enabled=true condition from dbinit job so SQL migrations
run against external/shared MySQL databases too
Without these fixes, deploying hades with mysql.enabled=false (Backstage
shared MySQL) causes access denied because hades_user doesn't exist in
the shared MySQL, and dbinit is skipped so no tables are created.
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>
- 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