GitLab CI: Direct build directory to $HOME #647
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This patch directs the compilation of GitLab regression test models to the $HOME directory.
This is motivated by incredibly slow file access times on GFDL's GPFS file system (F5), with the Nvidia builds taking a prohibitively long time (around 4 hours). Compiling in $HOME reduces Nvidia times to 15 minutes, with similar reduction times in the other compilation.
This is achieved with only minimal changes to the build system. Instead of creating
build/
, we create a dedicated directory in$HOME/ci/$CI_PROJECT_ID/build
and a symbolic link to this directory in the GPFS directory. To support these builds, additional symlinks tosrc/
andocean_only/
(for static builds) are also created, from $HOME and back into GPFS.Once the job is completed, the temporary space in $HOME is deleted. We also check for and delete any other stale directories older than 3 days, such as from incomplete tests.
This should not be considered a permanent solution, it is only meant to get us through a difficult period of testing. Hopefully we can revert this change in the near future.