Warm tip: This article is reproduced from serverfault.com, please click

java-docker中的Micronaut测试覆盖了MICRONAUT_ENVIRONMENTS

(java - Micronaut test in docker overriding the MICRONAUT_ENVIRONMENTS)

发布于 2020-12-11 03:41:34

我们在docker容器中的云中运行我们的micronaut集成测试

我们正在docker环境变量中设置MICRONAUT_ENVIRONMENTS = staging,以强制我们的应用程序从application-staging.yaml中读取配置值。

但是,micronaut会自动将“ test”添加为环境,然后从application-test.yaml中读取配置值。

在docs(https://docs.micronaut.io/2.2.1/guide/index.html#propertySource)中,加载配置时,与推导环境相比,环境变量应具有优先级

有什么理由使micronaut在这里优先考虑application-test.yaml值?

Questioner
Patanouk
Viewed
11
Patanouk 2021-01-22 17:19:58

test当micronaut测试运行,甚至设置环境变量时环境添加MICRONAUT_ENVIRONMENTS

经过一番挖掘,似乎在DefaultEnvironment初始化类之前已添加了“测试”环境,因此即使将micronaut.env.deduction其设置为false也会添加它