The Spring Blog

Engineering
Releases
News and Events

Introducing Actuator Endpoints in Spring Boot 2.0

Spring Boot 2 brings important changes to Actuator and I am pleased, on behalf of the team, to give you a sneak peek to what’s coming in 2.0.0.M4.

Working on a major new release gives us the opportunity to revisit some of the public contracts and improve them. We quickly felt that the endpoint infrastructure was one of them: currently, the web endpoints in the Actuator are only supported with Spring MVC (no JAX-RS support). Also, creating a new endpoint that exposes several operations requires writing quite a lot of boiler plate: you need to write a main endpoint, the Spring MVC extension (as a @RestController), a JMX MBean and the necessary auto-configuration. As of Spring Boot 2 support for a "reactive" actuator became an obvious requirement that also brings several new challenges.

Read more...

Spring Cloud Dalston SR3 Is Now Available

On behalf of the community, I am pleased to announce that the Service Release 3 (SR3) of the Spring Cloud Dalston Release Train is available today. The release can be found in Maven Central. You can check out the Dalston release notes for more information.

This release is primarily a bug fix release and users are encouraged to upgrade.

The following modules were updated as part of Dalston.SR3:

Module Version
Spring Cloud Zookeeper 1.1.2.RELEASE
Spring Cloud Sleuth 1.2.4.RELEASE
Spring Cloud Netflix 1.3.4.RELEASE
Spring Cloud Contract 1.1.3.RELEASE
Read more...

Spring For Apache Kafka 1.3 Milestone 2 Available

We are pleased to announce the availability of the Milestone 2 of the Spring for Apache Kafka 1.3 version.

It is available for download from the Milestone Repository:

repositories {
    maven { url 'http://repo.spring.io/libs-milestone' }
}
compile "org.springframework.kafka:spring-kafka:1.3.0.M1"

(Milestone 1 had a blocker issue).

Functionally, the 1.3.x line provides a subset of the 2.0 line (which requires Spring Framework 5.0 and Java 8), but provides support for Java 7 projects and Spring Framework 4.3.x.

Read more...

Spring Cloud Task 2.0.0.M1 is now available

We are pleased to announce that Spring Cloud Task 2.0.0.M1 is now available via Github and the Pivotal download repository. Many thanks to all of those who contributed to this release.

This release is the first release that is compatible with the Spring Boot 2.0 milestones (specifically Spring Boot 2.0.0.M3 for this release). With that upgrade, all dependencies are also upgraded (Spring Cloud Stream, Spring Batch, etc) as well as an upgrade of the baseline Java version to Java 8.

What do you think?

Read more...

This Week in Spring - August 15th, 2017

Hi Spring fans and welcome to another installment of This Week in Spring! It’s been a busy week! I started last week talking to a group of developers in North Carolina, then gave a VJUG presentation with Matt Raible in San Francisco, then spoke to developers in Saint Louis, then flew to New York City to shoot a video on continuous delivery for three days in a hot studio (over the weekend no less!) and now as I wing back to San Francisco I look forward to spending a blissful 14 hours on the ground before I’m off to Asia (Hangzhou, Shanghai, Beijing, Shenzhen, Hong Kong, and Singapore) for about four weeks! I’m not the only who’s been busy, though! As usual, we’ve got a lot to cover this week so let’s get to it!

Read more...

There's no place like production. SpringOne Platform will illuminate the path.

Hi Spring fans!

My favorite time of the year is almost here! It’s that special time when people reunite, in the northern hemisphere’s chilly December to give freely and unconditionally of one another; when people have jovial discussions (and sometimes heated debates) over dinner with people they admire; when people open their hearts and minds to each other; when we reflect on the year behind us and look forward to tomorrow, the next week and the next year; when amazing new memories we’ll cherish forever are forged. It’s that special time of giving, of openness. I don’t need to tell you about this special time, though! Of course, I’m talking about the time of the year for SpringOne Platform! (What else could I have been talking about?)

