Fork me on GitHub

How do you pronounce polylith?


poly as in polymorphism and lith as in monolith

👍 1
polylith 1

Hey guys, I think I asked this question once before but I am not sure if I have a good understanding of what would be best here. We use Juxt Aero for configuration so we have profiles setup for different environments in there ( dev, staging, prod ). I am trying to figure out the best place to put the configuration in a polylith setup. I feel like base in someways because I should be able to execute a base independent of the project ( how its truly deployed ). Any thoughts on this ?


I think it really depends on the context. We have default config that is either in bases or sometimes in components, depending on the scope, but we also have config that is per-project.


Not sure what you mean about "execute a base independent of the project" since projects are what gets deployed and therefore executed?


Since we are using aero we don't have to split up the config based on how we are running it. It gets rendered based on the profile passed in. I can see potentially having little mini configs in a component if config is needed for a test or something there.


Basically I mean i should be able to run the base using my config by just running the main. Not have to build into an uberjar or something first


You'd still need to run it via a project to get the dependencies.


(since bricks don't have dependencies on other bricks -- those are all provided by projects)


only way would be to run the base from the repl (dev profile) at that point


That's still a "project".


so sounds like the project is where I should put them


Since you have just a single "uber config" rather than a combination of small configs, yes, projects seem to be the right level for it.