Travis CI

Travis CI is a great service for building projects hosted on GitHub. In addition to providing very easy Continuous Integration, Travis CI also integrates seamlessly with CloudCaptain to easily become a fantastic Continuous Deployment platform.

Using the CloudCaptain Command-line client

Travis CI's deployment tool comes with native support for the CloudCaptain Command-line client.

All you need to do to get started is defined two encrypted Travis CI environment variables for your repository (securely stored and not visible in your build logs):

BOXFUSE_USER Your CloudCaptain User
BOXFUSE_SECRET Your CloudCaptain Secret

Then add the following to your .travis.yml file:

deploy:
  provider: boxfuse
  payload: target/myapp-1.0.jar

And that's it! The CloudCaptain command-line client will be automatically installed and configured to deploy on every successful build. More info on the CloudCaptain page in the Travis CI docs.

Using the CloudCaptain Maven Plugin

Alternatively to the method described above, you can also simply use the CloudCaptain Maven plugin directly from your pom.xml to deploy your application.

Just as for the command-line tool, you will need to define two encrypted Travis CI environment variables for your repository (securely stored and not visible in your build logs):

BOXFUSE_USER Your CloudCaptain User
BOXFUSE_SECRET Your CloudCaptain Secret

By default, Travis CI worker nodes are configured with too little heap for the JVM to work well with Maven and CloudCaptain together.

Add the following to your .travis.yml to fix this:

before_install: echo "MAVEN_OPTS=-Xmx2048m" > ~/.mavenrc

New Relic