Read more...

This Week in Spring - August 8th, 2017

Hi Spring fans and welcome to another installment of This Week in Spring! This week I’m presenting with my buddy Matt Raible on the VJUG (Virtual JUG) on Progressive Web Applications with Spring Boot and Angular 4, this Wednesday. Join us! Then it’s off to New York City, NY where I’ll be working with my buddy Marcin Grzejszczak on an exciting new project.

Read more...

Spring Cloud Data Flow 1.3.0.M1 released

On behalf of the team, I am pleased to announce the first milestone release of Spring Cloud Data Flow 1.3.0.

Local Server: Getting Started Guide.

Usability is one of the big focus for our team and in the 1.3 release-line, we are aiming to modernize the dashboard with an upgraded client-side technology stack, improved tooling, and documentation. The focus is to improve the readability, user-experience, and the overall performance.

Angular 4

This first milestone release of Spring Cloud Data Flow contains the initial version of the new Angular 4 based Dashboard UI. The old AngularJS 1.x based UI, particularly the tooling and secondary framework/library choices, started to show their age.

Read more...

Spring IO Platform Brussels-SR4

I am pleased to announce that Spring IO Platform Brussels-SR4 is now available from both repo.spring.io and Maven Central.

This maintenance release upgrades the versions of a number of the projects in the Platform:

  • Spring Batch 3.0.8
  • Spring Boot 1.5.6
  • Spring Data Ingalls SR6
  • Spring Framework 4.3.10
  • Spring Integration 4.3.11
  • Spring Retry 1.2.1

The versions of a number of third-party dependencies have also been updated.

Project Page | GitHub | Issues | Documentation

Read more...

Spring Cloud Pipelines 1.0.0.M6 Released

On behalf of the Spring Cloud team it is my pleasure to announce a new milestone release of Spring Cloud Pipelines - 1.0.0.M6.

What’s new?

Pipeline descriptor

Each application can contain a file called pipeline.yml with the following structure:

lowercaseEnvironmentName1:
    services:
        - type: service1Type
          name: service1Name
          coordinates: value
        - type: service2Type
          name: service2Name
          key: value
lowercaseEnvironmentName2:
    services:
        - type: service3Type
          name: service3Name
          coordinates: value
        - type: service4Type
          name: service4Name
          key: value

For a given environment we declare a list of infrastructure services that we want to have deployed. Services have

  • type (example: eureka, mysql, rabbitmq, stubrunner) - this value gets then applied to the deployService Bash function

  • name - name of the service to get deployed

  • coordinates - coordinate that allows you to fetch the binary of the service. Examples: It can be a maven coordinate groupid:artifactid:version, docker image organization/nameOfImage, etc.

  • arbitrary key value pairs - you can customize the services as you wish

The stubrunner type can also have the useClasspath flag turned on to true or false.

Example:

test:
  services:
    - type: rabbitmq
      name: rabbitmq-github-webhook
    - type: mysql
      name: mysql-github-webhook
    - type: eureka
      name: eureka-github-webhook
      coordinates: com.example.eureka:github-eureka:0.0.1.M1
    - type: stubrunner
      name: stubrunner-github-webhook
      coordinates: com.example.eureka:github-analytics-stub-runner-boot-classpath-stubs:0.0.1.M1
      useClasspath: true
stage:
  services:
    - type: rabbitmq
      name: rabbitmq-github
    - type: mysql
      name: mysql-github
    - type: eureka
      name: github-eureka
      coordinates: com.example.eureka:github-eureka:0.0.1.M1

When the deployment to test or deployment to stage occurs, Spring Cloud Pipelines will:

  • for test environment, delete existing services and redeploy the ones from the list

  • for stage environment, if the service is not available it will get deployed. Otherwise nothing will happen

Release Notes

You can click here to see the Release Notes for more information about what’s been done for this milestone.

Read more...