# Local Kind cluster values for Hades
# Use: helm upgrade --install hades . -f values-local.yaml -n hades --create-namespace
# Allow non-Bitnami images in MySQL subchart
global:
security:
allowInsecureImages: true
replicaCount: 1
# Common labels for testing - enables Backstage Kubernetes plugin discovery
commonLabels:
backstage.io/kubernetes-id: "hades-service"
image:
repository: europe-west1-docker.pkg.dev/prj-onlinesales-stag-01/os-docker-images/onlinesales/prod/services/java/hadesv2
pullPolicy: IfNotPresent
tag: "1768801027872"
# Minimal resources for local development
resources:
limits:
cpu: 1000m
memory: 1Gi
requests:
cpu: 250m
memory: 256Mi
# Disable health probes for local development by setting them to null
# Enable them once you identify a working endpoint in your application
livenessProbe: null
readinessProbe: null
# Development environment variables
env:
#- name: JAVA_OPTS
# value: "-Djava.security.egd=file:/dev/./urandom -Xms256m -Xmx1024m"
- name: CATALINA_OPTS
value: "-Denv=test"
- name: APP_ENV
value: test
#- name: TZ
# value: "UTC"
#- name: LOG_LEVEL
# value: "DEBUG"
# Enable Tomcat HTTP request logging via system properties
#- name: TOMCAT_ACCESS_LOG_ENABLED
# value: "true"
# Log all Catalina, Host, and Context events
#- name: JAVA_TOOL_OPTIONS
# value: "-Dorg.apache.catalina.core.StandardEngine.level=ALL -Dorg.apache.catalina.core.StandardHost.level=ALL"
autoscaling:
enabled: false
ingress:
enabled: false
service:
type: ClusterIP
port: 8080
targetPort: 8080
# MySQL configuration for local development (WSO2 Helm Chart)
mysql:
enabled: true
image: "biarms/mysql"
imageTag: "5.7"
mysqlRootPassword: "local-root-pass"
mysqlDatabase: "hades_db"
mysqlUser: "hades_user"
mysqlPassword: "local-hades-pass"
fullnameOverride: "hades-mysql-db-service"
# Pod labels for MySQL pods - enables Backstage Kubernetes plugin discovery
podLabels:
backstage.io/kubernetes-id: "hades-service"
persistence:
enabled: false # Use emptyDir for local testing
resources:
limits:
cpu: 500m
memory: 512Mi
requests:
cpu: 100m
memory: 256Mi
livenessProbe:
initialDelaySeconds: 5
readinessProbe:
initialDelaySeconds: 5
configurationFiles:
mysql.cnf: |-
[mysqld]
max_connections = 200
character-set-server=latin1
collation-server=latin1_swedish_ci
default_authentication_plugin=mysql_native_password
log-bin-trust-function-creators=1
# Enable database initialization to run SQL migrations
dbInit:
enabled: true
allhosts:
enabled: true
# Configuration files for local development
config:
enabled: true
files:
hades.cfg: |
{
test: {
logConfig: "/etc/onlinesales/config/hades/log.cfg",
hades_hibernate_config_read: "/etc/onlinesales/config/hades/hibernate.cfg.xml",
hades_hibernate_config_write: "/etc/onlinesales/config/hades/hibernate.cfg.xml",
rest_accessor_config_file: "/etc/onlinesales/config/hades/restAccessor.cfg",
forgot_password_email_config_file: "/etc/onlinesales/config/hades/forgotPasswordEmailSender.cfg",
activation_email_config_file: "/etc/onlinesales/config/hades/activationEmailConfigFile.cfg",
invitation_email_config_file: "/etc/onlinesales/config/hades/invitationEmailConfigFile.cfg",
grant_revoke_config_file: "/etc/onlinesales/config/hades/grantRevoke.cfg",
stats_logging_config: "/etc/onlinesales/config/hades/statsLogging.cfg",
sms_sender_lib_config: "/etc/onlinesales/config/hades/smsSenderLib.cfg",
context_key: "/etc/onlinesales/config/hades/contextKey.cfg",
is_app_ip_enabled: "true",
firebase_admin_sdk_config: "/etc/onlinesales/config/hades/firebaseAdminConfig.cfg",
firebase_data_url: "https://os-login-656b5.firebaseio.com",
failed_events_file: "/tmp/hades_failed_events.err",
user_signup_email_config_file: "/etc/onlinesales/config/hades/userSignupEmailConfigFile.cfg"
}
}
authConfig.cfg: |
{
prod: {
hades_auth_url : "http://localhost:8080/hadesV2/authorize",
auth_enable : true
},
test: {
hades_auth_url : "http://localhost:8080/hadesV2/authorize",
auth_enable : true
}
}
statsLogging.cfg: |
{
test: {
metric_name_prefix: "",
statsd_host: "localhost",
statsd_port: "8125",
logging_enabled: "true",
},
prod: {
metric_name_prefix: "",
statsd_host: "localhost",
statsd_port: "8125",
logging_enabled: "true",
}
}
smsSenderLib.cfg: |
{
prod: {
"username": "smsUser",
"password": "xxxxxx",
"sms_client_sender" : "SOKRAT",
"validity_minutes" : "15",
"sms_template" : "Your%20login%20OTP%20is%20__OTP__%20.%20Treat%20this%20as%20confidential.%20The%20OTP%20will%20be%20valid%20for%20next%20__VALIDITY__%20minutes."
},
test: {
"username": "smsUser",
"password": "xxxxxx",
"sms_client_sender" : "SOKRAT",
"validity_minutes" : "15",
"sms_template" : "Your%20login%20OTP%20is%20__OTP__%20.%20Treat%20this%20as%20confidential.%20The%20OTP%20will%20be%20valid%20for%20next%20__VALIDITY__%20minutes."
}
}
contextKey.cfg: |
{
prod: {
serviceAuthKey: "key"
},
test: {
serviceAuthKey: "key"
}
}
grantRevoke.cfg: |
{
prod:
{
"application": "TEST_APP",
"ipAddresses": "127.0.0.1"
},
test:
{
"application": "TEST_APP",
"ipAddresses": "127.0.0.1"
}
}
firebaseAdminConfig.cfg: |
{
"type": "service_account",
"private_key_id": "abc",
"private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDY3E8o1NEFcjMM\nHW/5ZfFJw29/8NEqpViNjQIx95Xx5KDtJ+nWn9+OW0uqsSqKlKGhAdAo+Q6bjx2c\nuXVsXTu7XrZUY5Kltvj94DvUa1wjNXs606r/RxWTJ58bfdC+gLLxBfGnB6CwK0YQ\nxnfpjNbkUfVVzO0MQD7UP0Hl5ZcY0Puvxd/yHuONQn/rIAieTHH1pqgW+zrH/y3c\n59IGThC9PPtugI9ea8RSnVj3PWz1bX2UkCDpy9IRh9LzJLaYYX9RUd7++dULUlat\nAaXBh1U6emUDzhrIsgApjDVtimOPbmQWmX1S60mqQikRpVYZ8u+NDD+LNw+/Eovn\nxCj2Y3z1AgMBAAECggEAWDBzoqO1IvVXjBA2lqId10T6hXmN3j1ifyH+aAqK+FVl\nGjyWjDj0xWQcJ9ync7bQ6fSeTeNGzP0M6kzDU1+w6FgyZqwdmXWI2VmEizRjwk+/\n/uLQUcL7I55Dxn7KUoZs/rZPmQDxmGLoue60Gg6z3yLzVcKiDc7cnhzhdBgDc8vd\nQorNAlqGPRnm3EqKQ6VQp6fyQmCAxrr45kspRXNLddat3AMsuqImDkqGKBmF3Q1y\nxWGe81LphUiRqvqbyUlh6cdSZ8pLBpc9m0c3qWPKs9paqBIvgUPlvOZMqec6x4S6\nChbdkkTRLnbsRr0Yg/nDeEPlkhRBhasXpxpMUBgPywKBgQDs2axNkFjbU94uXvd5\nznUhDVxPFBuxyUHtsJNqW4p/ujLNimGet5E/YthCnQeC2P3Ym7c3fiz68amM6hiA\nOnW7HYPZ+jKFnefpAtjyOOs46AkftEg07T9XjwWNPt8+8l0DYawPoJgbM5iE0L2O\nx8TU1Vs4mXc+ql9F90GzI0x3VwKBgQDqZOOqWw3hTnNT07Ixqnmd3dugV9S7eW6o\nU9OoUgJB4rYTpG+yFqNqbRT8bkx37iKBMEReppqonOqGm4wtuRR6LSLlgcIU9Iwx\nyfH12UWqVmFSHsgZFqM/cK3wGev38h1WBIOx3/djKn7BdlKVh8kWyx6uC8bmV+E6\nOoK0vJD6kwKBgHAySOnROBZlqzkiKW8c+uU2VATtzJSydrWm0J4wUPJifNBa/hVW\ndcqmAzXC9xznt5AVa3wxHBOfyKaE+ig8CSsjNyNZ3vbmr0X04FoV1m91k2TeXNod\njMTobkPThaNm4eLJMN2SQJuaHGTGERWC0l3T18t+/zrDMDCPiSLX1NAvAoGBAN1T\nVLJYdjvIMxf1bm59VYcepbK7HLHFkRq6xMJMZbtG0ryraZjUzYvB4q4VjHk2UDiC\nlhx13tXWDZH7MJtABzjyg+AI7XWSEQs2cBXACos0M4Myc6lU+eL+iA+OuoUOhmrh\nqmT8YYGu76/IBWUSqWuvcpHPpwl7871i4Ga/I3qnAoGBANNkKAcMoeAbJQK7a/Rn\nwPEJB+dPgNDIaboAsh1nZhVhN5cvdvCWuEYgOGCPQLYQF0zmTLcM+sVxOYgfy8mV\nfbNgPgsP5xmu6dw2COBKdtozw0HrWSRjACd1N4yGu75+wPCcX/gQarcjRcXXZeEa\nNtBLSfcqPULqD+h7br9lEJio\n-----END PRIVATE KEY-----\n",
"client_email": "123-abc@developer.gserviceaccount.com",
"client_id": "123-abc.apps.googleusercontent.com",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "http://localhost:8080/token"
}
log.cfg: |
log4j.rootLogger=DEBUG, root
log4j.logger.org.hibernate=ERROR, root
log4j.logger.SOKRATI=DEBUG, root
log4j.appender.root=org.apache.log4j.ConsoleAppender
log4j.appender.root.layout=org.apache.log4j.PatternLayout
log4j.appender.root.layout.ConversionPattern=<%d> %5p [%t](%c) - %m%n
log4j.additivity.SOKRATI=false
log4j.logger.SOKRATI_METRICS=OFF, A3
log4j.appender.A3=org.apache.log4j.ConsoleAppender
log4j.appender.A3.layout=org.apache.log4j.PatternLayout
log4j.appender.A3.layout.ConversionPattern=<%d> %5p [%t](%c) - %m%n
log4j.additivity.SOKRATI_METRICS=false
restAccessor.cfg: |
{
"post_new_notifications": {
url: 'http://localhost/notificationsService/notifications',
type: post,
response: com.sokrati.notificationsSvcObjects.PostNotificationsResponse
},
"post_events": {
"url": "http://localhost/eventManagerServiceV2/events",
"type": "post",
"response": "com.sokrati.eventManagerSvcObjectsV2.PostEventsResponse"
}
}
forgotPasswordEmailSender.cfg: |
{
test: {
onlinesales:
{
subject : "Reset your password",
sender : "",
userId : 13690,
clientId : 547,
defaultDomain : "test.onlinesales.ai",
emailMessage : "Hi __USER_NAME__,
Please set a new password here.
If the above link does not work, then copy paste the following link in your browser
__DOMAIN_NAME__?activation_code=__ACTIVATION_CODE__&email=__USER_EMAIL__
Cheers
"
}
}
}
activationEmailConfigFile.cfg: |
{
test: {
browser:
{
subject : "Sokrati Email Verification",
sender : "shops@onlinesales.ai",
userId : 13690,
clientId : 547,
defaultDomain : "test.onlinesales.ai",
redirectUrl : "https://shops.onlinesales.ai",
emailMessage : "