I am investigating the use of easybuild when we roll out our next cluster. One concern raised was from https://github.com/easybuilders/easybuild/wiki/Using-a-custom-module-naming-scheme where it clear states that different installation prefixes are needed for different easybuild naming schemes, or easybuild for schemeA might delete software built with schemeB.
I am still getting familiar with easybuild, but this suggests to me that if I plan to have a mix of software built with easybuild and software built manually and/or with some other software build tools, that they would need to be installed in distinct software trees. E.g., if I intend to build package foo with easybuild, putting it in /software/Core/foo/... and I intend to build package bar manually, then I better not put bar in /software/Core/bar but in something like /software2/Core/bar. (Using HierarchicalMNS naming scheme) Is my understanding of this correct? Does this only happen if rebuild/force flag is used? Does it only happen for the app trying to rebuild (and/or dependencies)? --- e.g. is it safe to have both foo and bar under /software/Core as long as I never issue an easybuild command that would try to rebuild bar (either directly or as a dependency)? E.g., is the foo/bar example somewhat OK, but I only get burned if I e.g. built foo/1.2.3 with eb and foo/1.2.4 manually? Is there a list anywhere of the directories that EasyBuild wants full control over? Is it the whole tree rooted at --prefix, or just the source, build, software install, module install paths? to Would it be safe to have foo in /software/[Core|Compiler| MPI]/foo and bar directly under /software?