couchapp-maven-plugin
This maven plugin tries to replicate the functionality found in CouchApp. The main reason for it, being cross-platform compatibility during builds.
The basic use-case is a small spring-boot application running as a proxy in front of CouchDB.
Goals
The plugin only knows 2 goals, each named for their attached phase:
package
Takes your couchapp, and converts it into couchapp.json stored in the target folderdeploy
Connects to CouchDB, and uploads couchapp.json as your design document.
Usage
Add the following to your pom:
<packaging>couchapp</packaging>
<pluginRepositories>
<pluginRepository>
<id>couchapp-maven-plugin</id>
<url>https://raw.github.com/djBo/couchapp-maven-plugin/maven/</url>
</pluginRepository>
</pluginRepositories>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugin.couchapp</groupId>
<artifactId>couchapp-maven-plugin</artifactId>
<version>1.0.0</version>
<extensions>true</extensions>
<configuration>
...
</configuration>
</plugin>
</plugins>
</build>
Configuration
debug (default: false)
Enables debugging
debug.wire (default: false)
Enables wire debugging
source (default: ${project.basedir}/src)
The source directory of your couchapp
target (default: ${project.build.directory})
The build target directory
skip (default: false)
Skips the plugin entirely
couchdb.scheme (default: http)
CouchDB scheme (http/https)
couchdb.host (default: localhost)
CouchDB hostname
couchdb.port (default: 5984)
CouchDB port
couchdb.db
CouchDB database name
couchdb.user
CouchDB username
couchdb.pass
CouchDB password