カスタム プロパティが設定されている場合、前提条件要素をチェックインする方法が見つかりませんでした。
この問題についてこれまでにわかったことはこちらです。チケットのコメントが示すように、CustomPreconditionを拡張しても、API を変更しないと役に立ちません。別の方法はありますか?
カスタム プロパティが設定されている場合、前提条件要素をチェックインする方法が見つかりませんでした。
この問題についてこれまでにわかったことはこちらです。チケットのコメントが示すように、CustomPreconditionを拡張しても、API を変更しないと役に立ちません。別の方法はありますか?
ドキュメントには、changeLogPropertyDefined前提条件が記載されています。
次の例は私にとってはうまくいきました:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-2.0.xsd">
<changeSet author="mark (generated)" id="mark-1">
<preConditions onFail="HALT">
<changeLogPropertyDefined property="testing" value="1"/>
</preConditions>
<createTable tableName="TEST001">
<column name="ID" type="VARCHAR(10)">
<constraints nullable="false"/>
</column>
<column name="X" type="VARCHAR(9)">
<constraints nullable="false"/>
</column>
<column name="Y" type="DECIMAL(7,2)"/>
<column name="Z" type="DECIMAL(7,2)"/>
</createTable>
</changeSet>
</databaseChangeLog>
私はMavenからliquibaseを実行しています。テスト プロパティは、次のようにコマンド ラインから設定できます。
mvn -Dtesting=1 compile