Repeatable builds

Going back to a previous commit of your code and building it from source doesn’t guarantee exactly the same result. Your transitive dependency graph can change in subtle ways, even if you are careful to pin your dependencies. Nebula can help you lock your resolved dependency graph into source control quickly and easily.

Immutable deployments

If you’ve built an app and need to install it on a server, there’s no better approach than a native OS package. Nebula provides a simple DSL that allows Java apps, as well as non-Java apps, to produce an RPM or Debian package easily.

Eliminate boilerplate

Nebula helps engineers remove boilerplate in Gradle build files, and makes building software the Netflix way easy. This reduces the cognitive load on developers, allowing them to focus on writing code.

Built for the Enterprise

Nebula is a collection of Gradle plugins built for Netflix engineers to eliminate boilerplate build logic and provide sane conventions. We chose Gradle for our underlying build system because we feel Gradle is the best build tool for Java applications.

In order to understand the value that Nebula provides, let’s look at a Gradle build file for a typical Java web project.