至少在我一直试图使用它的项目中,liquibase中的includeAll
标记根本不起作用。
我的环境:
Liquibase配置(存储在src / main / resources /下)
db / changelog-master.yaml:
databaseChangeLog:
- preConditions:
- dbms:
type: h2
- includeAll:
path: db/changelog/changes
目录src / main / resources / db / changlog / changes由两个测试变更日志文件组成:
00-a-sample_changelog.yml
databaseChangeLog:
- changeSet:
id: 1
author: JonDoe
comment: "Test changeset"
preConditions:
- onFail: WARN
- not:
- tableExists:
schemaName: public
tableName: liquid-test-jd
changes:
- createTable:
tableName: liquid-test-jd
columns:
- column:
name: test_id
type: number
- column:
name: test_time
type: timestamp
00-b-sample_changelog_cleanup.yml
databaseChangeLog:
- changeSet:
id: 2
author: JonDoe
comment: Cleanup test changeset
preConditions:
- onFail: WARN
- tableExists:
schemaName: public
tableName: liquid-test-jd
changes:
- dropTable:
schemaName: public
tableName: liquid-test-jd
此配置似乎不起作用。什么都没有记录,DATABASECHANGELOG表为空。即使当我尝试仅在目录中存在第一个文件(createTable
一个文件)时,也没有创建新表的迹象。
但是,当我尝试在include
内使用单独的db.changelog-master
语句时,它运行良好。
我知道这个问题涉及Maven - Spring - Liquibase includeAll not work,但症状略有不同。我希望mod也会发现这不是重复的