feat(apitest): 新增 API 测试环境与安全配置

- 新增 apitest 专用 MySQL 配置与 Docker 编排(docker/apitest-mysql.yml、docker/apitest-mysql/)

- 增加 ApiTestSecurityConfig / ApiTestSecurityProperties 与 ApiTestAuthenticationFilter

- 新增 application-apitest.yml 与相关测试目录(play-admin/src/test/java/com/starry/admin/api/)

- 调整根 pom 与 play-admin/pom 依赖,优化 SpringSecurityConfig 以兼容 apitest
This commit is contained in:
irving
2025-10-31 20:40:21 -04:00
parent fb2bd510b1
commit f3480b6ba0
14 changed files with 751 additions and 1 deletions

View File

@@ -0,0 +1,82 @@
spring:
application:
name: admin-tenant-apitest
flyway:
table: admin_flyway_schema_history
baseline-on-migrate: true
baseline-version: 1
enabled: true
locations: classpath:db/migration
clean-disabled: false
validate-on-migrate: false
out-of-order: false
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:33306/peipei_apitest?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false&allowMultiQueries=true&rewriteBatchedStatements=true
username: apitest
password: apitest
druid:
enable: true
db-type: mysql
filters: stat,wall
max-active: 20
initial-size: 1
max-wait: 60000
min-idle: 1
time-between-eviction-runs-millis: 60000
min-evictable-idle-time-millis: 300000
validation-query: select 'x'
test-while-idle: true
test-on-borrow: false
test-on-return: false
pool-prepared-statements: true
max-open-prepared-statements: 20
web-stat-filter:
enabled: false
stat-view-servlet:
enabled: false
redis:
host: 127.0.0.1
database: 0
port: 36379
password:
timeout: 3000ms
task:
scheduling:
enabled: false
execution:
shutdown:
await-termination: true
await-termination-period: 5s
logging:
level:
root: info
com.starry: debug
jwt:
tokenHeader: X-Test-Token
tokenHead: Bearer
secret: apitest-secret
expiration: 360000
token:
header: Authorization
secret: apitest-override-secret
expireTime: 60
xl:
login:
authCode:
enable: false
apitest:
security:
tenant-header: X-Tenant
user-header: X-Test-User
defaults:
tenant-id: tenant-apitest
user-id: apitest-user
roles:
- ROLE_TESTER
permissions: []