Add support setup default initializers for all deployment
authorThomas Bouron <thomas.bouron@cloudsoftcorp.com>
Wed, 14 Jul 2021 12:41:21 +0000 (13:41 +0100)
committerThomas Bouron <thomas.bouron@cloudsoftcorp.com>
Wed, 14 Jul 2021 12:41:21 +0000 (13:41 +0100)
commita3549ed5a2ee84744df201ab519d1f805ead9abf
tree096510c7e13c71bc9f433a87970ad599165afff4
parent87f842f06f68cca04dd07c138312d05900db4be5
Add support setup default initializers for all deployment

This looks up a new configuration options called `brooklyn.deployment.initializers` (comma separated list). If specified on a Brooklyn instance, all deployments will load and execute these initializers. Theses classes are expected to be `EntityInitializer`, if an error occur (either cast or anything else) then the deployment will fail.

The code will try to:
1. load the class from the default class loader.
2. if (1) fails, it will try to load the class from the `TypeRegistry`. This is to allow execution of custom initializers that might be installed in the catalog later on.
3. if (1) and (2) fails, then the deployment is aborted.
karaf/features/src/main/resources/resources/etc/brooklyn.cfg