やりたいこと
1. Continuumで、連結テストの管理をしたい
2. 連結テストの実行前に、Subversionから最新のDDLをチェックアウトして連結環境でDDLを実行する
その為には
1. maven-scm-pluginを使って、Subversionからソースのチェックアウト
2. sql-maven-pluginを使って、DDLの実行
3. maven-antrun-pluginを使って、ゴミファイルの削除
pom.xmlを書いてみた
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-scm-plugin</artifactId> <executions> <execution> <phase>process-test-resources</phase> <goals> <goal>checkout</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>sql-maven-plugin</artifactId> <dependencies> <dependency> <groupId>oracle</groupId> <artifactId>oracle-jdbc-14</artifactId> <version>10.2.0.1.0</version> </dependency> </dependencies> <configuration> <driver>oracle.jdbc.driver.OracleDriver</driver> <url>jdbc:oracle:thin:@localhost:1521:</url> <username>hogehoge</username> <password>hogehoge</password> <settingsKeys>sensibleKey</settingsKeys> </configuration> <executions> <execution> <id>execute-ddl</id> <phase>process-test-resources</phase> <goals> <goal>execute</goal> </goals> <configuration> <fileset> <basedir>${basedir}</basedir> <includes> <include>target/checkout/*.ddl</include> </includes> </fileset> <autocommit>true</autocommit> <onError>continue</onError> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-antrun-plugin</artifactId> <executions> <execution> <id>del</id> <phase>process-test-resources</phase> <configuration> <tasks> <delete dir="target" /> </tasks> </configuration> <goals> <goal>run</goal> </goals> </execution> </executions> </plugin>
不満点
1. Antプラグインを使ってファイルを消している。他に良い方法はないのか?
2. そもそもチェックアウトせずに、DDLを実行する方法はないのか?
誰か教えてください。