The Spring Cloud Deployer project defines an SPI for deploying long lived applications and short lived tasks.
Components
The SPI project defines the core interfaces, including AppDeployer and TaskLauncher as well as the core domain model.
The SPI Test project provides the basic test framework that any SPI implementation should use to verify its functionality.
The spring-cloud-deployer-resource-maven
project provides support for referencing Maven artifacts via Spring’s Resource
abstraction.
The spring-cloud-deployer-resource-docker
project provides support for referencing Docker artifacts via Spring’s Resource
abstraction.
The spring-cloud-deployer-resource-support
project provides various common support classes for working with Resources
, such as the
UriRegistry
for maintaining the locations of app artifacts, and the
DelegatingResourceLoader
for working with multiple ResourceLoader
implementations in a map with URI schemes as keys.
There is also an implementation of the SPI for running apps locally. That link is provided below along with other SPI implementations.
Implementations
This deployer SPI has been implemented for several runtime environments. Here are the github locations:
Building
Clone the repo and type
$ ./mvnw clean install