Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
First step towards MediumTest parallelization to reduce build times
- Loading branch information
Showing
with
1,874 additions
and 1,535 deletions.
- +169 −168 flyway-ant-largetest/pom.xml
- +168 −167 flyway-commandline-largetest/pom.xml
- +232 −227 flyway-core/pom.xml
- +34 −110 flyway-core/src/main/java/com/googlecode/flyway/core/Flyway.java
- +0 −19 flyway-core/src/main/java/com/googlecode/flyway/core/clean/package-info.java
- +22 −14 flyway-core/src/main/java/com/googlecode/flyway/core/{clean/DbCleaner.java → command/DbClean.java}
- +32 −20 flyway-core/src/main/java/com/googlecode/flyway/core/{init → command}/DbInit.java
- +16 −16 ...ore/src/main/java/com/googlecode/flyway/core/{migration/DbMigrator.java → command/DbMigrate.java}
- +95 −0 flyway-core/src/main/java/com/googlecode/flyway/core/command/DbSchemas.java
- +144 −0 flyway-core/src/main/java/com/googlecode/flyway/core/command/DbValidate.java
- +1 −1 flyway-core/src/main/java/com/googlecode/flyway/core/{init → command}/package-info.java
- +7 −1 flyway-core/src/main/java/com/googlecode/flyway/core/dbsupport/Table.java
- +259 −258 flyway-core/src/main/java/com/googlecode/flyway/core/info/MigrationInfoServiceImpl.java
- +22 −1 flyway-core/src/main/java/com/googlecode/flyway/core/metadatatable/MetaDataTable.java
- +102 −81 flyway-core/src/main/java/com/googlecode/flyway/core/metadatatable/MetaDataTableImpl.java
- +78 −76 flyway-core/src/main/java/com/googlecode/flyway/core/util/jdbc/TransactionTemplate.java
- +103 −102 flyway-core/src/main/java/com/googlecode/flyway/core/util/scanner/JarFileLocationScanner.java
- +1 −1 flyway-core/src/test/java/com/googlecode/flyway/core/FlywayMediumTest.java
- +1 −1 .../src/test/java/com/googlecode/flyway/core/dbsupport/derby/DerbyConcurrentMigrationMediumTest.java
- +1 −0 .../java/com/googlecode/flyway/core/dbsupport/postgresql/PostgreSQLSuperUserMigrationMediumTest.java
- +8 −26 flyway-core/src/test/java/com/googlecode/flyway/core/info/MigrationInfoDumperSmallTest.java
- +12 −25 flyway-core/src/test/java/com/googlecode/flyway/core/info/MigrationInfoServiceImplSmallTest.java
- +33 −13 flyway-core/src/test/java/com/googlecode/flyway/core/migration/ConcurrentMigrationTestCase.java
- +11 −4 flyway-core/src/test/java/com/googlecode/flyway/core/migration/MigrationTestCase.java
- +17 −0 flyway-core/src/test/resources/migration/concurrent/V1_1__View.sql
- +18 −0 flyway-core/src/test/resources/migration/concurrent/V1_2__Populate_table.sql
- +21 −0 flyway-core/src/test/resources/migration/concurrent/V1__First.sql
- +26 −0 ...ey_and_super_mega_humongous_padding_to_exceed_the_maximum_column_length_in_the_metadata_table.sql
- +55 −54 flyway-maven-plugin-largetest/pom.xml
- +147 −147 ...ay-maven-plugin-largetest/src/test/java/com/googlecode/flyway/maven/largetest/MavenLargeTest.java
- +39 −3 pom.xml
@@ -1,169 +1,170 @@ | ||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||
<modelVersion>4.0.0</modelVersion> | ||
<parent> | ||
<groupId>com.googlecode.flyway</groupId> | ||
<artifactId>flyway-parent</artifactId> | ||
<version>2.0.4-SNAPSHOT</version> | ||
</parent> | ||
<groupId>com.googlecode.flyway</groupId> | ||
<artifactId>flyway-ant-largetest</artifactId> | ||
<version>2.0.4-SNAPSHOT</version> | ||
<packaging>jar</packaging> | ||
<name>${project.artifactId}</name> | ||
<properties> | ||
<unpackDirDist>${project.build.directory}/install/dist</unpackDirDist> | ||
<unpackDirDistWithSpring>${project.build.directory}/install/dist with spring</unpackDirDistWithSpring> | ||
</properties> | ||
<dependencies> | ||
<dependency> | ||
<groupId>${project.groupId}</groupId> | ||
<artifactId>flyway-ant</artifactId> | ||
<version>${project.version}</version> | ||
<classifier>dist</classifier> | ||
<type>zip</type> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>${project.groupId}</groupId> | ||
<artifactId>flyway-ant</artifactId> | ||
<version>${project.version}</version> | ||
<classifier>dist-with-spring</classifier> | ||
<type>zip</type> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>${project.groupId}</groupId> | ||
<artifactId>flyway-sample</artifactId> | ||
<version>${project.version}</version> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>junit</groupId> | ||
<artifactId>junit</artifactId> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.hsqldb</groupId> | ||
<artifactId>hsqldb</artifactId> | ||
<scope>test</scope> | ||
</dependency> | ||
</dependencies> | ||
<build> | ||
<plugins> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-deploy-plugin</artifactId> | ||
<configuration> | ||
<skip>true</skip> | ||
</configuration> | ||
</plugin> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-surefire-plugin</artifactId> | ||
<configuration> | ||
<includes> | ||
<include>**/*LargeTest.java</include> | ||
</includes> | ||
<excludes> | ||
<exclude>**/*SmallTest.java</exclude> | ||
<exclude>**/*MediumTest.java</exclude> | ||
</excludes> | ||
<redirectTestOutputToFile>true</redirectTestOutputToFile> | ||
<systemPropertyVariables> | ||
<installDirDist>${unpackDirDist}</installDirDist> | ||
<installDirDistWithSpring>${unpackDirDistWithSpring}</installDirDistWithSpring> | ||
<pomVersion>${project.version}</pomVersion> | ||
</systemPropertyVariables> | ||
</configuration> | ||
</plugin> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-dependency-plugin</artifactId> | ||
<executions> | ||
<execution> | ||
<id>pre-largetest-dist-unpack</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>unpack-dependencies</goal> | ||
</goals> | ||
<configuration> | ||
<includeArtifactIds>flyway-ant</includeArtifactIds> | ||
<includeClassifiers>dist</includeClassifiers> | ||
<outputDirectory>${unpackDirDist}</outputDirectory> | ||
</configuration> | ||
</execution> | ||
<execution> | ||
<id>pre-largetest-dist-addJars</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>copy-dependencies</goal> | ||
</goals> | ||
<configuration> | ||
<includeArtifactIds>hsqldb,flyway-sample</includeArtifactIds> | ||
<outputDirectory>${unpackDirDist}/jars</outputDirectory> | ||
</configuration> | ||
</execution> | ||
<execution> | ||
<id>pre-largetest-distWithSpring-unpack</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>unpack-dependencies</goal> | ||
</goals> | ||
<configuration> | ||
<includeArtifactIds>flyway-ant</includeArtifactIds> | ||
<includeClassifiers>dist-with-spring</includeClassifiers> | ||
<outputDirectory>${unpackDirDistWithSpring}</outputDirectory> | ||
</configuration> | ||
</execution> | ||
<execution> | ||
<id>pre-largetest-distWithSpring-addJars</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>copy-dependencies</goal> | ||
</goals> | ||
<configuration> | ||
<includeArtifactIds>hsqldb,flyway-sample</includeArtifactIds> | ||
<outputDirectory>${unpackDirDistWithSpring}/jars</outputDirectory> | ||
</configuration> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-resources-plugin</artifactId> | ||
<executions> | ||
<execution> | ||
<id>pre-largetest-dist-addSql</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>copy-resources</goal> | ||
</goals> | ||
<configuration> | ||
<resources> | ||
<resource> | ||
<directory>${basedir}/src/test/resources</directory> | ||
</resource> | ||
</resources> | ||
<outputDirectory>${unpackDirDist}/tests</outputDirectory> | ||
</configuration> | ||
</execution> | ||
<execution> | ||
<id>pre-largetest-distWithSpring-addSql</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>copy-resources</goal> | ||
</goals> | ||
<configuration> | ||
<resources> | ||
<resource> | ||
<directory>${basedir}/src/test/resources</directory> | ||
</resource> | ||
</resources> | ||
<outputDirectory>${unpackDirDistWithSpring}/tests</outputDirectory> | ||
</configuration> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
</plugins> | ||
</build> | ||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||
<modelVersion>4.0.0</modelVersion> | ||
<parent> | ||
<groupId>com.googlecode.flyway</groupId> | ||
<artifactId>flyway-parent</artifactId> | ||
<version>2.0.4-SNAPSHOT</version> | ||
</parent> | ||
<groupId>com.googlecode.flyway</groupId> | ||
<artifactId>flyway-ant-largetest</artifactId> | ||
<version>2.0.4-SNAPSHOT</version> | ||
<packaging>jar</packaging> | ||
<name>${project.artifactId}</name> | ||
<properties> | ||
<unpackDirDist>${project.build.directory}/install/dist</unpackDirDist> | ||
<unpackDirDistWithSpring>${project.build.directory}/install/dist with spring</unpackDirDistWithSpring> | ||
</properties> | ||
<dependencies> | ||
<dependency> | ||
<groupId>${project.groupId}</groupId> | ||
<artifactId>flyway-ant</artifactId> | ||
<version>${project.version}</version> | ||
<classifier>dist</classifier> | ||
<type>zip</type> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>${project.groupId}</groupId> | ||
<artifactId>flyway-ant</artifactId> | ||
<version>${project.version}</version> | ||
<classifier>dist-with-spring</classifier> | ||
<type>zip</type> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>${project.groupId}</groupId> | ||
<artifactId>flyway-sample</artifactId> | ||
<version>${project.version}</version> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>junit</groupId> | ||
<artifactId>junit</artifactId> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.hsqldb</groupId> | ||
<artifactId>hsqldb</artifactId> | ||
<scope>test</scope> | ||
</dependency> | ||
</dependencies> | ||
<build> | ||
<plugins> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-deploy-plugin</artifactId> | ||
<configuration> | ||
<skip>true</skip> | ||
</configuration> | ||
</plugin> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-surefire-plugin</artifactId> | ||
<configuration> | ||
<includes> | ||
<include>**/*LargeTest.java</include> | ||
</includes> | ||
<excludes> | ||
<exclude>**/*SmallTest.java</exclude> | ||
<exclude>**/*MediumTest.java</exclude> | ||
</excludes> | ||
<redirectTestOutputToFile>true</redirectTestOutputToFile> | ||
<systemPropertyVariables> | ||
<installDirDist>${unpackDirDist}</installDirDist> | ||
<installDirDistWithSpring>${unpackDirDistWithSpring}</installDirDistWithSpring> | ||
<pomVersion>${project.version}</pomVersion> | ||
</systemPropertyVariables> | ||
<parallel>none</parallel> | ||
</configuration> | ||
</plugin> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-dependency-plugin</artifactId> | ||
<executions> | ||
<execution> | ||
<id>pre-largetest-dist-unpack</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>unpack-dependencies</goal> | ||
</goals> | ||
<configuration> | ||
<includeArtifactIds>flyway-ant</includeArtifactIds> | ||
<includeClassifiers>dist</includeClassifiers> | ||
<outputDirectory>${unpackDirDist}</outputDirectory> | ||
</configuration> | ||
</execution> | ||
<execution> | ||
<id>pre-largetest-dist-addJars</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>copy-dependencies</goal> | ||
</goals> | ||
<configuration> | ||
<includeArtifactIds>hsqldb,flyway-sample</includeArtifactIds> | ||
<outputDirectory>${unpackDirDist}/jars</outputDirectory> | ||
</configuration> | ||
</execution> | ||
<execution> | ||
<id>pre-largetest-distWithSpring-unpack</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>unpack-dependencies</goal> | ||
</goals> | ||
<configuration> | ||
<includeArtifactIds>flyway-ant</includeArtifactIds> | ||
<includeClassifiers>dist-with-spring</includeClassifiers> | ||
<outputDirectory>${unpackDirDistWithSpring}</outputDirectory> | ||
</configuration> | ||
</execution> | ||
<execution> | ||
<id>pre-largetest-distWithSpring-addJars</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>copy-dependencies</goal> | ||
</goals> | ||
<configuration> | ||
<includeArtifactIds>hsqldb,flyway-sample</includeArtifactIds> | ||
<outputDirectory>${unpackDirDistWithSpring}/jars</outputDirectory> | ||
</configuration> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-resources-plugin</artifactId> | ||
<executions> | ||
<execution> | ||
<id>pre-largetest-dist-addSql</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>copy-resources</goal> | ||
</goals> | ||
<configuration> | ||
<resources> | ||
<resource> | ||
<directory>${basedir}/src/test/resources</directory> | ||
</resource> | ||
</resources> | ||
<outputDirectory>${unpackDirDist}/tests</outputDirectory> | ||
</configuration> | ||
</execution> | ||
<execution> | ||
<id>pre-largetest-distWithSpring-addSql</id> | ||
<phase>generate-test-resources</phase> | ||
<goals> | ||
<goal>copy-resources</goal> | ||
</goals> | ||
<configuration> | ||
<resources> | ||
<resource> | ||
<directory>${basedir}/src/test/resources</directory> | ||
</resource> | ||
</resources> | ||
<outputDirectory>${unpackDirDistWithSpring}/tests</outputDirectory> | ||
</configuration> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
</plugins> | ||
</build> | ||
</project> |
Oops, something went wrong.