-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for layer tags #57
Comments
Alright, to begin with let's say that [layers.log]
tags = ["logging", "log4j"]
modules = [
"org.apache.logging.log4j:log4j-api:jar:2.13.1",
"org.apache.logging.log4j:log4j-core:jar:2.13.1",
"com.example.it:it-logconfig:1.0.0"] Which says the There could be another layer definition such as [layers.log2]
tags = ["logging", "slf4j"]
modules = [
"org.slf4j:slf4j-simple:1.7.30",
"com.example.it:it-logconfig:1.0.0"] We can't use the same name Now for a tricky part. Regardless of the choice, the
Question:
|
Layers
are a way to define module sets for applications.Those module-sets are composed of a hierarchy defined by a layers-configuration file. This model fits most application types with fixed a set of dependency- and various application-modules.
However, some applications would benefit from a more flexible layer composition at startup time or runtime. One example of this might be an application that provides some plugin system, where the plugins could be simple jar modules or complete layers on their own, e.g. if they ship with their dependencies. Such an application might want to support the execution with a different set of enabled plugins or layers, depending on the configuration or an application "profile".
For use-cases like above, it would be helpful to have a tagging mechanism for layers. A tag aware layer composition facility would enable applications to compose layers based on a set of given tags dynamically. Frameworks like spring-boot support profiles, which provide a way to segregate parts of application configuration and make it available only in specific environments. The same could be applied to layers.
Tags could also help to qualify the handling of layers. Layers could be tagged as
hot-deployable
,read-only
, orupdatable
to advise a layer composition system to handle some layers differently.Another use-case for tagged layers would be environment-specific tags, e.g.
windows
orlinux
to denote that a particular layer is only available on a specific OS.The text was updated successfully, but these errors were encountered: