Quarkus Flyway 外部化初始化存在且具有非零退出代码

问题描述 投票:0回答:1

我将 Quarkus 与 Flyway 一起使用,使用外部化 init 意味着我首先使用 QUARKUS_INIT_AND_EXIST 运行 quarkus 容器,然后再运行实际的运行时容器。运行飞行路线然后存在。我正在使用 helm 创建的带有预升级挂钩的作业来执行此操作。

但是,容器存在时为 1 而不是 0,因此 helm 认为它失败了。据我所知,飞行路线迁移是成功的,所以我不明白为什么 quarkus 会以 1 退出。

2023-10-11T14:41:56.805 D [main] io.quarkus.runtime.Application   Shutting down with exit code 1

我的猜测是,由于没有要应用的新迁移(数据库已经是最新的),这可能是原因,但很难从日志中看出。

有什么想法可以调试这个吗?

quarkus flyway
1个回答
0
投票

很难说出哪里出了问题,但让我们尝试找出答案。

当使用

QUARKUS_INIT_AND_EXIST
时,Quarkus使用的退出代码为0。 预期输出应该是:

2023-10-12 07:29:00,045 INFO  [io.quarkus] (main) hello-world stopped in 0.001s

即使没有新的迁移可用,Flyway 本身也不应该有问题。

所以,我猜测问题出在其他地方。

您可以更改日志记录设置,看看我们是否可以从中获取更多信息:https://quarkus.io/guides/logging

您可以尝试使用以下命令在本地运行调试:

QUARKUS_INIT_AND_EXIT=true java -jar target/quarkus-app/quarkus-run.jar

© www.soinside.com 2019 - 2024. All rights reserved.