Skip to content

Commit 7a11aa4

Browse files
committed
Back to old-school
1 parent 2001f7a commit 7a11aa4

File tree

2 files changed

+95
-131
lines changed

2 files changed

+95
-131
lines changed

.github/actions/ci-build/action.yml

Lines changed: 0 additions & 63 deletions
This file was deleted.

.github/workflows/workflow.yml

Lines changed: 95 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -10,93 +10,120 @@ on:
1010
- "**.sh"
1111
- "**.perl"
1212
- ".github/CODEOWNERS"
13-
- ".github/PULL_REQUEST_TEMPLATE.md"
14-
- ".editorconfig"
15-
- ".codebuild/**"
16-
- ".circleci/**"
13+
- ".circleci/config.yml"
14+
15+
concurrency:
16+
group: ${{ github.workflow }}-${{ github.ref }}
17+
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
1718

1819
jobs:
19-
build_test_ldas_gnu:
20-
name: gfortran / ${{ matrix.cmake-build-type }} / ${{ matrix.cmake-generator }}
21-
runs-on: ubuntu-latest
20+
build_ldas_ifort:
21+
name: Build GEOSldas with ifort
22+
if: "!contains(github.event.pull_request.labels.*.name, '0 diff trivial')"
23+
runs-on: ubuntu-24.04
2224
container:
23-
image: gmao/ubuntu24-geos-env-mkl:v7.32.0-openmpi_5.0.5-gcc_14.2.0
24-
strategy:
25-
fail-fast: false
26-
matrix:
27-
cmake-build-type: [Debug, Release]
28-
cmake-generator: [Unix Makefiles]
25+
image: gmao/ubuntu24-geos-env:v7.32.0-intelmpi_2021.13-ifort_2021.13
26+
2927
env:
3028
OMPI_ALLOW_RUN_AS_ROOT: 1
3129
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1
3230
OMPI_MCA_btl_vader_single_copy_mechanism: none
31+
3332
steps:
34-
- name: Checkout
33+
# https://github.com/orgs/community/discussions/25678#discussioncomment-5242449
34+
- name: Delete huge unnecessary tools folder
35+
run: rm -rf /opt/hostedtoolcache
36+
37+
- name: Checkout LDAS
3538
uses: actions/checkout@v4
3639
with:
3740
fetch-depth: 1
3841
filter: blob:none
3942
repository: GEOS-ESM/GEOSldas
4043

41-
- name: Build and Test GEOSldas
42-
uses: ./.github/actions/ci-build
43-
with:
44-
cmake-build-type: ${{ matrix.cmake-build-type }}
45-
cmake-generator: ${{ matrix.cmake-generator }}
46-
fortran-compiler: gfortran
47-
extra-cmake-args: -DMPIEXEC_PREFLAGS='--oversubscribe'
48-
49-
build_test_geosldas_ifort:
50-
name: ifort / ${{ matrix.cmake-build-type }} / ${{ matrix.cmake-generator }}
51-
runs-on: ubuntu-latest
44+
- name: Set all directories as git safe
45+
run: |
46+
git config --global --add safe.directory '*'
47+
48+
- name: Versions etc.
49+
run: |
50+
ifort --version
51+
mpirun --version
52+
echo $BASEDIR
53+
54+
- name: Mepo clone external repos
55+
run: |
56+
mepo clone --partial blobless
57+
mepo status
58+
59+
- name: Update other branches
60+
if:
61+
"!contains('refs/heads/main,refs/heads/develop', github.ref)"
62+
run: |
63+
mepo checkout-if-exists ${GITHUB_HEAD_REF}
64+
mepo status
65+
66+
- name: CMake
67+
run: |
68+
cmake -B build -S . --install-prefix=${pwd}/install -DCMAKE_Fortran_COMPILER=ifort -DCMAKE_BUILD_TYPE=Debug -DMPIEXEC_PREFLAGS='--oversubscribe' -DUSE_F2PY=OFF
69+
70+
- name: Build
71+
run: |
72+
cmake --build build -j 4
73+
cmake --install build
74+
75+
76+
build_ldas_gfortran:
77+
name: Build GEOSldas with gfortran
78+
if: "!contains(github.event.pull_request.labels.*.name, '0 diff trivial')"
79+
runs-on: ubuntu-24.04
5280
container:
53-
image: gmao/ubuntu24-geos-env:v7.32.0-intelmpi_2021.13-ifort_2021.13
54-
strategy:
55-
fail-fast: false
56-
matrix:
57-
cmake-build-type: [Debug, Release]
58-
cmake-generator: [Unix Makefiles]
81+
image: gmao/ubuntu24-geos-env:v7.32.0-openmpi_5.0.5-gcc_14.2.0
82+
83+
env:
84+
OMPI_ALLOW_RUN_AS_ROOT: 1
85+
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1
86+
OMPI_MCA_btl_vader_single_copy_mechanism: none
87+
5988
steps:
60-
- name: Checkout
89+
# https://github.com/orgs/community/discussions/25678#discussioncomment-5242449
90+
- name: Delete huge unnecessary tools folder
91+
run: rm -rf /opt/hostedtoolcache
92+
93+
- name: Checkout LDAS
6194
uses: actions/checkout@v4
6295
with:
6396
fetch-depth: 1
6497
filter: blob:none
6598
repository: GEOS-ESM/GEOSldas
6699

