如何让 flyway CLI 列出所有验证失败,而不是在第一次失败时停止

Posted

技术标签:

【中文标题】如何让 flyway CLI 列出所有验证失败,而不是在第一次失败时停止【英文标题】:How can I get flyway CLI to list all validation failures rather than stopping at the first failure 【发布时间】:2021-09-17 15:39:18 【问题描述】:

使用 Flyway CLI 4.1.2 如果我调用validate 并且有多个文件存在校验和不匹配,例如,flyway 只报告第一个:

ERROR: Validate failed: Migration checksum mismatch for migration 2021.01.01

如果我修复它并再次运行 flyway validate,它将在下一个错误时停止

ERROR: Validate failed: Migration checksum mismatch for migration 2021.01.02

我希望立即查看所有验证失败的完整列表,而不必玩whack-a-mole。类似的东西

ERROR: Validate failed: Migration checksum mismatch for migration 2021.01.01
ERROR: Validate failed: Migration checksum mismatch for migration 2021.01.02
ERROR: Validate failed: Detected resolved migration not applied to database: 2021.01.03
ERROR: Validate failed: Detected applied migration not resolved locally: 2021.01.04

我查看了文档中的configuration parameters,但找不到任何看起来正确的内容。

这可能吗?

【问题讨论】:

【参考方案1】:

列出所有验证失败是最近 Flyway 中的标准行为 - 它是在 6.0.3 中添加的,我们现在在 7.11.x 上。您是否考虑过升级,因为 v4.1 有点老?

【讨论】:

以上是关于如何让 flyway CLI 列出所有验证失败,而不是在第一次失败时停止的主要内容,如果未能解决你的问题,请参考以下文章

Flyway:如何在不出现“FlywayException:验证失败”的情况下替换已弃用的 SpringJdbcMigration?

当不需要迁移时,如何让 flyway.cmd 使构建失败?

AngularJS:列出所有表单错误

flyway 命令行工具 - 重新执行失败的 DDL 的选项是啥?

验证失败:检测到的应用迁移未在本地解决 |飞路

根据 Flyway,原始 SQL 脚本现在无效