Hi Richard,
Thanks for raising this. FYI Alex has created a PR with tests
demonstrating the behaviour [1] you describe.
---
In the docs [2], we encourage the use of the format below for "entity"
(because there is only one thing, the `services: ` is unnecessary and
misleading - it suggests you could have multiple things under `services`):
brooklyn.catalog:
version: 0.1.3.SNAPSHOT
items:
- id: inner
itemType: entity
item:
type: server
- id: outer
itemType: entity
item:
type: inner
In contrast, if you're adding a "template" (which can consist of
multiple services), then the format would be:
brooklyn.catalog:
version: 0.1.3-SNAPSHOT
items:
- id: my-app
itemType: template
item:
services:
- type: server
If you use that format for `itemType: entity`, I think it works as expected.
Aled
[1] https://github.com/apache/brooklyn-server/pull/748
[2] http://brooklyn.apache.org/v/0.11.0/ops/catalog/
On 29/06/2017 09:48, Richard Downer wrote:
Hello all,
If I create a catalog.bom with these contents and try to add this to the
catalog with `br catalog add`:
brooklyn.catalog:
version: 0.1.3.SNAPSHOT
items:
- id: inner
itemType: entity
item:
services:
- type: server
- id: outer
itemType: entity
item:
services:
- type: inner
it fails with error `Server error (400): Could not resolve item 'outer'; 2
errors including: Transformer for Brooklyn OASIS CAMP interpreter gave an
error creating this plan: Unable to match plan item:
Service[name=<null>,description=<null>,serviceType=inner,characteristics=[],customAttributes={}]`
If I split this into two different catalog.bom files, and add them one
after the other, it works.
It seems to me that what works with two individual catalog.bom files should
also work when both files are combined into one. What do others think about
this?
Changing `entity` for `template` resolves this problem - as I understand
it, `template` causes in-depth parsing to be deferred until something tries
to use the catalog item. Unfortunately that means that some errors in the
catalog item may not be discovered until deployment time.
Richard.