VMware offers training and certification to turbo-charge your progress.Learn more
Skipper is a tool that allows you to discover Spring Boot applications and manage their lifecycle on multiple Cloud Platforms. You can use Skipper standalone or integrate it with Continuous Integration pipelines to help achieve Continuous Deployment of applications.
The system design is influenced by a large number of projects in the Kubernetes ecosystem that perform resource templating and/or orchestration, hence the nautically inspired project name Skipper.
Applications in Skipper are bundled as packages which contain a templated configuration file and a default set of values that are used to fill in the template. You can override these defaults when installing or upgrading a package. Skipper provides a means to orchestrate the upgrade/rollback procedure of applications between different versions, taking the minimal set of actions to bring the system to the desired state.
Define multiple platform accounts where Spring Boot applications can be deployed. Supported platforms are Local, Cloud Foundry, and Kubernetes. Substitute variables in Mustache templated files that describe how to deploy applications to a platform.
Search Package Repositories for existing applications.
Install/Upgrade/Rollback a package based on a simple workflow.
Store the history of resolved template files (aka 'application manifests') which represent the final description of what has been deployed to a platform for a specific release.
Use via a standalone interactive shell or via the web APIs to supplement CI workflows.
The means to deploy a Spring Boot application to multiple platforms is provided by [Spring Cloud Deployer implementations. The supported template file format is YAML based and it describes the set of variables needed to create a Spring Cloud Deployer AppDeploymentRequest.
Skipper evolved out of a need to perform "Stream Edits" in Spring Cloud Data Flow. It was later recognized that to provide that feature a more general purpose project, Skipper, should be created so that it can also be a useful toolkit outside the context of Spring Cloud Data Flow.
Bootstrap your application with Spring Initializr.