JCSDA / ufs-bundle

Bundle for interfacing UFS models with JEDI interfaces
GNU Lesser General Public License v2.1
0 stars 3 forks source link

Update ubuntu-ci-x86_64.yaml - change spack-stack-1.7.0 location #65

Closed climbfuji closed 4 months ago

climbfuji commented 5 months ago

Description

Change location of spack-stack install directory and split the ufs builds up by application to make it easier to see where it fails.

Note. Contains a temporary change of the soca branch - the corresponding soca PR https://github.com/JCSDA-internal/soca/pull/1048 needs to be merged first if CI testing is successful, then the temporary change in CMakeLists.txt in this PR needs to be reverted. Same for https://github.com/JCSDA-internal/fv3-jedi/pull/1226

Issue(s) addressed

Resolves failing CI since rebuild of the Ubuntu CI self-hosted runner

Dependencies

Impact

n/a

Checklist

climbfuji commented 5 months ago

@travissluka Hmmm I fixed this a few weeks ago, why is the error back?

[ 96%] Building Fortran object soca/src/soca/CMakeFiles/soca.dir/Geometry/soca_geom_mod.F90.o
ifort: command line warning #10121: overriding '-qopenmp-stubs' with '-qopenmp'
/home/ubuntu/ufs-bundle/jedi_run/ufs-bundle/soca/src/soca/Geometry/soca_geom_mod.F90(209): error #6633: The type of the actual argument differs from the type of the dummy argument.   [RESTART_CSP]
    call initialize_MOM( Start_time, Start_time, param_file, dirs, CSp, restart_CSp )
------------------------------------------------------------------------^
compilation aborted for /home/ubuntu/ufs-bundle/jedi_run/ufs-bundle/soca/src/soca/Geometry/soca_geom_mod.F90 (code 1)
make[2]: *** [soca/src/soca/CMakeFiles/soca.dir/build.make:209: soca/src/soca/CMakeFiles/soca.dir/Geometry/soca_geom_mod.F90.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 96%] Linking CXX executable test_ufo_opr_autogenerated
[ 96%] Built target test_ufo_opr_autogenerated
make[1]: *** [CMakeFiles/Makefile2:26230: soca/src/soca/CMakeFiles/soca.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 96%] Linking CXX executable test_autogeneratedfilter
[ 96%] Built target test_autogeneratedfilter
make: *** [Makefile:166: all] Error 2
travissluka commented 5 months ago

@climbfuji it's probably because whoever created that soca PR messed up the merge :roll_eyes: oops. I'll push a fix

@shlyaeva "did not review at all, I trust Travis :)"

poor decision!

travissluka commented 5 months ago

@climbfuji I think https://github.com/JCSDA-internal/soca/pull/1043 is what were you thinking of as being fixed a couple of weeks ago, but that's not the branch that works with ufs (I think after that pr gets merged, all we have left to do in develop of soca is to add logic to change where mom6 is found depending on if it is under ufs-bundle or not... getting so close to eliminating those branches!)

The soca branch this points to should build now.

I don't know if you're expecting the soca ctests to pass, but if you are:

If you are expecting the soca ctests to pass, let me know and I'll just disable the ones that aren't passing, for now. I don't want to spend too much time on this soca branch until after https://github.com/JCSDA-internal/soca/pull/1043 is merged

climbfuji commented 5 months ago

@climbfuji I think JCSDA-internal/soca#1043 is what were you thinking of as being fixed a couple of weeks ago, but that's not the branch that works with ufs (I think after that pr gets merged, all we have left to do in develop of soca is to add logic to change where mom6 is found depending on if it is under ufs-bundle or not... getting so close to eliminating those branches!)

The soca branch this points to should build now.

I don't know if you're expecting the soca ctests to pass, but if you are:

  • vader needs to appear after gsw in this bundle, most of the tests will pass after this
  • -DMOM6SOLO=ON needs to be set when calling ExternalProject_Add(ufs-weather-model ..., however the soca ctests are not finding the mom6solo executable that gets built, and even when I manually point it to the executable those tests are failing in soca for some reason

If you are expecting the soca ctests to pass, let me know and I'll just disable the ones that aren't passing, for now. I don't want to spend too much time on this soca branch until after JCSDA-internal/soca#1043 is merged you are right - for now, we just want the ufs to build with soca, we can worry about the tests later. CI is running here: https://github.com/JCSDA/ufs-bundle/actions/runs/9553842715

climbfuji commented 5 months ago

Hmmm: https://github.com/JCSDA/ufs-bundle/actions/runs/9553842715/job/26333598026

travissluka commented 5 months ago

@climbfuji I merged the soca PR into feature/ufs_dom_update. You can revert the branch name in the bundle here

climbfuji commented 5 months ago

@shlyaeva @fmahebert CI worked just fine until the most recent update (merge of PR into fv3-jedi develop and reversal of temporary branch name). Now it's failing when compiling the ATM app: https://github.com/JCSDA/ufs-bundle/actions/runs/9614187175/job/26518442294?pr=65

mark-a-potts commented 5 months ago

The LIBS that fv3jedi_linearization_error.x are linked against need to be changed from just fv3jedi to ${FV3JEDI_LIBRARIES} in the fv3-jedi/src/mains/CMakeLists.txt file like this--

ecbuild_add_executable( TARGET fv3jedi_linearization_error.x SOURCES fv3jediLinearizationError.cc LIBS ${FV3JEDI_LIBRARIES} )

climbfuji commented 5 months ago

The LIBS that fv3jedi_linearization_error.x are linked against need to be changed from just fv3jedi to ${FV3JEDI_LIBRARIES} in the fv3-jedi/src/mains/CMakeLists.txt file like this--

ecbuild_add_executable( TARGET fv3jedi_linearization_error.x SOURCES fv3jediLinearizationError.cc LIBS ${FV3JEDI_LIBRARIES} )

Thanks Mark for the note - see https://github.com/JCSDA-internal/fv3-jedi/pull/1230

fmahebert commented 5 months ago

Dom's fv3-jedi bugfix, linked above, is now merged