如何告诉Liquibase忽略db.changelog * .xml?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何告诉Liquibase忽略db.changelog * .xml?相关的知识,希望对你有一定的参考价值。
如果在DEV环境中创建数据库,我想liquibase创建一组单元测试功能。
我知道我可以为每个单元测试函数创建一个带有“context”属性的“changeset”标签,但是如果可能的话我想避免这种情况。
理想的是将“context”与“includeAll”标记一起使用,例如:
<includeAll path="./sql/UnitTest/" context="dev" />
但遗憾的是,这是不受支持的。
或者因为我有几个更改日志:
db.changelog.xml
include db.changelog-tables.xml
include db.changelog-functions.xml
...
include db.changelog-unit_test_functions.xml
如果我可以告诉LiquiBase基于命令行参数跳过运行“db.changelog-unit_test_functions.xml”,这也是可行的。
但是,“include”元素中不允许使用“context”属性。
<include file="./sql/db.changelog-unit-test.xml" context="dev" />
我尝试将“前置条件”测试附加到db.changelog-unit-test.xml但是无法执行所有db.changelogs。
有没有人对如何避免编写粒度db.changelog-unit-test.xml有任何聪明的想法?
谢谢!
include
或includeAll
中的上下文工作从3.5注意你文件中的xsd定义 - 你需要在那里租用http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd,否则你的文件即使在运行版本较新时也不会验证3.5
以上是关于如何告诉Liquibase忽略db.changelog * .xml?的主要内容,如果未能解决你的问题,请参考以下文章
Hibernate 不使用 Liquibase 中定义的序列
Liquibase CSV loadData 失败,带引号的字符串包含逗号
如何告诉 Prettier 忽略 package.json 文件?