67-
- name: Build and Test GEOSldas
68-
uses: ./.github/actions/ci-build
69-
with:
70-
cmake-build-type: ${{ matrix.cmake-build-type }}
71-
cmake-generator: ${{ matrix.cmake-generator }}
72-
fortran-compiler: ifort
73-
74-
# We cannot currently test with ifx because HDF4 Fortran interface
75-
# cannot be compiled with ifx. The HDF4 Fortran interface is required
76-
# for the GEOSldas
77-
################################################################################
78-
# build_test_geosldas_ifx: #
79-
# name: ifx / ${{ matrix.cmake-build-type }} / ${{ matrix.cmake-generator }} #
80-
# runs-on: ubuntu-latest #
81-
# container: #
82-
# image: gmao/ubuntu24-geos-env:v7.32.0-intelmpi_2021.14-ifx_2025.0 #
83-
# strategy: #
84-
# fail-fast: false #
85-
# matrix: #
86-
# cmake-build-type: [Debug, Release] #
87-
# cmake-generator: [Unix Makefiles] #
88-
# steps: #
89-
# - name: Checkout #
90-
# uses: actions/checkout@v4 #
91-
# with: #
92-
# fetch-depth: 1 #
93-
# filter: blob:none #
94-
# repository: GEOS-ESM/GEOSldas #
95-
# #
96-
# - name: Build and Test GEOSldas #
97-
# uses: ./.github/actions/ci-build #
98-
# with: #
99-
# cmake-build-type: ${{ matrix.cmake-build-type }} #
100-
# cmake-generator: ${{ matrix.cmake-generator }} #
101-
# fortran-compiler: ifx #
102-
################################################################################
100+
- name: Set all directories as git safe
101+
run: |
102+
git config --global --add safe.directory '*'
103+
104+
- name: Versions etc.
105+
run: |
106+
gfortran --version
107+
mpirun --version
108+
echo $BASEDIR
109+
110+
- name: Mepo clone external repos
111+
run: |
112+
mepo clone --partial blobless
113+
mepo status
114+
115+
- name: Update other branches
116+
if:
117+
"!contains('refs/heads/main,refs/heads/develop', github.ref)"
118+
run: |
119+
mepo checkout-if-exists ${GITHUB_HEAD_REF}
120+
mepo status
121+
122+
- name: CMake
123+
run: |
124+
cmake -B build -S . --install-prefix=${pwd}/install -DCMAKE_Fortran_COMPILER=gfortran -DCMAKE_BUILD_TYPE=Debug -DMPIEXEC_PREFLAGS='--oversubscribe' -DUSE_F2PY=OFF
125+
126+
- name: Build
127+
run: |
128+
cmake --build build -j 4
129+
cmake --install build

0 commit comments

Comments
 (0)