Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Older documentation: Spring Cloud config [editor] 

For an explanation about spring cloud config see http://cloud.spring.io/spring-cloud-config/spring-cloud-config.html 

 

1. Client

 

Spring config client is integrated in the blueriq-web. .

Client config options

bootstrap.properties

Code Block
spring:
  cloud:
    config:
      uri: http://localhost:8888
      username: <cloud-server-username> (*)
      password: <cloud-server-password> (*)
      failFast: true
      retry:
        max-attempts: 10
        initial-interval: 5000
        max-interval: 10000

* To make a connection to cloud config server, see #gitbasicauth

application.properties will not contain any property meant for the config client

 

pom.xml needs the following dependencies

Code Block
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.retry</groupId>
    <artifactId>spring-retry</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-aop</artifactId>
</dependency>

 


 

2. Server

Spring config server will run separately and handle the property files. The client will communicate with the server to get the property files.

The property files will either come from the file-system or use GIT.

 

bootstrap.properties

Code Block
encrypt:
  failOnError: false
  key: "IGotTheKey"
  key-store:
    secret: "IGotTheSecret"
spring:
  cloud:
    config:
      server:
        bootstrap: true (*)

* Indicates that the server should read it’s own application.properties from the remote config server (GIT or filesystem)

 

bootstrap.properties - extended for using the file-system

Code Block
spring:
  profiles:
    active: native
  cloud:
    config:
      server:
        native:
          searchLocations: file:D:/local-properties

 

bootstrap.properties - extended for using GIT - basic authentication 

Anchor
gitbasicauth
gitbasicauth

Code Block
spring:
  cloud:
    config:
      server:
        git:
          uri: https://git.blueriq.com/config-repo.git
          basedir: target/config
          username: <git_username>
          password: <git_password>

 

application.properties

Code Block
server:
  port: 8888
security:
  user:
    name: <username> (*)
    password: <password> (*)
management:
  context-path: /admin

 * Username and password that will be used for the client to connect to this server.

 

Repository structure

TODO - ongoing discussion

Branch per environment?

Branch per version?