From my experience yes, DSL can be nested.
If you get( Config<T>) and the raw value is not from T but a "DSL" value then the DeferredSupplier value will be evaluated.
Nested DeferredSupplier are also evaluated if necessary.

However if your raw value is a list of "DSL" and you `get(Config<List<T>>)` then it will not be evaluated.
An example [1]

[1] https://github.com/cloudsoft/brooklyn-blockstore/pull/28/files#diff-041e352d59c46770a9b973b7f8232ef2R55


On 25/05/17 15:59, Murdo Aird wrote:
Can Brooklyn DSL be nested?

I want to retrieve a secret from vault using the external provider and the 
following syntax works:

$brooklyn:external("vault", "name-of-secret")

However, the secret I want to retrieve is variable and depends on the way the blueprint 
is deployed. I, therefore, want to be able to pull the "name-of-secret" from 
some other config. For example:

$brooklyn:external("vault", $brooklyn:entity("blah").config("name-of-secret"))

However that syntax does not work. Any guidance would be appreciated.

Thanks
Murdo

--
Valentin Aitken
Software Engineer
Cloudsoft Corporation Ltd.
www.cloudsoft.io

Reply via email to