implicit.ly

Scala software, hot off the presses

« Back to blog

sbt-cloudbees-plugin 0.4.0

Version 4.0 has been a major rewrite to make use of the more idiomatic task functionaltiy within SBT 0.10+

Major changes:

  • Plugin now works with SBT 0.11.2 only
  • Use of the $HOME/.bees directory for configuration is now gone. In order to become more inline with SBT conventions configuration now takes place in the ~/.sbt/user.sbt
  • The deployment task name has changed from bees-deploy to cloudbees-deploy
  • The remote application list task has changed from bees-app-list to cloudbees-applications
  • All settings and tasks are prefixed cloudbees, so they should be easy to find in the console
  • Prompting for settings that are undefined is gone. All settings are checked before use and will deliver an error in the console if the appropriate setting is empty.

CloudBees Run@Cloud SBT Plugin

Integration for SBT that lets you deploy apps to the CloudBees RUN@Cloud PaaS

Usage

Firstly you need to add the plugin to your ~/.sbt/user.sbt or to your regular project build.sbt. You can do that with the following:

resolvers += "sonatype.repo" at "https://oss.sonatype.org/content/groups/public"

addSbtPlugin("eu.getintheloop" %% "sbt-cloudbees-plugin" % "0.4.0-SNAPSHOT") </code></pre>

Don't forget to export the settings so they are included by SBT:

seq(cloudBeesSettings :_*)

With those in place, the next thing you'll need to do is head over to grandcentral.cloudbees.com and pickup your API key and secret. These should look like:

Grand Central Keys

Take these values and apply them in your user.sbt (or regular build file):

seq(cloudBeesSettings :_*)

CloudBees.apiKey := Some("FXXXXXXXXXXX")

CloudBees.apiSecret := Some("AAAAAAAAAAAAAAAAAAAA=") </code></pre>

These of course are global settings per-machine, so the only application specific settings you need to define are the application and user in your project file. Alternativly, you could also define the username globally too:

CloudBees.username := Some("youruser")

CloudBees.applicationId := Some("yourapp") </code></pre>

Now your all configured and good to go, there are two commands you can run with this plugin:

  • Get a list of your configured applications: cloudbees-applications
  • Deploy your application cloudbees-deploy