Fork me on GitHub

Plugin Documentation

Goals available for this plugin:

GoalDescription
carrotaws:cloud-formation-createcloud formation: create stack based on: stack name, stack template (stackTemplateFile), stack parameters (stackPropertiesInputFile + stackInputParams), and produce a stack output (stackPropertiesOutputFile) as well as inject output into into project.properties ; wait for completion or fail (stackTimeout);
carrotaws:cloud-formation-deletecloud formation: delete stack based on: stack name; ; wait for completion or fail (stackTimeout)
carrotaws:cloud-formation-find-stackcloud formation: find stack by name
carrotaws:cloud-formation-updatecloud formation: update stack based on: stack name ; wait for completion or fail (stackTimeout)
carrotaws:elastic-compute-image-createcreate new ami image from existing AWS ElasticCompute instance
carrotaws:elastic-compute-image-deletedelete existing ami image with all ebs snapshots
carrotaws:elastic-compute-image-unregisterunregister existing ami image
carrotaws:groovy-execute-scriptgroovy script executor; has access to MavenProject;

for example:

def value = project.properties['key'] // read from project
project.properties['key'] = value + 1 // save into project
carrotaws:route53-ensure-cnameroute53: ensure cname record
carrotaws:route53-find-zoneroute53: find dns zone name from dns host name
carrotaws:route53-list-zoneroute53: list dns zone entires
carrotaws:secure-shell-executeexecute remote ssh commands
carrotaws:secure-shell-publishpublish directory content via sftp from local to remote system
carrotaws:secure-shell-retrieveretrieve directory content via sftp from remote to local system

System Requirements

The following specifies the minimum requirements to run this Maven plugin:

Maven3.0.4
JDK1.6
MemoryNo minimum requirement.
Disk SpaceNo minimum requirement.

Usage

You should specify the version in your project's plugin configuration:

<project>
  ...
  <build>
    <!-- To define the plugin version in your parent POM -->
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>com.carrotgarden.maven</groupId>
          <artifactId>carrot-maven-aws-plugin</artifactId>
          <version>1.2.2</version>
        </plugin>
        ...
      </plugins>
    </pluginManagement>
    <!-- To use the plugin goals in your POM or parent POM -->
    <plugins>
      <plugin>
        <groupId>com.carrotgarden.maven</groupId>
        <artifactId>carrot-maven-aws-plugin</artifactId>
        <version>1.2.2</version>
      </plugin>
      ...
    </plugins>
  </build>
  ...
</project>

For more information, see "Guide to Configuring Plug-ins"