54 Commits

Author SHA1 Message Date
7a9c1db489 fix: use configurable root credentials for dbinit job via values.yaml
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>
2026-04-28 14:17:52 +05:30
ffb6b84b3c fix: revert database.username to hades_user (Backstage overrides this value)
The values.yaml database.username has no effect when Backstage deploys
with mysql.enabled=false — Backstage passes the username from the UI.
The shared MySQL init SQL needs to create hades_user separately.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-28 14:09:06 +05:30
91b0f32c79 fix: use correct external DB username and allow dbinit for shared MySQL
- 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>
2026-04-28 14:00:13 +05:30
e7e5e77af3 fix: mount config at /etc/onlinesales/config/hadesV2 for hadesV3
HadesV3 reads config from hardcoded path /etc/onlinesales/config/hadesV2/
but chart only mounted at /etc/onlinesales/config/hades/. App fell back
to image defaults with is_app_ip_enabled=true.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 14:44:45 +05:30
c525455841 fix: disable IP validation for test-framework environments
Set is_app_ip_enabled to false so hades endpoints are accessible
without IP whitelist restrictions in test environments.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 12:31:09 +05:30
7ede16d79e fix: add hades.read/write.hibernate.cfg.xml configurable from values
App expects separate read/write hibernate configs at
/etc/onlinesales/db/hadesV2/. Added both files in values-local.yaml
with templated DB creds. Changed configmap to use tpl for rendering.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 11:23:17 +05:30
ca2e78769e fix: run container as root to fix Tomcat directory permission errors
Test-framework pods need write access to Tomcat dirs like webapps,
conf/Catalina, work. Running as root (user 0) permanently fixes this.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 17:20:08 +05:30
4a8d031c87 fix: add configurable tomcatWritableDirs for non-root pod support
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>
2026-04-09 17:02:47 +05:30
57314032c3 fix: skip dbinit job when using external DB
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>
2026-04-09 16:46:23 +05:30
53d86cd48b fix: use configurable db username in dbinit job instead of hardcoded root
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>
2026-04-09 16:40:49 +05:30
e7899972e2 fix: make config mountPaths configurable to resolve path mismatch
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>
2026-04-09 16:31:56 +05:30
6df483b0b0 Merge pull request 'Fix access_permissions INSERT column count mismatch' (#3) from bugfix/hadesSql into main 2026-03-16 17:58:29 +00:00
fd7e97ce35 Fix access_permissions INSERT to use explicit column names
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>
2026-03-16 23:22:14 +05:30
f75b733465 Merge pull request 'fix: add DROP TRIGGER IF EXISTS before CREATE TRIGGER for idempotent re-runs' (#2) from bugfix/hadesSql into main
Reviewed-on: #2
2026-03-12 07:15:47 +00:00
077835d68e fix: add DROP TRIGGER IF EXISTS before CREATE TRIGGER for idempotent re-runs
- 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>
2026-03-12 12:44:51 +05:30
8bb0c1392c Merge pull request 'fix: make dbinit SQL idempotent to prevent data wipe on re-runs' (#1) from bugfix/hadesSql into main
Reviewed-on: #1
2026-03-12 07:02:37 +00:00
a31616a6c9 fix: make dbinit SQL idempotent to prevent data wipe on re-runs
- 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>
2026-03-12 12:26:39 +05:30
Vaibhav Pathak
03f90680e6 init job fix -5 2026-02-24 12:13:32 +05:30
Vaibhav Pathak
aa079d30b3 init job fix -4 2026-02-24 12:07:03 +05:30
Vaibhav Pathak
3b1918978a init job fix -4 2026-02-24 12:06:42 +05:30
Vaibhav Pathak
73eb35db36 init job fix -3 2026-02-24 11:42:15 +05:30
Vaibhav Pathak
1a0d0682a5 init job fix -2 2026-02-24 11:22:05 +05:30
Vaibhav Pathak
eb187355ee Fix database name to match migration scripts
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>
2026-02-24 10:30:22 +05:30
Vaibhav Pathak
c12eb66886 Shared Mysql fix 3 2026-02-23 17:16:58 +05:30
Vaibhav Pathak
45df072ad6 Shared Mysql fix 2 2026-02-23 16:57:16 +05:30
Vaibhav Pathak
bb3d9464e2 mysql pvc added 2026-02-19 12:21:32 +05:30
Vaibhav Pathak
8784f7df6d mysql pvc added 2026-02-19 12:03:50 +05:30
Vaibhav Pathak
e7760fbc42 CR issue fix 2026-02-17 13:40:04 +05:30
Vaibhav Pathak
9a7e4bc8e9 label updated 2026-02-17 11:56:26 +05:30
Vaibhav Pathak
96efc1f62a nginx removed 2026-02-12 17:07:09 +05:30
Vaibhav Pathak
d9186f80cc argocd cofig change 2026-02-11 13:58:14 +05:30
Vaibhav Pathak
be5f5d9a0a testing 2026-02-04 17:30:40 +05:30
Vaibhav Pathak
35daa24507 lifecycle name chage 2026-02-04 17:28:00 +05:30
Vaibhav Pathak
1ca65959af AES key added 2026-02-03 10:12:56 +05:30
Vaibhav Pathak
84b9b491c3 Argocd selector updated 2026-01-23 11:16:38 +05:30
Vaibhav Pathak
721ef7ee6b allhosts mount point changed 2026-01-22 11:49:34 +05:30
Vaibhav Pathak
d7e307241c config reloader lable added 2026-01-21 20:49:40 +05:30
Vaibhav Pathak
0c4eb056fd allhosts file removed 2026-01-21 19:49:10 +05:30
Vaibhav Pathak
a7cbc4e156 allhost issue fixed 2026-01-21 16:06:12 +05:30
Vaibhav Pathak
61bd33ae55 Allhost entry removed 2026-01-21 15:28:52 +05:30
Vaibhav Pathak
e98155714e Updated flow for allhost entry 2026-01-21 15:06:18 +05:30
Vaibhav Pathak
fd5284768d Merge branch 'main' of https://gitea.os-tf-qa.onlinesales.ai/gitea_admin/hades-chart 2026-01-21 15:04:55 +05:30
Vaibhav Pathak
fd05a38585 Updated flow for allhost entry 2026-01-21 15:03:15 +05:30
2c91b74f59 Update hades/values-local.yaml 2026-01-19 10:06:30 +00:00
Vaibhav Pathak
08f2ff746c lable issue fixed 2026-01-19 14:33:56 +05:30
d956678118 Update catalog-info.yaml 2026-01-17 11:31:11 +00:00
Vaibhav Pathak
f70982a5ad initial 2026-01-16 15:00:18 +05:30
Vaibhav Pathak
8381d4db83 Add ssl-redirect annotation to ingress defaults 2026-01-06 14:06:21 +05:30
Vaibhav Pathak
0a9cbaad46 Add ingress template to Hades Helm chart
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>
2026-01-06 13:02:20 +05:30
Vaibhav Pathak
94ba582e96 helm chart added 2026-01-06 10:46:18 +05:30