Preparing a development environment

To develop and deploy Cloudflow applications, you will need a Java SDK (JDK), Docker, the sbt build tool, the Cloudflow CLI, and a Kubernetes-based cluster. This page describes the required environment to prepare for development. A a later page covers the Kubernetes requirements.

Prerequisites

First, make sure that you have the following installed:

  • Java 8 (JDK)

  • sbt, version 1.2.8 or higher

  • Docker, version 18.09 or higher

  • Helm, version 2 or higher. We recommend version 3 to avoid dealing with tiller.

  • kubectl

  • git

Download and install the Cloudflow CLI

Using one the links below, download the Cloudflow CLI version appropriate for your development platform. Install it on your local system by unzipping the archive and moving the executable into your PATH.

Please make sure you have the executable in your path with proper permission settings. For Linux or MacOS, put the executables in /usr/local/bin with permission settings of 755.

NOTE

On MacOS Catalina and later, the default behavior is to not allow unsigned executables downloaded from the internet. It is planned to sign the executable with an Apple developer certificate to fix this but, in the mean time, there is a very simple workaround. After downloading and unpacking the executable, please execute the following command to remove the "downloaded from the internet" filesystem flag that blocks the file from being executed:

xattr -d com.apple.quarantine [path to]/kubectl-cloudflow

More details can be found in the associated issue.

What’s next

Let’s get an overview of the Wind Turbine example.