local:
  gcp:
    version: 1.1.0.M3

logging:
  level:
    org.springframework.core.env: warn
    org.springframework.jndi: warn

server:
  compression:
    enabled: true
    mime-types: application/json,text/css,text/html
    min-response-size: 2048
  use-forward-headers: true

spring:
  jackson:
    serialization:
      write-dates-as-timestamps: false
  task:
    execution:
      thread-name-prefix: initializr-
  resources:
    chain:
      strategy:
        content:
          enabled: true

initializr:
  env:
    boms:
      azure:
        groupId: com.microsoft.azure
        artifactId: azure-spring-boot-bom
        versionProperty: azure.version
        mappings:
          - versionRange: "[1.5.4.RELEASE,2.0.0.RELEASE)"
            version: 0.2.4
          - versionRange: "[2.0.0.RELEASE,2.1.0.RELEASE)"
            version: 2.0.10
          - versionRange: "2.1.0.RELEASE"
            version: 2.1.2
      codecentric-spring-boot-admin:
        groupId: de.codecentric
        artifactId: spring-boot-admin-dependencies
        versionProperty: spring-boot-admin.version
        mappings:
          - versionRange: "[1.5.9.RELEASE,2.0.0.M1)"
            version: 1.5.7
          - versionRange: "[2.0.0.M1,2.1.0.M1)"
            version: 2.0.6
          - versionRange: "[2.1.0.M1,2.2.0.M1)"
            version: 2.1.4
      spring-cloud:
        groupId: org.springframework.cloud
        artifactId: spring-cloud-dependencies
        versionProperty: spring-cloud.version
        order: 50
        mappings:
          - versionRange: "[1.5.0.RELEASE,1.5.x.RELEASE]"
            version: Brixton.SR5
          - versionRange: "[1.5.x.BUILD-SNAPSHOT,2.0.0.M1)"
            version: Brixton.BUILD-SNAPSHOT
            repositories: spring-snapshots,spring-milestones
          - versionRange: "[2.0.0.M3, 2.0.0.M5)"
            version: Camden.M2
            repositories: spring-milestones
          - versionRange: "[2.0.0.M5, 2.0.0.M5]"
            version: Camden.SR4
            repositories: spring-milestones
      spring-cloud-services:
        groupId: io.pivotal.spring.cloud
        artifactId: spring-cloud-services-dependencies
        versionProperty: spring-cloud-services.version
        additionalBoms: [spring-cloud]
        mappings:
          - versionRange: "[1.5.0.RELEASE,1.5.x.BUILD-SNAPSHOT]"
            version: 1.6.6.RELEASE
          - versionRange: "[2.0.0.RELEASE,2.0.x.BUILD-SNAPSHOT]"
            version: 2.0.3.RELEASE
          - versionRange: "2.1.0.RELEASE"
            version: 2.1.2.RELEASE
      spring-statemachine:
        groupId: org.springframework.statemachine
        artifactId: spring-statemachine-bom
        versionProperty: spring-statemachine.version
        mappings:
          - versionRange: "[2.0.0.RC1,2.0.0.RC1]"
            version: 2.0.0.M4
            repositories: spring-milestones
          - versionRange: "[2.0.0.RC2,2.0.0.RC2]"
            version: 2.0.0.M5
            repositories: spring-milestones
          - versionRange: "2.0.0.RELEASE"
            version: 2.0.1.RELEASE
      vaadin:
        groupId: com.vaadin
        artifactId: vaadin-bom
        versionProperty: vaadin.version
        mappings:
          - versionRange: "[1.5.0.RELEASE,2.0.0.M1)"
            version: 8.7.2
          - versionRange: "[2.0.0.M1,2.1.0.M1)"
            version: 10.0.13
          - versionRange: "2.1.0.M1"
            version: 13.0.4
    gradle:
      dependency-management-plugin-version: 0.6.0.RELEASE
    kotlin:
      default-version: 1.3.30
      mappings:
        - versionRange: "[1.5.0.RELEASE,2.0.0.M1)"
          version: 1.2.51
        - versionRange: "[2.0.0.M1,2.2.0.M1)"
          version: 1.2.71
    repositories:
      sonatype-snapshots:
        name: Sonatype Snapshots
        url: https://oss.sonatype.org/content/repositories/snapshots/
        snapshotsEnabled: true
  dependencies:
    - name: Core
      content:
        - name: DevTools
          id: devtools
          groupId: org.springframework.boot
          artifactId: spring-boot-devtools
          scope: runtime
          description: Spring Boot Development Tools
          versionRange: 1.3.0.RELEASE
          starter: false
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#using-boot-devtools
        - name: Lombok
          id: lombok
          groupId: org.projectlombok
          artifactId: lombok
          scope: annotationProcessor
          description: Java annotation library which helps to reduce boilerplate code and code faster
          starter: false
        - name: Configuration Processor
          id: configuration-processor
          groupId: org.springframework.boot
          artifactId: spring-boot-configuration-processor
          scope: annotationProcessor
          description: Generate metadata for your custom configuration keys
          versionRange: 1.2.0.RELEASE
          starter: false
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#configuration-metadata-annotation-processor
        - name: Session
          id: session
          groupId: org.springframework.session
          artifactId: spring-session-core
          description: API and implementations for managing a user’s session information
          starter: false
          mappings:
            - versionRange: "[1.5.0.RELEASE,2.0.0.M2]"
              artifactId: spring-session
        - name: Cache
          id: cache
          description: Spring's Cache abstraction
          links:
            - rel: guide
              href: https://spring.io/guides/gs/caching/
              description: Caching Data with Spring
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-caching
        - name: Validation
          id: validation
          description: JSR-303 validation infrastructure (already included with web)
          links:
            - rel: guide
              href: https://spring.io/guides/gs/validating-form-input/
              description: Validating Form Input
        - name: Retry
          id: retry
          groupId: org.springframework.retry
          artifactId: spring-retry
          description: Provide declarative retry support via spring-retry
          starter: false
        - name: Aspects
          id: aop
          description: Create your own Aspects using Spring AOP and AspectJ
    - name: Web
      content:
        - name: Web
          id: web
          description: Servlet web application with Spring MVC and Tomcat
          weight: 100
          facets:
            - web
            - json
          links:
            - rel: guide
              href: https://spring.io/guides/gs/rest-service/
              description: Building a RESTful Web Service
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-developing-web-applications
            - rel: guide
              href: https://spring.io/guides/gs/serving-web-content/
              description: Serving Web Content with Spring MVC
            - rel: guide
              href: https://spring.io/guides/tutorials/bookmarks/
              description: Building REST services with Spring
        - name: Reactive Web
          id: webflux
          versionRange: 2.0.0.M1
          description: Reactive web applications with Spring WebFlux and Netty
          weight: 90
          facets:
            - json
        - name: Rest Repositories
          id: data-rest
          weight: 10
          facets:
            - json
          description: Exposing Spring Data repositories over REST via Spring Data REST
          links:
            - rel: guide
              href: https://spring.io/guides/gs/accessing-data-rest/
              description: Accessing JPA Data with REST
            - rel: guide
              href: https://spring.io/guides/gs/accessing-neo4j-data-rest/
              description: Accessing Neo4j Data with REST
            - rel: guide
              href: https://spring.io/guides/gs/accessing-mongodb-data-rest/
              description: Accessing MongoDB Data with REST
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#howto-use-exposing-spring-data-repositories-rest-endpoint
        - name: Rest Repositories HAL Browser
          id: data-rest-hal
          description: Browsing Spring Data REST repositories in your browser
          groupId: org.springframework.data
          artifactId: spring-data-rest-hal-browser
        - name: HATEOAS
          id: hateoas
          description: HATEOAS-based RESTful services
          links:
            - rel: guide
              href: https://spring.io/guides/gs/rest-hateoas/
              description: Building a Hypermedia-Driven RESTful Web Service
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-spring-hateoas
          starter: false
        - name: Web Services
          id: web-services
          description: Contract-first SOAP services with Spring Web Services
          aliases:
            - ws
          links:
            - rel: guide
              href: https://spring.io/guides/gs/producing-web-service/
              description: Producing a SOAP web service
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-webservices
        - name: Jersey
          id: jersey
          description: RESTful Web Services with JAX-RS
          facets:
            - json
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-jersey
        - name: REST Docs
          id: restdocs
          description: Document RESTful services by combining hand-written and auto-generated documentation
          groupId: org.springframework.restdocs
          artifactId: spring-restdocs-mockmvc
          scope: test
        - name: Vaadin
          id: vaadin
          facets:
            - web
          groupId: com.vaadin
          artifactId: vaadin-spring-boot-starter
          description: Vaadin java web application framework
          bom: vaadin
          links:
            - rel: guide
              href: https://spring.io/guides/gs/crud-with-vaadin/
              description: Creating CRUD UI with Vaadin
            - rel: reference
              href: https://vaadin.com/spring
        - name: Apache CXF
          id: cxf-jaxrs
          groupId: org.apache.cxf
          artifactId: cxf-spring-boot-starter-jaxrs
          version: 3.2.5
          description: RESTful Web Services with JAX-RS
          versionRange: "[1.5.0.RELEASE,2.1.0.M1)"
          links:
            - rel: reference
              href: https://cxf.apache.org/docs/springboot.html#SpringBoot-SpringBootCXFJAX-RSStarter
        - name: Ratpack
          id: ratpack
          description: Spring Boot integration for the Ratpack framework
          groupId: io.ratpack
          artifactId: ratpack-spring-boot
          version: 1.1.1
          versionRange: "[1.5.0.RELEASE,2.0.0.M1)"
          starter: false
        - name: Mobile
          id: mobile
          description: Simplify the development of mobile web applications with Spring Mobile
          versionRange: "[1.5.0.RELEASE, 2.0.0.M1)"
    - name: Template Engines
      content:
        - name: Thymeleaf
          id: thymeleaf
          description: Thymeleaf templating engine
          weight: 90
          keywords:
            - template
          links:
            - rel: guide
              href: https://spring.io/guides/gs/handling-form-submission/
              description: Handling Form Submission
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-spring-mvc-template-engines
        - name: Freemarker
          id: freemarker
          description: FreeMarker templating engine
          keywords:
            - template
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-spring-mvc-template-engines
        - name: Mustache
          id: mustache
          description: Mustache templating engine
          keywords:
            - template
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-spring-mvc-template-engines
        - name: Groovy Templates
          id: groovy-templates
          description: Groovy templating engine
          facets:
            - web
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-spring-mvc-template-engines
    - name: Security
      content:
        - name: Security
          id: security
          description: Secure your application via spring-security
          weight: 100
          links:
            - rel: guide
              href: https://spring.io/guides/gs/securing-web/
              description: Securing a Web Application
            - rel: guide
              href: https://spring.io/guides/tutorials/spring-boot-oauth2/
              description: Spring Boot and OAuth2
            - rel: guide
              href: https://spring.io/guides/gs/authenticating-ldap/
              description: Authenticating a User with LDAP
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-security
        - name: OAuth2 Client
          id: oauth2-client
          description: Spring Boot integration for Spring Security's OAuth2/OpenID Connect client features
          versionRange: 2.0.0.M5
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-security-oauth2-client
        - name: OAuth2 Resource Server
          id: oauth2-resource-server
          description: Spring Boot integration for Spring Security's OAuth2 resource server features
          versionRange: 2.1.0.M2
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-security-oauth2-server
        - name: Okta
          id: okta
          description: Okta specific configuration for Spring Security/Spring Boot OAuth2 features
          groupId: com.okta.spring
          artifactId: okta-spring-boot-starter
          versionRange: 2.1.2.RELEASE
          version: 1.1.0
          links:
            - rel: guide
              href: https://github.com/okta/samples-java-spring/tree/master/okta-hosted-login
            - rel: guide
              href: https://github.com/okta/samples-java-spring/tree/master/custom-login
            - rel: guide
              href: https://github.com/okta/samples-java-spring/tree/master/resource-server
            - rel: reference
              href: https://github.com/okta/okta-spring-boot/blob/master/README.md
    - name: SQL
      content:
        - name: JPA
          id: data-jpa
          description: Persist data in SQL stores with Java Persistence API using Spring Data and Hibernate
          weight: 100
          facets:
            - jpa
          aliases:
            - jpa
          links:
            - rel: guide
              href: https://spring.io/guides/gs/accessing-data-jpa/
              description: Accessing Data with JPA
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-jpa-and-spring-data
        - name: MySQL
          id: mysql
          description: MySQL JDBC driver
          groupId: mysql
          artifactId: mysql-connector-java
          scope: runtime
          starter: false
          links:
            - rel: guide
              href: https://spring.io/guides/gs/accessing-data-mysql/
              description: Accessing data with MySQL
        - name: H2
          id: h2
          description: H2 database (with embedded support)
          groupId: com.h2database
          artifactId: h2
          scope: runtime
          starter: false
        - name: JDBC
          id: jdbc
          description: Persistence support using JDBC
          links:
            - rel: guide
              href: https://spring.io/guides/gs/relational-data-access/
              description: Accessing Relational Data using JDBC with Spring
            - rel: guide
              href: https://spring.io/guides/gs/managing-transactions/
              description: Managing Transactions
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-sql
        - name: MyBatis
          id: mybatis
          description: Persistence support using MyBatis
          links:
            - rel: guide
              href: https://github.com/mybatis/spring-boot-starter/wiki/Quick-Start
              description: Quick Start
            - rel: reference
              href: http://www.mybatis.org/spring-boot-starter/mybatis-spring-boot-autoconfigure/
          groupId: org.mybatis.spring.boot
          artifactId: mybatis-spring-boot-starter
          mappings:
            - versionRange: "[1.5.0.RELEASE,2.0.0.RELEASE)"
              version: 1.3.4
            - versionRange: 2.0.0.RELEASE
              version: 2.0.1
        - name: PostgreSQL
          id: postgresql
          description: PostgreSQL JDBC driver
          groupId: org.postgresql
          artifactId: postgresql
          scope: runtime
          starter: false
        - name: SQL Server
          id: sqlserver
          description: Microsoft SQL Server JDBC driver
          groupId: com.microsoft.sqlserver
          artifactId: mssql-jdbc
          scope: runtime
          starter: false
        - name: HSQLDB
          id: hsql
          description: HSQLDB database (with embedded support)
          groupId: org.hsqldb
          artifactId: hsqldb
          scope: runtime
          starter: false
        - name: Apache Derby
          id: derby
          description: Apache Derby database (with embedded support)
          groupId: org.apache.derby
          artifactId: derby
          scope: runtime
          starter: false
        - name: Liquibase
          id: liquibase
          description: Liquibase Database Migrations library
          groupId: org.liquibase
          artifactId: liquibase-core
          starter: false
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#howto-execute-liquibase-database-migrations-on-startup
        - name: Flyway
          id: flyway
          description: Flyway Database Migrations library
          groupId: org.flywaydb
          artifactId: flyway-core
          starter: false
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#howto-execute-flyway-database-migrations-on-startup
        - name: JOOQ
          id: jooq
          description: Persistence support using Java Object Oriented Querying
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-jooq
    - name: NoSQL
      content:
        - name: Redis
          id: data-redis
          description: Access Redis key-value data stores with Spring Data Redis
          aliases:
            - redis
          links:
            - rel: guide
              href: https://spring.io/guides/gs/messaging-redis/
              description: Messaging with Redis
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-redis
        - name: Reactive Redis
          id: data-redis-reactive
          description: Access Redis key-value data stores in a reactive fashion with Spring Data Redis
          versionRange: 2.0.0.M7
          links:
            - rel: guide
              href: https://spring.io/guides/gs/messaging-redis/
              description: Messaging with Redis
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-redis
        - name: MongoDB
          id: data-mongodb
          description: Access MongoDB NoSQL Database with Spring Data MongoDB
          weight: 50
          links:
            - rel: guide
              href: https://spring.io/guides/gs/accessing-data-mongodb/
              description: Accessing Data with MongoDB
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-mongodb
        - name: Reactive MongoDB
          id: data-mongodb-reactive
          description: Access MongoDB NoSQL Database in a reactive fashion with Spring Data MongoDB
          versionRange: 2.0.0.M1
          weight: 50
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-mongodb
        - name: Embedded MongoDB
          id: flapdoodle-mongo
          description: Embedded MongoDB for testing
          groupId: de.flapdoodle.embed
          artifactId: de.flapdoodle.embed.mongo
          scope: test
          starter: false
        - name: Elasticsearch
          id: data-elasticsearch
          description: Elasticsearch search and analytics engine with Spring Data Elasticsearch
          weight: 10
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-elasticsearch
        - name: Solr
          id: data-solr
          description: Access Apache Solr search platform with Spring Data Solr
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-solr
        - name: Cassandra
          id: data-cassandra
          description: Access Cassandra NoSQL Database with Spring Data Cassandra
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-cassandra
        - name: Reactive Cassandra
          id: data-cassandra-reactive
          description: Access Cassandra NoSQL Database in a reactive fashion with Spring Data Cassandra
          versionRange: 2.0.0.M1
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-cassandra
        - name: Couchbase
          id: data-couchbase
          description: Access Couchbase NoSQL database with Spring Data Couchbase
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-couchbase
        - name: Reactive Couchbase
          id: data-couchbase-reactive
          description: Access Couchbase NoSQL database in a reactive fashion with Spring Data Couchbase
          versionRange: 2.0.0.M7
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-couchbase
        - name: Neo4j
          id: data-neo4j
          description: Access Neo4j NoSQL graph database with Spring Data Neo4j
          links:
            - rel: guide
              href: https://spring.io/guides/gs/accessing-data-neo4j/
              description: Accessing Data with Neo4j
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-neo4j
        - name: Gemfire
          id: data-gemfire
          description: Access GemFire distributed data store with Spring Data Gemfire
          versionRange: "[1.5.0.RELEASE,2.0.0.M1)"
          links:
            - rel: guide
              href: https://spring.io/guides/gs/accessing-data-gemfire/
              description: Accessing Data with GemFire
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-gemfire
    - name: Messaging
      content:
        - name: Spring Integration
          id: integration
          description: Common spring-integration modules
          weight: 100
          links:
            - rel: guide
              href: https://spring.io/guides/gs/integration/
              description: Integrating Data
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-integration
        - name: RabbitMQ
          id: amqp
          description: Advanced Message Queuing Protocol via Spring Rabbit
          weight: 100
          keywords:
            - messaging
          links:
            - rel: guide
              href: https://spring.io/guides/gs/messaging-rabbitmq/
              description: Messaging with RabbitMQ
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-amqp
        - name: Kafka
          id: kafka
          weight: 100
          description: Kafka messaging support using Spring Kafka
          versionRange: 1.5.0.RELEASE
          groupId: org.springframework.kafka
          artifactId: spring-kafka
          starter: false
          keywords:
            - messaging
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-kafka
        - name: Kafka Streams
          id: kafka-streams
          weight: 90
          description: Building stream processing applications with Apache Kafka Streams
          versionRange: 2.0.0.RELEASE
          groupId: org.apache.kafka
          artifactId: kafka-streams
          starter: false
          links:
            - rel: guide
              href: https://github.com/spring-cloud/spring-cloud-stream-samples/tree/master/kafka-streams-samples
              description: Samples for using Kafka Streams with Spring Cloud stream
            - rel: reference
              href: https://docs.spring.io/spring-kafka/docs/current/reference/html/_reference.html#kafka-streams
              description: Kafka Streams Support in Spring Kafka
            - rel: reference
              href: https://docs.spring.io/spring-cloud-stream/docs/current/reference/htmlsingle/#_kafka_streams_binding_capabilities_of_spring_cloud_stream
              description: Kafka Streams Binding Capabilities of Spring Cloud Stream
        - name: JMS (ActiveMQ)
          id: activemq
          description: Java Message Service API via Apache ActiveMQ
          links:
            - rel: guide
              href: https://spring.io/guides/gs/messaging-jms/
              description: Messaging with JMS
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-activemq
        - name: JMS (Artemis)
          id: artemis
          description: Java Message Service API via Apache Artemis
          links:
            - rel: guide
              href: https://spring.io/guides/gs/messaging-jms/
              description: Messaging with JMS
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-artemis
        - name: WebSocket
          id: websocket
          description: WebSocket applications with SockJS and STOMP
          links:
            - rel: guide
              href: https://spring.io/guides/gs/messaging-stomp-websocket/
              description: Using WebSocket to build an interactive web application
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-websockets
        - name: RSocket
          id: rsocket
          versionRange: 2.2.0.M2
          description: RSocket.io applications with Spring Messaging and Netty
    - name: Cloud Core
      bom: spring-cloud
      content:
        - name: Cloud Bootstrap
          id: cloud-starter
          description: spring-cloud-context (e.g. Bootstrap context and @RefreshScope)
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter
          weight: 100
        - name: Cloud Function
          id: cloud-function
          groupId: org.springframework.cloud
          artifactId: spring-cloud-function-context
          description: Functions as Spring Beans
          versionRange: 2.0.2.RELEASE
          links:
            - rel: reference
              href: https://cloud.spring.io/spring-cloud-function/
            - rel: sample
              href: https://github.com/spring-cloud/spring-cloud-function/tree/master/spring-cloud-function-samples
              description: Various sample apps using Spring Cloud Function
        - name: Cloud Security
          id: cloud-security
          description: Secure load balancing and routing with spring-cloud-security
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-security
        - name: Cloud OAuth2
          id: cloud-oauth2
          description: OAuth2 and distributed application patterns with spring-cloud-security
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-oauth2
        - name: Cloud Task
          id: cloud-task
          description: Task result tracking with Spring Batch and Spring Cloud Stream integrations
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-task
          starter: false
    - name: Cloud Support
      content:
        - name: Cloud Connectors
          id: cloud-connectors
          description: Simplifies connecting to services in cloud platforms, including spring-cloud-connector and spring-cloud-cloudfoundry-connector
        - name: Open Service Broker
          id: open-service-broker
          description: Create service brokers that conform to the Open Service Broker API specification
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-open-service-broker-webmvc
          versionRange: 2.0.0.RELEASE
          version: 2.1.1.RELEASE
          links:
            - rel: reference
              href: https://docs.spring.io/spring-cloud-open-service-broker/docs/current/reference/html5/
            - rel: guide
              href: https://github.com/spring-cloud-samples/bookstore-service-broker
              description: Using Spring Cloud Open Service Broker
    - name: Cloud Config
      bom: spring-cloud
      content:
        - name: Config Client
          id: cloud-config-client
          description: Spring Cloud Config Client
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-config
          weight: 100
        - name: Config Server
          id: cloud-config-server
          description: Central management for configuration via a git or svn backend
          groupId: org.springframework.cloud
          artifactId: spring-cloud-config-server
          links:
            - rel: guide
              href: https://spring.io/guides/gs/centralized-configuration/
              description: Centralized Configuration
        - name: Vault Configuration
          id: cloud-starter-vault-config
          description: Configuration management with HashiCorp Vault
          versionRange: 1.5.3.RELEASE
          starter: false
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-vault-config
        - name: Zookeeper Configuration
          id: cloud-starter-zookeeper-config
          description: Configuration management with Zookeeper and spring-cloud-zookeeper-config
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-zookeeper-config
        - name: Consul Configuration
          id: cloud-starter-consul-config
          description: Configuration management with Hashicorp Consul
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-consul-config
    - name: Cloud Discovery
      bom: spring-cloud
      content:
        - name: Eureka Discovery
          id: cloud-eureka
          description: Service discovery using spring-cloud-netflix and Eureka
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-netflix-eureka-client
          weight: 100
        - name: Eureka Server
          id: cloud-eureka-server
          description: spring-cloud-netflix Eureka Server
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-netflix-eureka-server
          links:
            - rel: guide
              href: https://spring.io/guides/gs/service-registration-and-discovery/
              description: Service Registration and Discovery
        - name: Zookeeper Discovery
          id: cloud-starter-zookeeper-discovery
          description: Service discovery with Zookeeper and spring-cloud-zookeeper-discovery
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-zookeeper-discovery
        - name: Cloud Foundry Discovery
          id: cloud-cloudfoundry-discovery
          description: Service discovery with Cloud Foundry
          groupId: org.springframework.cloud
          artifactId: spring-cloud-cloudfoundry-discovery
        - name: Consul Discovery
          id: cloud-starter-consul-discovery
          description: Service discovery with Hashicorp Consul
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-consul-discovery
    - name: Cloud Routing
      bom: spring-cloud
      content:
        - name: Zuul
          id: cloud-zuul
          description: Intelligent and programmable routing with spring-cloud-netflix Zuul
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-netflix-zuul
          links:
            - rel: guide
              href: https://spring.io/guides/gs/routing-and-filtering/
              description: Routing and Filtering
        - name: Gateway
          id: cloud-gateway
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-gateway
          description: Intelligent and programmable routing with the reactive Spring Cloud Gateway
          versionRange: 2.0.0.M5
          links:
            - rel: guide
              href: https://github.com/spring-cloud-samples/spring-cloud-gateway-sample
              description: Using Spring Cloud Gateway
        - name: Ribbon
          id: cloud-ribbon
          description: Client side load balancing with spring-cloud-netflix and Ribbon
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-netflix-ribbon
          links:
            - rel: guide
              href: https://spring.io/guides/gs/client-side-load-balancing/
              description: Client Side Load Balancing with Ribbon and Spring Cloud
        - name: Feign
          id: cloud-feign
          description: Declarative REST clients with spring-cloud-netflix Feign
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-openfeign
    - name: Cloud Circuit Breaker
      bom: spring-cloud
      content:
        - name: Hystrix
          id: cloud-hystrix
          description: Circuit breaker with spring-cloud-netflix Hystrix
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-netflix-hystrix
          links:
            - rel: guide
              href: https://spring.io/guides/gs/circuit-breaker/
              description: Circuit Breaker
        - name: Hystrix Dashboard
          id: cloud-hystrix-dashboard
          description: Circuit breaker dashboard with spring-cloud-netflix Hystrix
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-netflix-hystrix-dashboard
        - name: Turbine
          id: cloud-turbine
          description: Circuit breaker metric aggregation using spring-cloud-netflix with Turbine and server-sent events
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-netflix-turbine
        - name: Turbine Stream
          id: cloud-turbine-stream
          description: Circuit breaker metric aggregation using spring-cloud-netflix with Turbine and Spring Cloud Stream (requires a binder, e.g. Kafka or RabbitMQ)
          versionRange: 1.3.0.RELEASE
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-netflix-turbine-stream
          weight: -1
    - name: Cloud Tracing
      bom: spring-cloud
      content:
        - name: Sleuth
          id: cloud-starter-sleuth
          description: Distributed tracing via logs with spring-cloud-sleuth
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-sleuth
        - name: Zipkin Client
          id: cloud-starter-zipkin
          description: Distributed tracing with an existing Zipkin installation and spring-cloud-sleuth-zipkin. Alternatively, consider Sleuth Stream.
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-zipkin
    - name: Cloud Messaging
      bom: spring-cloud
      content:
        - name: Cloud Bus
          id: cloud-bus
          description: A simple control bus using Spring Cloud Stream (requires a binder, e.g. Kafka or RabbitMQ)
          groupId: org.springframework.cloud
          artifactId: spring-cloud-bus
        - name: Cloud Stream
          id: cloud-stream
          description: Messaging microservices with Spring Cloud Stream (requires a binder, e.g. Kafka or RabbitMQ)
          weight: 90
          groupId: org.springframework.cloud
          artifactId: spring-cloud-stream
        - name: Reactive Cloud Stream
          id: reactive-cloud-stream
          description: Reactive messaging microservices with Spring Cloud Stream (requires a binder, e.g. Kafka or RabbitMQ)
          versionRange: 2.0.0.RC2
          weight: 90
          groupId: org.springframework.cloud
          artifactId: spring-cloud-stream-reactive
    - name: Cloud Contract
      bom: spring-cloud
      content:
        - name: Cloud Contract Verifier
          id: cloud-contract-verifier
          description: Test dependencies required for autogenerated tests
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-contract-verifier
          scope: test
          starter: false
        - name: Cloud Contract Stub Runner
          id: cloud-contract-stub-runner
          description: Stub Runner for HTTP/Messaging based communication. Allows creating WireMock stubs from RestDocs tests
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-contract-stub-runner
          scope: test
          starter: false
    - name: Pivotal Cloud Foundry
      bom: spring-cloud-services
      content:
        - name: Config Client (PCF)
          id: scs-config-client
          description: Config client on Pivotal Cloud Foundry
          groupId: io.pivotal.spring.cloud
          artifactId: spring-cloud-services-starter-config-client
          links:
            - rel: reference
              href: https://docs.pivotal.io/spring-cloud-services/
              description: Reference doc
        - name: Service Registry Client (PCF)
          id: scs-service-registry
          description: Eureka service discovery client on Pivotal Cloud Foundry
          groupId: io.pivotal.spring.cloud
          artifactId: spring-cloud-services-starter-service-registry
          links:
            - rel: reference
              href: https://docs.pivotal.io/spring-cloud-services/
              description: Reference doc
        - name: Circuit Breaker Client (PCF)
          id: scs-circuit-breaker
          description: Hystrix circuit breaker client on Pivotal Cloud Foundry
          groupId: io.pivotal.spring.cloud
          artifactId: spring-cloud-services-starter-circuit-breaker
          links:
            - rel: reference
              href: https://docs.pivotal.io/spring-cloud-services/
              description: Reference doc
    - name: Amazon Web Services
      bom: spring-cloud
      content:
        - name: AWS Core
          id: cloud-aws
          description: AWS native services from spring-cloud-aws
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-aws
        - name: AWS JDBC
          id: cloud-aws-jdbc
          description: Relational databases on AWS with RDS and spring-cloud-aws-jdbc
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-aws-jdbc
        - name: AWS Messaging
          id: cloud-aws-messaging
          description: Messaging on AWS with SQS and spring-cloud-aws-messaging
          groupId: org.springframework.cloud
          artifactId: spring-cloud-starter-aws-messaging
    - name: Azure
      bom: azure
      versionRange: "1.5.4.RELEASE"
      content:
        - name: Azure Support
          id: azure-support
          groupId: com.microsoft.azure
          artifactId: azure-spring-boot-starter
          description: Auto-configuration for Azure Services (service bus, storage, active directory, cosmos DB, key vault and more)
          links:
            - rel: reference
              href: https://github.com/Microsoft/azure-spring-boot/tree/master/azure-spring-boot
              description: Reference doc
        - name: Azure Active Directory
          id: azure-active-directory
          groupId: com.microsoft.azure
          artifactId: azure-active-directory-spring-boot-starter
          description: Spring Security integration with Azure Active Directory for authentication
          links:
            - rel: guide
              href: https://github.com/Microsoft/azure-spring-boot/tree/master/azure-spring-boot-samples/azure-active-directory-spring-boot-sample
              description: Using Active Directory
            - rel: reference
              href: https://github.com/Microsoft/azure-spring-boot/tree/master/azure-spring-boot-starters/azure-active-directory-spring-boot-starter
              description: Reference doc
        - name: Azure Key Vault
          id: azure-keyvault-secrets
          groupId: com.microsoft.azure
          artifactId: azure-keyvault-secrets-spring-boot-starter
          description: Spring value annotation integration with Azure Key Vault Secrets
          links:
            - rel: guide
              href: https://github.com/Microsoft/azure-spring-boot/tree/master/azure-spring-boot-samples/azure-keyvault-secrets-spring-boot-sample
              description: Using Key Vault
            - rel: reference
              href: https://github.com/Microsoft/azure-spring-boot/tree/master/azure-spring-boot-starters/azure-keyvault-secrets-spring-boot-starter
              description: Reference doc
        - name: Azure Storage
          id: azure-storage
          groupId: com.microsoft.azure
          artifactId: azure-storage-spring-boot-starter
          description: Azure Storage service integration
          links:
            - rel: guide
              href: https://github.com/Microsoft/azure-spring-boot/tree/master/azure-spring-boot-samples/azure-storage-spring-boot-sample
              description: Using Azure Storage
            - rel: reference
              href: https://github.com/Microsoft/azure-spring-boot/tree/master/azure-spring-boot-starters/azure-storage-spring-boot-starter
              description: Reference doc
    - name: Google Cloud Platform
      bom: spring-cloud
      versionRange: 2.0.0.RELEASE
      content:
        - name: GCP Support
          id: cloud-gcp
          description: Support for Google Cloud Platform services
          groupId: org.springframework.cloud
          artifactId: spring-cloud-gcp-starter
          links:
            - rel: reference
              href: https://docs.spring.io/spring-cloud-gcp/docs/${local.gcp.version}/reference/htmlsingle/
              description: Reference doc
            - rel: guide
              href: https://github.com/spring-cloud/spring-cloud-gcp/tree/master/spring-cloud-gcp-samples
              description: Samples
        - name: GCP Messaging
          id: cloud-gcp-pubsub
          description: Publish to and subcribe from Google Cloud Pub/Sub topics
          groupId: org.springframework.cloud
          artifactId: spring-cloud-gcp-starter-pubsub
          links:
            - rel: reference
              href: https://docs.spring.io/spring-cloud-gcp/docs/${local.gcp.version}/reference/htmlsingle/#_spring_cloud_gcp_for_pub_sub
              description: Reference doc
            - rel: guide
              href: https://github.com/spring-cloud/spring-cloud-gcp/tree/master/spring-cloud-gcp-samples/spring-cloud-gcp-pubsub-sample
              description: Sample
        - name: GCP Storage
          id: cloud-gcp-storage
          description: Access Google Cloud Storage objects
          groupId: org.springframework.cloud
          artifactId: spring-cloud-gcp-starter-storage
          links:
            - rel: reference
              href: https://docs.spring.io/spring-cloud-gcp/docs/${local.gcp.version}/reference/htmlsingle/#_spring_resources
              description: Reference doc
            - rel: guide
              href: https://github.com/spring-cloud/spring-cloud-gcp/tree/master/spring-cloud-gcp-samples/spring-cloud-gcp-storage-resource-sample
              description: Sample
    - name: I/O
      content:
        - name: Batch
          id: batch
          description: Spring Batch support
          weight: 100
          links:
            - rel: guide
              href: https://spring.io/guides/gs/batch-processing/
              description: Creating a Batch Service
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#howto-batch-applications
        - name: Mail
          id: mail
          description: Send email using Java Mail and Spring Framework's JavaMailSender
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-email
        - name: Apache Camel
          id: camel
          versionRange: "1.5.0.RELEASE"
          mappings:
            - versionRange: "[1.5.0.RELEASE,2.0.0.M1)"
              version: 2.21.5
            - versionRange: "[2.0.0.M1,2.1.0.M1)"
              version: 2.22.4
            - versionRange: "2.1.0.M1"
              version: 2.23.2
          description: Integration using Apache Camel
          groupId: org.apache.camel
          artifactId: camel-spring-boot-starter
          links:
            - rel: guide
              href: https://camel.apache.org/spring-boot
              description: Using Apache Camel with Spring Boot
        - name: LDAP
          id: data-ldap
          description: LDAP support, including spring-data-ldap
          versionRange: 1.5.0.RELEASE
          links:
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#boot-features-ldap
        - name: Quartz Scheduler
          id: quartz
          versionRange: 2.0.0.M2
          description: Schedule jobs using Quartz
        - name: Spring Shell
          id: spring-shell
          groupId: org.springframework.shell
          artifactId: spring-shell-starter
          description: Build shell-based clients
          version: 2.0.0.RELEASE
          repository: spring-milestones
          links:
            - rel: reference
              href: https://docs.spring.io/spring-shell/docs/2.0.0.M2/reference/htmlsingle/
        - name: Statemachine
          id: statemachine
          groupId: org.springframework.statemachine
          artifactId: spring-statemachine-starter
          description: Build applications using state machine concepts
          versionRange: 2.0.0.RC1
          bom: spring-statemachine
          links:
            - rel: reference
              href: https://docs.spring.io/spring-statemachine/docs/current-SNAPSHOT/reference/htmlsingle/
            - rel: guide
              href: https://docs.spring.io/spring-statemachine/docs/current-SNAPSHOT/reference/htmlsingle/#developing-your-first-spring-statemachine-application
              description: Developing your first Spring Statemachine application
    - name: Ops
      content:
        - name: Actuator
          id: actuator
          description: Production ready features to help you monitor and manage your application
          links:
            - rel: guide
              href: https://spring.io/guides/gs/actuator-service/
              description: Building a RESTful Web Service with Spring Boot Actuator
            - rel: reference
              href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/#production-ready
        - name: Spring Boot Admin (Server)
          id: codecentric-spring-boot-admin-server
          groupId: de.codecentric
          artifactId: spring-boot-admin-starter-server
          description: An admin interface for Spring Boot applications
          versionRange: "[1.5.9.RELEASE,2.2.0.M1)"
          bom: codecentric-spring-boot-admin
          links:
            - rel: reference
              href: https://codecentric.github.io/spring-boot-admin/current/#getting-started
        - name: Spring Boot Admin (Client)
          id: codecentric-spring-boot-admin-client
          groupId: de.codecentric
          artifactId: spring-boot-admin-starter-client
          description: Register your application with a Spring Boot Admin instance
          versionRange: "[1.5.9.RELEASE,2.2.0.M1)"
          bom: codecentric-spring-boot-admin
          links:
            - rel: reference
              href: https://codecentric.github.io/spring-boot-admin/current/#getting-started
        - name: Actuator Docs
          id: actuator-docs
          description: API documentation for the Actuator endpoints
          versionRange: "[1.5.0.RELEASE,2.0.0.M1)"
          groupId: org.springframework.boot
          artifactId: spring-boot-actuator-docs
  types:
    - name: Maven Project
      id: maven-project
      description: Generate a Maven based project archive
      tags:
        build: maven
        format: project
      default: true
      action: /starter.zip
    - name: Maven POM
      id: maven-build
      description: Generate a Maven pom.xml
      tags:
        build: maven
        format: build
      default: false
      action: /pom.xml
    - name: Gradle Project
      id: gradle-project
      description: Generate a Gradle based project archive
      tags:
        build: gradle
        format: project
      default: false
      action: /starter.zip
    - name: Gradle Config
      id: gradle-build
      description: Generate a Gradle build file
      tags:
        build: gradle
        format: build
      default: false
      action: /build.gradle
  packagings:
    - name: Jar
      id: jar
      default: true
    - name: War
      id: war
      default: false
  javaVersions:
    - id: 12
      default: false
    - id: 11
      default: false
    - id: 1.8
      name: 8
      default: true
  languages:
    - name: Java
      id: java
      default: true
    - name: Kotlin
      id: kotlin
      default: false
    - name: Groovy
      id: groovy
      default: false
  bootVersions:
    - name: Latest SNAPSHOT
      id: 2.2.0.BUILD-SNAPSHOT
      default: false
    - name: 2.1.1.
      id: 2.1.1.RELEASE
      default: true

---

spring:
  profiles: dev
  resources:
    static_locations:
      - file:start-client/build/
    chain:
      strategy:
        content:
          enabled: false
  devtools:
    restart:
      additional_paths:
        - start-client/build/
      additional_exclude: "**/*.js,**/*.css"

