Bamboo Specs


Configuration as code is now available in Bamboo! Learn more about this feature that lets you store build plans configuration as code.



On this page




Why configuration as code?

Consider storing your build plan configuration as code for easier automation, change tracking, validation, and much more. You can read about the details in What is configuration as code?.



What's in the package?

 Bamboo goodies

  • Bamboo Specs library with an API for writing configuration as code
  • Bamboo Specs Runner Maven plugin for easier plan deployments

 High-level language for configuration

YAML can get the job done, but we know that enterprise users need something much more powerful. That's why we decided to use a simple Java-based plan description language:

  • Enjoy highlighting, syntax checks, and code autocompletion.
  • Validate when you compile and run offline tests.
  • Use high-level language features like modularization or libraries.

If you're not familiar with Java, don't worry. Our onboarding process will bootstrap you directly into a working environment and we have made sure that the plan definitions will be familiar to users of other languages such as Python, C++ or C#. You can read about the details in Configuration as code in Bamboo.

 Configuration in a language of your choice

The Bamboo Specs library is written in Java. It means that you can write your code in any high-level JVM language that interoperates with Java, for example Groovy, Scala, or Kotlin.

 Docs and more docs

Bamboo Specs Reference

Concepts explained with examples. We really like this one, check it out!

Bamboo Specs API referenceOur API. Documented (smile)
Best practicesBecause we already have some recommendations!


Configuration as code is available for build plans. Storing deployment plans as code isn't currently supported.



OK, I'm sold. Where do I start?

Easy. We've prepared a short tutorial.




Last modified on Oct 12, 2017

Was this helpful?

Provide feedback about this article
Powered by Confluence and Scroll Viewport.