NOAA-EMC / GDASApp

Global Data Assimilation System Application
GNU Lesser General Public License v2.1
15 stars 30 forks source link

Reorganize where the bundle dependencies are cloned #8

Closed guillaumevernieres closed 1 year ago

guillaumevernieres commented 2 years ago

The repositories specified in the bundle are cloned at the root level of the GDASApp repository, which is a bit messy. It isn't a huge issue, but a bit annoying.

This is what the root of GDASApp looks like before calling build.sh, nice and clean:

├── modulefiles
├── parm
├── test
└── ush

and after calling build.sh:

├── build
├── crtm
├── femps
├── fms
├── fv3
├── fv3-jedi
├── fv3-jedi-data
├── fv3-jedi-lm
├── gsw
├── ioda
├── ioda-data
├── jedicmake
├── modulefiles
├── mom6
├── oops
├── parm
├── saber
├── saber-data
├── soca
├── test
├── test-data-release
├── ufo
├── ufo-data
└── ush

Do we care? Should we move the bundle part of the root cmakelist to a bundle or something folder?

CoryMartin-NOAA commented 2 years ago

@guillaumevernieres this is something @aerorahul tried and was unable to do currently because of jedicmake but we definitely want everything under src/ eventually (e.g. src/soca)

guillaumevernieres commented 2 years ago

@guillaumevernieres this is something @aerorahul tried and was unable to do currently because of jedicmake but we definitely want everything under src/ eventually (e.g. src/soca)

Senior moment I guess, I do remember a discussion about this. What's wrong with switching to ecbuild? It would make that reorganization task a lot easier. Thoughts @aerorahul , @CoryMartin-NOAA ?

aerorahul commented 2 years ago

@guillaumevernieres Using ecbuild is not the issue. We are using ecbuild when building the bundle. The GDASApp is not just a bundle though. It contains the bundle as part of src/. The scripting, modules, jobs, etc are part of the GDASApp and the structure of this application is dictated by NCO. If anyone can retain the structure while using ecbuild, that is perfectly acceptabl.e