flywaydb 基线 baselineVersion 参数被忽略

flywaydb baseline baselineVersion parameter is being ignored

我正试图在我们的流程中推动 flywaydb。在我们的环境中,每个客户端都有自己的数据库实例。

我有一个 bash 循环遍历客户端以 运行 迁移。所以命令看起来像

flyway -url=jdbc:jtds:sqlserver://localhost:1434/main_client_$ID migrate

当所有客户端都从基线开始时,这一切都有效。但是当我们添加新客户时,他们的数据库将反映最新的代码。现在我们有从 V1 开始的旧客户端(以及所有到 V2 的迁移脚本)和使用最新 DB V2 的新客户端。

我以为我可以做类似的事情:::

flyway baseline -url=jdbc:jtds:sqlserver://localhost:1434/main_client_3 
                --baselineVersion=2 --baselineDescription="Base 2 version"

但是当我这样做然后调用信息时,我看到类似的内容:

 +---------+-----------------------+---------------------+---------+
 | Version | Description           | Installed on        | State   |
 +---------+-----------------------+---------------------+---------+
 | 1       | << Flyway Baseline >> | 2015-06-08 22:07:54 | Success |
 | 1.1     | update                |                     | Pending |
 | 1.2.0   | update                |                     | Pending |
 | 1.2.1   | update                |                     | Pending |
 +---------+-----------------------+---------------------+---------+

如果我查看数据库,我会看到 schema_version 的版本值设置为 1。

如果通过数据库我将 schema_version 列值强制为 1.2.0 我看到

+---------+-----------------------+---------------------+---------+
| Version | Description           | Installed on        | State   |
+---------+-----------------------+---------------------+---------+
| 1       | Base version initial  |                     | <Baseln |
| 1.1     | update                |                     | <Baseln |
| 1.2.0   | << Flyway Baseline >> | 2015-06-08 22:07:54 | Success |
| 1.2.1   | update                |                     | Pending |
+---------+-----------------------+---------------------+---------+

这就是我想要的。 但是我不知道如何通过基线命令设置值

感谢您的帮助

所有参数都应该用-而不是--

传入