flywaydb baseline baselineVersion参数被忽略

时间:2015-06-08 22:21:47

标签: flyway

我试图在我们的过程中推动flywaydb。在我们的env中,每个客户端都有自己的DB实例。

我有一个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。

如果通过DB i强制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 |
+---------+-----------------------+---------------------+---------+

这就是我想要的。 但我无法弄清楚如何通过基线命令设置值

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

所有参数都应该传入 - 不是 -