Spring Cloud CLI

Spring Cloud CLI is a set of extensions for the Spring Boot CLI making it possible to run Spring Cloud server apps and write Spring Cloud apps in Groovy scripts and run them from a shell. Auto-imports and dependency management is provided for all Spring Cloud projects.

Quick Start
Fork me on GitHub

Quick Start

To install the CLI, make sure you have Spring Boot CLI (1.4.4 or better):

$ spring version
Spring CLI v1.5.3.RELEASE

E.g. for SDKMan users

$ sdk install springboot 1.5.3.RELEASE
$ sdk use springboot 1.5.3.RELEASE

and install the Spring Cloud plugin:

$ spring install org.springframework.cloud:spring-cloud-cli:1.3.1.RELEASE

Launch a Server

To run a config server:

$ spring cloud configserver

You can also run eureka, zipkin, hystrixdashboard, h2, kafka or dataflow (multiple apps can be run if separated by spaces on the command line).

Write a Groovy Script and Run It

Any Spring Boot CLI app with the Cloud CLI extensions installed will be a Spring Cloud Config Client, so set the spring.cloud.config.uri to point to a Config Server and you are in business (defaults to "http://localhost:8888").

Here's a complete Eureka Server:

@EnableEurekaServer
@RestController
class Eureka {}

Encrypt and Decrypt

Example (symmetric key):

$ spring encrypt --key=secret foo

IMPORTANT: Prerequisites: to use the encryption and decryption features you need the full-strength JCE installed in your JVM (it's not there by default). You can download the "Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files" from Oracle, and follow instructions for installation (essentially replace the 2 policy files in the JRE lib/security directory with the ones that you downloaded).