Skip to content
This repository

Automates controlling and provisioning cloud server instances. DevOps for the JVM.

branch: develop
Octocat-spinner-32 assembly Added assembly plugin
Octocat-spinner-32 bin fix subproject path
Octocat-spinner-32 dev-resources Adjust logback configuration
Octocat-spinner-32 doc Fix some grammatical errors
Octocat-spinner-32 examples Added embryonic command line support.
Octocat-spinner-32 pallet Add explicit java install to ci server
Octocat-spinner-32 resources Fix parens in sample and default project resources
Octocat-spinner-32 src Print session when error in pallet up, summary if success.
Octocat-spinner-32 test Fix remote-directory with a url and md5
Octocat-spinner-32 .gitignore Update .gitignore
Octocat-spinner-32 .travis.yml Enable lein-pallet-release
Octocat-spinner-32 fix some typos
Octocat-spinner-32 ChangeLog Fixed service start-stop configuration, added sed resource, added md5…
Octocat-spinner-32 Created Orientation (markdown)
Octocat-spinner-32 Updated project.clj, release notes and readme for 0.8.0-RC.9
Octocat-spinner-32 Updated project.clj, release notes and readme for 0.8.0-RC.9
Octocat-spinner-32 circle.yml Update circle ci config to use lein
Octocat-spinner-32 epl-v10.html Added license
Octocat-spinner-32 pallet.clj Fix remote-directory with relative path
Octocat-spinner-32 profiles.clj Update to lein-pallet-release 0.1.3
Octocat-spinner-32 project.clj Updated version for next release cycle
Octocat-spinner-32 sample-project-pallet.clj Add with-automated-admin-user to project refers

This is the unstable development branch. See the stable branch for production code.

Pallet is used to provision and maintain servers on cloud and virtual machine infrastructure, and aims to solve the problem of providing a consistently configured running image across a range of clouds. It is designed for use from the Clojure REPL, from clojure code, and from the command line.

  • reuse configuration in development, testing and production.
  • store all your configuration in a source code management system (eg. git), including role assignments.
  • configuration is re-used by composition; just create new functions that call existing crates with new arguments. No copy and modify required.
  • enable use of configuration crates (recipes) from versioned jar files.

It uses jclouds to gain portable access to different cloud providers.

Documentation is available.


Pallet installation and configuration for various software packages is provided via crates. For pallet 0.4.x through 0.6.x, the crates are in the pallet-crates repo. For 0.7.x and on, each crate is in its own repository.


On the mailing list, or #pallet on freenode irc.


The main documentation is on the PalletOps site.


Pallet is distributed as a jar, and is available in the sonatype repository.

Installation is with maven or your favourite maven repository aware build tool.

lein project.clj

:dependencies [[com.palletops/pallet "0.8.0-RC.9"]]

maven pom.xml



See also

chef, and puppet are other infrastructure automation tools.


Licensed under EPL


Copyright 2010, 2011, 2012 Hugo Duncan.

Something went wrong with that request. Please try again.