Last metadata question (for today anyway!)
Can someone clarify what the recommendation on metadata organisation in the metadata location appendix means please?
Apologies, I’m probably being rather dim, but I’m not understanding this!
First off, does “system” mean “suite” here? I’m currently assuming it does - maybe I’m wrong, and this whole recommendation is irrelevant for a suite?
Wondering as I can’t see recommendations on metadata organisation the suite design guide which would fit my interpretation below.
Assuming recommendation is for suites…
I’ve currently got my suite organised something like this, with a top-level
meta dir for the suite metadata, and per-app
meta subdirs for the metadata for individual apps:
/path/to/mi-su173 me@pc:> tree . |-- app | |-- my-model_config-compile-test_cold | | |-- bin | | | `-- config-compile-test_mod.sh | | |-- meta | | | `-- rose-meta.conf | | `-- rose-app.conf | |-- my-model_install_cold | | |-- bin | | | `-- install_mod.sh | | |-- meta | | | `-- rose-meta.conf | | `-- rose-app.conf | <snip more apps> <snip other dirs & files> |-- meta | `-- rose-meta.conf |-- rose-suite.conf |-- rose-suite.info `-- suite.rc
I’m not entirely clear what advice above means for my suite, both for the suite-level metadata, and for the app-level metadata.
I think it means I should rejig my suite, to move the individual apps’
meta subdirs up, to live under a
rose-meta dir (and I assume my suite metadata too).
And I should be effectively duplicating my apps’ directory structure - would have same subdirs under
/rose-meta as well as under
/app. So I’d end up with something like:
|-- app | |-- my-model_config-compile-test_cold | | |-- bin | | | `-- config-compile-test_mod.sh | | `-- rose-app.conf | |-- my-model_install_cold | | |-- bin | | | `-- install_mod.sh | | `-- rose-app.conf | <snip more apps> <snip other stuff> |-- rose-meta | |-- my-model_config-compile-test_cold | | `-- rose-meta.conf | |-- my-model_install_cold | | `-- rose-meta.conf | <snip dirs/rose-meta.confs for more apps> | `-- rose-meta.conf # suite-level metadata |-- rose-suite.conf |-- rose-suite.info `-- suite.rc
And I’d let each app/the suite know where to find its metadata by using the meta setting.
rose-suite.conf would specify:
app/my-model_copy_cold/rose-app.conf would specify:
and so on.
Is this right? Wanting to check my understanding on this before I charge off and do this, as this would require updating quite a few extra places if I ever changed the name of a given app! And I’m increasing “separation” in dir structure between my metadata for a given app, and the app itself.
I’m also wondering whether I’ve got wrong end of stick with my “duplicate dir structure” interpretation as I’ve seen other places (e.g. UM) where there’s just a single monolithic large rose-meta.conf file.
If recommendation would apply to me, is there a good reason for the recommendation? I.e. what is the benefit of me overhauling current structure to a “duplicated dir structure”? (or a monolithic rose-meta.conf if I’ve got wrong end of stick)?