Giter Club home page Giter Club logo

Comments (3)

wilkinsona avatar wilkinsona commented on August 19, 2024 1

I'm afraid not.

The Playtika Testcontainers support depends on Spring Cloud. It uses its bootstrap context (a separate application context that's started very early) to get things up a running and then adds properties to the main context. In terms of the lifecycle and adding properties to the environment, this is similar to what Spring Cloud Config server does.

When designing Spring Boot's service connection support, we didn't want to require a separate application context for bootstrapping, and we had the luxury of being able to avoid that by introducing the ConnectionDetails abstraction. This is lighter weight than requiring another application context, and, as I described above, also has the benefit of allowing the connection details to be accessed in a consistent manner, irrespective of their source.

from spring-boot.

wilkinsona avatar wilkinsona commented on August 19, 2024

Thanks for the suggestion. Unfortunately, there's a chicken and egg problem here. Properties are used to configure the Docker Compose support so the environment has to have been prepared before the Docker Compose support can run. This makes it too late for that support to then add properties to the environment.

If you want to access the properties that are retrieved from the running containers, you should inject the relevant …ConnectionDetails bean. This will allow the details to be consumed in a consistent way, no matter where they've come from (Docker Compose, Testcontainers, properties in the environment, or a custom …ConnectionDetails bean).

from spring-boot.

artemptushkin avatar artemptushkin commented on August 19, 2024

@wilkinsona thank you for answering quickly I had considered this I think, I actually wanted to ask why with this request as I'm a curious Spring Boot developer.

I know that in playtika starter they expose new properties after the container is started, isn't it not possible to do it in Spring too?

from spring-boot.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.