We are happy to announce the release of SeedStack 21.7 «Yucca».

New features

YAML/JSON configuration values

SeedStack now supports dynamic parsing of YAML/JSON configuration values. This allows to access valid YAML/JSON values as trees.

Suppose you have a MY_DB_SECRET environment variables containing JSON:

{
  "dbClusterIdentifier": "...",
  "password": "...",
  "dbname": "...",
  "engine": "...",
  "port": 5432,
  "host": "...",
  "username": "..."
}

You parse the environment variable JSON in an intermediate tree, and then refer to the individual fields by using config macros to build a JDBC URL (for instance):

myApp:
  dbConfig|json: ${env.MY_DB_SECRET}

jdbc:
  datasources:
    myDatasource:
      url: jdbc:postgresql://${myApp.dbConfig.host}:${myApp.dbConfig.port}/${myApp.dbConfig.dbname}?user=${myApp.dbConfig.username}&password=${myApp.dbConfig.password}&currentSchema=guitars

Config profile environment variable

In addition to the existing seedstack.profiles system property, you can now activate configuration profiles by setting the SEEDSTACK_PROFILES environment variable:

export SEEDSTACK_PROFILES=profile1,profile2
java -jar my-app.jar

Configuration profiles profile1 and profile2 will be activated. If you specify both the environment variable and the system property, the union of all profiles will be activated.

Diagnostic resource

If config option rest.diagnosticResource is set to true, the diagnostic report will be available as a JSON representation at [restPath]/seedstack/diagnostic. Default is false. Do not enable permanently in production!

Fixes

This version also contains fixes in various components, please check individual component change logs for details.

Changes

This version also contains changes in various components, please check individual component change logs for details.

Component versions

General

  • seedstack-maven-plugin: 2.8.0

Core

Add-ons


On this page


Edit