Referencing Rose apps within subdirectories

Reposting my question from the NCAS-CMS forum, where the answer given is no. Posting here under Rose Development … can this be done?

While playing around with some of the Rose suite examples I’ve become unstuck with how to reference (point to) rose apps within subdirectories. Looking at an analogous configuration for metadata it is possible to reference rose-meta.conf contained with subdirectories by including an import statement at the top-level rose-meta.conf file.

meta/
 |- rose-meta.conf      <- top-level meta-file
 |
 |- config1/
 |       |- rose-meta.conf
 |
 |- config2/
 |       |- rose-meta.conf

Referencing the meta files in config1 and config2 can be achieved be adding import=meta/config1 meta/meto meta/config2 to the top-level meta file. (See also Configuration Metadata — Rose Documentation 2.1.0 documentation)

So, I’m curious to know whether similar behaviour can be done for the apps directory. For example, if I were to group together related apps into a subdirectory, how to reference these so they appear within the rose edit as sub-panels?

app/
 |
 |- config_apps/
 |       |- rose-app.conf
 |       |
 |       |- alpha
 |       |      |- rose-app.conf
 |       |
 |       |- omega
 |             |- rose-app.conf
 |
 |- util_apps/
 |       |- rose-app.conf
 |       |
 |       |- delta
 |       |      |- rose-app.conf
 |       |
         |- gamma
               |- rose-app.conf

I’ve tried adding an import statement at the top-level rose-app.conf files within each sub-directory but this has no effect. At present, only the top-level directories config_apps and util_apps appear in the rose edit GUI. If I move the directories alpha, omega, delta and gamma to be all under app/ directory then they appear in the rose edit GUI ordered alphabetically.

For me, the user guide is not clear on how this can be done. The user guide has some details on using optional rose-app.conf files but that is not quite what I am seeking as they refer to an opt directory within the app’s directory (Optional Configurations — Rose Documentation 2.1.0 documentation). I’m thinking that there must be a configuration setting that I’m missing out on.

So I’m casting my net into a different pool of knowledge.

Regards,

Andrew.

“Casting a light into the four dark corners.”

Is the goal here to be able to better organise the rose edit window by grouping related applications together, or is there another reason to want to organise applications like this?

Yes, the first part of your reply - to organise related apps together, at present these are all listed in alphabetic order. As a newish user, I find I have to hop between rose/cycl config/rc files to work out which apps are related to each other. For example, I would like to group together all the apps that are specific to an atmospheric model, likewise for an ocean model, and then there are the common utilities used by both. There are other aspects … but this is the first step.

Ok, at present the rose edit application expects to find all applications in the app/ directory so does not list applications stored in sub-directories like this.

However, you can still open rose edit for these applications e.g:

$ rose edit -C app/config_apps/alpha

So it’s possible to organise apps like this, but you loose the convenience of having rose-edit list the applications for you. Note that in rose, the suite and all applications within it are completely separate.

Hi Oliver,

Thank you for your suggestion, which is currently how I access these apps. I understand that the apps are intended to be standalone.

I just find it irksome that these apps cannot be grouped because, for me, it breaks the “organised flow of user tasks” I have in mind. For now, to get myself out of this rabbit hole, I’ll write some user notes mapping out how the apps are related to each other.

Perhaps, something to consider for future development?

Regards,

Andrew.

The current rose edit GUI is based on Python 2 and GTK 2 (both deprecated) and is no longer under active development. It will be replaced by a new Python 3 browser-based web app which will probably not list applications, but instead give you a file explorer to locate them which would work around this issue somewhat.

Interesting - is there a timeline for the release of the new version?

Unfortunately, not at present.