Files
kaidi/backend/src/main/resources/application.yml
T
Qiufeng 7394c9e7e4
Release / release (push) Failing after 10s
feat: make reverse proxy operator-managed
2026-08-17 16:24:32 +08:00

109 lines
3.2 KiB
YAML

server:
port: ${SERVER_PORT:18080}
address: ${SERVER_ADDRESS:127.0.0.1}
shutdown: graceful
servlet:
session:
cookie:
name: KAIDI_SESSION
http-only: true
same-site: lax
secure: ${SESSION_COOKIE_SECURE:false}
spring:
application:
name: kaidi-finance
web:
resources:
static-locations: ${FINANCE_STATIC_LOCATIONS:file:./public/}
profiles:
default: local
datasource:
url: ${DB_URL:jdbc:mysql://127.0.0.1:3307/kaidi_finance?useUnicode=true&characterEncoding=utf8&connectionTimeZone=UTC&serverTimezone=UTC}
username: ${DB_USERNAME:kaidi}
password: ${DB_PASSWORD:kaidi_local_2026}
hikari:
maximum-pool-size: 20
minimum-idle: 2
connection-timeout: 10000
# R1 fixes the transaction view used by amount/commitment checks.
transaction-isolation: TRANSACTION_READ_COMMITTED
connection-init-sql: SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED
flyway:
enabled: true
locations: classpath:db/migration
validate-migration-naming: true
session:
timeout: 30m
jdbc:
initialize-schema: never
cleanup-cron: "0 */5 * * * *"
servlet:
multipart:
max-file-size: 100MB
max-request-size: 500MB
jackson:
default-property-inclusion: non_null
time-zone: UTC
mybatis:
configuration:
map-underscore-to-camel-case: true
default-fetch-size: 100
default-statement-timeout: 10
management:
endpoints:
web:
exposure:
include: health,info,metrics
endpoint:
health:
probes:
enabled: true
springdoc:
api-docs:
path: /api-docs
swagger-ui:
path: /swagger-ui.html
finance:
setup:
enabled: ${FINANCE_SETUP_ENABLED:false}
token-sha256: ${FINANCE_SETUP_TOKEN_SHA256:}
env-file: ${FINANCE_SETUP_ENV_FILE:/var/lib/kaidi/setup/application.env}
marker-file: ${FINANCE_SETUP_MARKER_FILE:/var/lib/kaidi/setup/locked}
restart-after-complete: ${FINANCE_SETUP_RESTART_AFTER_COMPLETE:true}
session:
absolute-timeout: ${FINANCE_SESSION_ABSOLUTE_TIMEOUT:8h}
crypto:
field-key: ${FIELD_ENCRYPTION_KEY}
reject-default: ${FIELD_ENCRYPTION_KEY_REJECT_DEFAULT:false}
storage:
root: ${FILE_STORAGE_ROOT:../runtime/files}
temp: ${FILE_STORAGE_TEMP:../runtime/tmp}
max-bytes: 104857600
scanner:
enabled: ${FILE_SCANNER_ENABLED:false}
host: ${FILE_SCANNER_HOST:127.0.0.1}
port: ${FILE_SCANNER_PORT:3310}
connect-timeout-millis: ${FILE_SCANNER_CONNECT_TIMEOUT_MS:2000}
read-timeout-millis: ${FILE_SCANNER_READ_TIMEOUT_MS:30000}
chunk-bytes: 65536
bootstrap:
enabled: false
demo-data: true
update:
enabled: ${FINANCE_UPDATE_ENABLED:false}
current-version: ${APP_VERSION:1.0.0-SNAPSHOT}
current-version-file: ${UPDATE_CURRENT_VERSION_FILE:VERSION}
release-base-url: ${UPDATE_RELEASE_BASE_URL:}
release-api-url: ${UPDATE_RELEASE_API_URL:}
release-token: ${UPDATE_RELEASE_TOKEN:}
request-file: ${UPDATE_REQUEST_FILE:runtime/update/inbox/request.json}
status-file: ${UPDATE_STATUS_FILE:runtime/update/status.json}
connect-timeout: ${UPDATE_CONNECT_TIMEOUT:3s}
read-timeout: ${UPDATE_READ_TIMEOUT:8s}
allow-insecure-url: ${UPDATE_ALLOW_INSECURE_URL:false}