Extensions to the Spring Cloud Starters for Spring Cloud Services on Pivotal Cloud Foundry
Latest commit 7fbbb75 Dec 9, 2016 @cgfrost cgfrost committed on GitHub Merge pull request #9 from glyn/bump-135837709
Increment version to 1.3.2.BUILD-SNAPSHOT

README.adoc

Spring Cloud Services Starters Build Status

Spring Cloud Services Starters are a curated set of dependencies for use with Spring Cloud Services in a Pivotal Cloud Foundry environment.

Features

Easily take advantage of the various services by including the BOM and corresponding starter. See the example Maven POM and Gradle build files below.

  • spring-cloud-services-starter-circuit-breaker

  • spring-cloud-services-starter-config-client

  • spring-cloud-services-starter-service-registry

Build and Deploy

The release artifacts are available from Maven Central. You may also build and install the starter POMs to your local Maven repository:

mvn clean install -s .settings.xml

Usage

Include the BOM and starter dependencies in your project using Maven or Gradle.

Maven BOM

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.demo</groupId>
    <artifactId>spring-cloud-services-demo</artifactId>
    <version>0.1.0</version>
    <packaging>jar</packaging>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.7.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>io.pivotal.spring.cloud</groupId>
            <artifactId>spring-cloud-services-starter-circuit-breaker</artifactId>
        </dependency>
        <dependency>
            <groupId>io.pivotal.spring.cloud</groupId>
            <artifactId>spring-cloud-services-starter-config-client</artifactId>
        </dependency>
        <dependency>
            <groupId>io.pivotal.spring.cloud</groupId>
            <artifactId>spring-cloud-services-starter-service-registry</artifactId>
        </dependency>
    </dependencies>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>io.pivotal.spring.cloud</groupId>
                <artifactId>spring-cloud-services-dependencies</artifactId>
                <version>1.2.0.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Brixton.SR6</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <repository>
            <id>spring-repository</id>
            <url>https://repo.spring.io/libs-release</url>
        </repository>
    </repositories>

    <pluginRepositories>
        <pluginRepository>
            <id>spring-plugins</id>
            <url>https://repo.spring.io/plugins-release</url>
        </pluginRepository>
        <pluginRepository>
            <id>spring-repository</id>
            <url>https://repo.spring.io/libs-release</url>
        </pluginRepository>
    </pluginRepositories>

</project>

Gradle

build.gradle

buildscript {
    repositories {
        mavenCentral()
        maven { url "https://repo.spring.io/plugins-release/" }
        maven { url "https://repo.spring.io/libs-release/" }
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:1.3.7.RELEASE")
        classpath("io.spring.gradle:dependency-management-plugin:0.6.0.RELEASE")
    }
}

apply plugin: "java"
apply plugin: "eclipse"
apply plugin: "idea"
apply plugin: "spring-boot"
apply plugin: "io.spring.dependency-management"

jar {
    baseName = "spring-cloud-services-demo"
    version =  "0.1.0"
}

dependencyManagement {
    imports {
        mavenBom "org.springframework.cloud:spring-cloud-dependencies:Brixton.SR6"
        mavenBom "io.pivotal.spring.cloud:spring-cloud-services-dependencies:1.2.0.RELEASE"
    }
}

dependencies {
    compile("io.pivotal.spring.cloud:spring-cloud-services-starter-circuit-breaker")
    compile("io.pivotal.spring.cloud:spring-cloud-services-starter-config-client")
    compile("io.pivotal.spring.cloud:spring-cloud-services-starter-service-registry")
}

repositories {
    mavenCentral()
    maven { url "https://repo.spring.io/libs-release/" }
}

License

Spring Cloud Services Starters is Open Source software released under the Apache 2.0 license.