AutoPatch Maven Plugin

Maven plugin for AutoPatch

License

License

Categories

Categories

Maven Build Tools Auto Application Layer Libs Code Generators
GroupId

GroupId

com.tacitknowledge
ArtifactId

ArtifactId

autopatch-maven-plugin
Last Version

Last Version

1.4.0
Release Date

Release Date

Type

Type

maven-plugin
Description

Description

AutoPatch Maven Plugin
Maven plugin for AutoPatch
Project URL

Project URL

https://github.com/tacitknowledge/autopatch-maven-plugin
Project Organization

Project Organization

Tacit Knowledge
Source Code Management

Source Code Management

https://github.com/tacitknowledge/autopatch-maven-plugin

Download autopatch-maven-plugin

How to add to project

<plugin>
    <groupId>com.tacitknowledge</groupId>
    <artifactId>autopatch-maven-plugin</artifactId>
    <version>1.4.0</version>
</plugin>

Dependencies

compile (2)

Group / Artifact Type Version
org.apache.maven : maven-plugin-api jar 2.0
com.tacitknowledge : autopatch jar [1.4,)

test (3)

Group / Artifact Type Version
junit : junit jar 3.8.1
org.hsqldb : hsqldb jar 2.2.8
org.apache.maven.shared : maven-plugin-testing-harness jar 1.0-beta-1

Project Modules

There are no modules declared in this project.

Maven Autopatch plugin

Maven plugin allows you to apply database patches with [Autopatch] (https://github.com/tacitknowledge/autopatch) during any Maven project lifetime cycle.

Goals

  • patch - Goal which applies patches found in the classpath
  • info - Goal which provides patch information.
  • unlock - Goal which forcibly unlocks a patch table that has an orphan lock.

The next set of goals work for multiple system names at once. You should specify orchestration patch store system name.

  • distributed-patch - Goal which applies patches found in the classpath.
  • distributed-info - Goal which provides patch information.
  • distributed-unlock - Goal which forcibly unlocks a patch table that has an orphan lock.

Properties

Name Description Default value
skip skips the execution. TODO: implement false
classpathElements a list specifying classpath folders where plugin will look for patches. ${project.compileClasspathElements}
migrationSettings the migration settings file "migration.properties"
systemName The system to get patch information about

POM usage:

<properties>
  <autopatch.system.name>integration_test</autopatch.system.name>
  <autopatch.migration.settings></autopatch.migration.settings>
</properties>

<plugin>
  <groupId>com.tacitknowledge</groupId>
  <artifactId>tk-autopatch-maven-plugin</artifactId>
  <version>1.3.0</version>
  <configuration>
    <!-- The location of the patches -->
    <classpathElements>
        <param>${basedir}/target/test-classes</param>
    </classpathElements>
    <!-- Custom migration settings file -->
    <migrationSettings>migration-distributed.properties</migrationSettings>
    <!-- The system name to run tests on -->
    <systemName>integration_test</systemName>
  </configuration>
  <executions>
    <execution>
      <phase>unlock</phase>
      <goals>
        <goal>distributed-info</goal>
      </goals>
    </execution>
  </executions>
</plugin>

<build>
  <plugins>
    <plugin>
      <groupId>com.tacitknowledge</groupId>
      <artifactId>tk-autopatch-maven-plugin</artifactId>
      <version>1.4.0</version>
      <executions>
        <execution>
          <phase>install</phase>
          <goals>
            <goal>distributed-patch</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>
com.tacitknowledge

Tacit Knowledge

Versions

Version
1.4.0
1.3.0
1.0.3
1.0.2