Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
6f8f1c0
add-code-rules
arng40 Nov 18, 2025
243af07
comment jobs not needed
arng40 Nov 18, 2025
7754898
try this
arng40 Nov 18, 2025
29f0ed6
remove ctest testcoderule
arng40 Nov 18, 2025
3d2782a
try to add some target
arng40 Nov 18, 2025
38748b0
relaunch ci
arng40 Nov 18, 2025
21956b3
forget 1 target
arng40 Nov 18, 2025
183262c
test code for detecting std::map
arng40 Nov 18, 2025
1a50cc9
force to true
arng40 Nov 19, 2025
4004d12
log
arng40 Nov 19, 2025
42d6f5b
more log
arng40 Nov 19, 2025
6a87699
print pwd
arng40 Nov 19, 2025
3ae12c4
test with regex
arng40 Nov 19, 2025
06b6d8f
fix
arng40 Nov 19, 2025
9f65bda
update find
arng40 Nov 19, 2025
e519b29
update prefix file pattern
arng40 Nov 19, 2025
09cea71
move to script
arng40 Nov 19, 2025
716ce69
fix rule ^^
arng40 Nov 19, 2025
a7f4a14
test perm
arng40 Nov 19, 2025
fad5944
add write
arng40 Nov 19, 2025
d3a6d9c
give perm
arng40 Nov 19, 2025
56eebfc
give perm
arng40 Nov 19, 2025
933dcc0
attempt perm
arng40 Nov 19, 2025
fc78670
remove if statement
arng40 Nov 19, 2025
3716bf2
test ls
arng40 Nov 19, 2025
d2eddbd
test another pwd
arng40 Nov 19, 2025
e59d2f0
fix cd
arng40 Nov 19, 2025
5c43982
add src
arng40 Nov 19, 2025
883ba54
go to src
arng40 Nov 19, 2025
02e26e1
remove prefix
arng40 Nov 19, 2025
a24ff21
sabotage code
arng40 Nov 19, 2025
e28b1c2
missing :
arng40 Nov 19, 2025
27657f6
display info at the end
arng40 Nov 19, 2025
f48fc29
check str
arng40 Nov 19, 2025
cb5754e
wrong varaible
arng40 Nov 19, 2025
4aeafa3
echo
arng40 Nov 19, 2025
e9e58c2
simplify
arng40 Nov 19, 2025
0792e88
remove done
arng40 Nov 19, 2025
14d9399
remove bracket
arng40 Nov 19, 2025
b7a5e53
add more std
arng40 Nov 19, 2025
7ed6c89
update logic
arng40 Nov 19, 2025
1b6654e
fix std
arng40 Nov 19, 2025
a4d11fd
style
arng40 Nov 19, 2025
198e895
remove lr
arng40 Nov 19, 2025
a95fba7
set stdUnorderedMap
arng40 Nov 19, 2025
239fb10
vector rule
arng40 Nov 19, 2025
87d05fe
add common
arng40 Nov 19, 2025
010d4bc
replace std::vector
arng40 Nov 19, 2025
5f6c1ad
revert on stdContainerWrapper
arng40 Nov 19, 2025
35a5aa4
echo file
arng40 Nov 19, 2025
64479d0
another echo
arng40 Nov 19, 2025
be824c6
add id cond
arng40 Nov 19, 2025
0845150
stdVector
arng40 Nov 19, 2025
2a96409
missing file
arng40 Nov 19, 2025
1d0f7f7
test for constituve
arng40 Nov 19, 2025
a47e596
try refacto with func
arng40 Nov 19, 2025
411913e
clean the code + test with file
arng40 Nov 20, 2025
d10651d
Merge branch 'develop' into feat/dudes/add-code-rules
arng40 Nov 20, 2025
ae7e57c
fix declaration
arng40 Nov 20, 2025
b30ef2a
Merge branch 'feat/dudes/add-code-rules' of https://github.com/GEOS-D…
arng40 Nov 20, 2025
0dbd595
log
arng40 Nov 20, 2025
7f5aa44
update echo
arng40 Nov 20, 2025
84d15e9
refacto find cmd
arng40 Nov 20, 2025
bc8e010
remove exclude find
arng40 Nov 20, 2025
74cad67
remove log + revert
arng40 Nov 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
238 changes: 126 additions & 112 deletions .github/workflows/ci_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ jobs:
- name: Check that submodules are up to date
run: "scripts/test_submodule_updated.sh"

check_code_style_and_documentation:
check_code_standards:
name: ${{ matrix.name }}
needs: [is_not_draft_pull_request]
strategy:
Expand All @@ -127,6 +127,8 @@ jobs:
# Validates that the documentation generated using doxygen has no hole.
- name: Check documentation
BUILD_AND_TEST_ARGS: --test-documentation
# - name: Check code rules
# BUILD_AND_TEST_ARGS: --test-code-rules
Comment on lines +130 to +131
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is it commented out?

uses: ./.github/workflows/build_and_test.yml
with:
BUILD_AND_TEST_CLI_ARGS: ${{ matrix.BUILD_AND_TEST_ARGS }}
Expand All @@ -137,6 +139,22 @@ jobs:
RUNS_ON: ubuntu-22.04
USE_SCCACHE: false

check_code_rules:
needs: [is_not_draft_pull_request]
runs-on: ubuntu-22.04
steps:
- name: Checkout Repository
uses: actions/[email protected]
with:
submodules: false
lfs: false
fetch-depth: 0
sparse-checkout: |
scripts
src
- name: Check the code rules
run: "scripts/check_code_rules.sh"

# Matrix containing all the CPU build.
# Those are quite fast and can efficiently benefit from the `sccache' tool to make them even faster.
cpu_builds:
Expand All @@ -156,53 +174,53 @@ jobs:
GEOS_ENABLE_BOUNDS_CHECK: ON
HOST_CONFIG: /spack-generated.cmake

- name: Ubuntu debug (20.04, gcc 10.5.0, open-mpi 4.0.3) - github codespaces
CMAKE_BUILD_TYPE: Debug
DOCKER_REPOSITORY: geosx/ubuntu20.04-gcc10
BUILD_SHARED_LIBS: ON
ENABLE_HYPRE: OFF
ENABLE_TRILINOS: ON
GEOS_ENABLE_BOUNDS_CHECK: ON
HOST_CONFIG: /spack-generated.cmake
# - name: Ubuntu debug (20.04, gcc 10.5.0, open-mpi 4.0.3) - github codespaces
# CMAKE_BUILD_TYPE: Debug
# DOCKER_REPOSITORY: geosx/ubuntu20.04-gcc10
# BUILD_SHARED_LIBS: ON
# ENABLE_HYPRE: OFF
# ENABLE_TRILINOS: ON
# GEOS_ENABLE_BOUNDS_CHECK: ON
# HOST_CONFIG: /spack-generated.cmake
Comment on lines +177 to +184
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you cannot leave CI modifs aimed for test and request review.


- name: Ubuntu (20.04, gcc 10.5.0, open-mpi 4.0.3) - github codespaces
CMAKE_BUILD_TYPE: Release
DOCKER_REPOSITORY: geosx/ubuntu20.04-gcc10
BUILD_SHARED_LIBS: ON
ENABLE_HYPRE: OFF
ENABLE_TRILINOS: ON
GEOS_ENABLE_BOUNDS_CHECK: ON
HOST_CONFIG: /spack-generated.cmake
# - name: Ubuntu (20.04, gcc 10.5.0, open-mpi 4.0.3) - github codespaces
# CMAKE_BUILD_TYPE: Release
# DOCKER_REPOSITORY: geosx/ubuntu20.04-gcc10
# BUILD_SHARED_LIBS: ON
# ENABLE_HYPRE: OFF
# ENABLE_TRILINOS: ON
# GEOS_ENABLE_BOUNDS_CHECK: ON
# HOST_CONFIG: /spack-generated.cmake

- name: Ubuntu (22.04, gcc 11.4.0, open-mpi 4.1.2)
CMAKE_BUILD_TYPE: Release
DOCKER_REPOSITORY: geosx/ubuntu22.04-gcc11
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF
BUILD_SHARED_LIBS: ON
GEOS_ENABLE_BOUNDS_CHECK: OFF
GCP_BUCKET: geosx/ubuntu22.04-gcc11
HOST_CONFIG: /spack-generated.cmake
# - name: Ubuntu (22.04, gcc 11.4.0, open-mpi 4.1.2)
# CMAKE_BUILD_TYPE: Release
# DOCKER_REPOSITORY: geosx/ubuntu22.04-gcc11
# ENABLE_HYPRE: ON
# ENABLE_TRILINOS: OFF
# BUILD_SHARED_LIBS: ON
# GEOS_ENABLE_BOUNDS_CHECK: OFF
# GCP_BUCKET: geosx/ubuntu22.04-gcc11
# HOST_CONFIG: /spack-generated.cmake

- name: Ubuntu (22.04, gcc 12.3.0, open-mpi 4.1.2)
CMAKE_BUILD_TYPE: Release
DOCKER_REPOSITORY: geosx/ubuntu22.04-gcc12
GCP_BUCKET: geosx/ubuntu22.04-gcc12
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF
BUILD_SHARED_LIBS: ON
GEOS_ENABLE_BOUNDS_CHECK: ON
HOST_CONFIG: /spack-generated.cmake
# - name: Ubuntu (22.04, gcc 12.3.0, open-mpi 4.1.2)
# CMAKE_BUILD_TYPE: Release
# DOCKER_REPOSITORY: geosx/ubuntu22.04-gcc12
# GCP_BUCKET: geosx/ubuntu22.04-gcc12
# ENABLE_HYPRE: ON
# ENABLE_TRILINOS: OFF
# BUILD_SHARED_LIBS: ON
# GEOS_ENABLE_BOUNDS_CHECK: ON
# HOST_CONFIG: /spack-generated.cmake

- name: Ubuntu (22.04, gcc 12.3.0, open-mpi 4.1.2) - NO BOUNDS CHECK
CMAKE_BUILD_TYPE: Release
DOCKER_REPOSITORY: geosx/ubuntu22.04-gcc12
GCP_BUCKET: geosx/ubuntu22.04-gcc12
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF
BUILD_SHARED_LIBS: ON
GEOS_ENABLE_BOUNDS_CHECK: OFF
HOST_CONFIG: /spack-generated.cmake
# - name: Ubuntu (22.04, gcc 12.3.0, open-mpi 4.1.2) - NO BOUNDS CHECK
# CMAKE_BUILD_TYPE: Release
# DOCKER_REPOSITORY: geosx/ubuntu22.04-gcc12
# GCP_BUCKET: geosx/ubuntu22.04-gcc12
# ENABLE_HYPRE: ON
# ENABLE_TRILINOS: OFF
# BUILD_SHARED_LIBS: ON
# GEOS_ENABLE_BOUNDS_CHECK: OFF
# HOST_CONFIG: /spack-generated.cmake

#- name: Ubuntu (22.04, clang 15.0.7, open-mpi 4.1.2)
# CMAKE_BUILD_TYPE: Release
Expand Down Expand Up @@ -319,69 +337,69 @@ jobs:
fail-fast : false
matrix:
include:
- name: Ubuntu CUDA debug (20.04, clang 10.0.0 + gcc 9.4.0, open-mpi 4.0.3, cuda-11.8.89)
BUILD_AND_TEST_CLI_ARGS: "--build-exe-only --no-install-schema"
CMAKE_BUILD_TYPE: Debug
BUILD_GENERATOR: "--ninja"
DOCKER_REPOSITORY: geosx/ubuntu20.04-clang10.0.0-cuda11.8.89
ENABLE_HYPRE_DEVICE: CUDA
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF
GEOS_ENABLE_BOUNDS_CHECK: OFF
RUNS_ON: streak2
NPROC: 8
DOCKER_RUN_ARGS: "--cpus=8 --memory=128g --runtime=nvidia -v /etc/pki/ca-trust/source/anchors/:/usr/local/share/ca-certificates/llnl:ro"
DOCKER_CERTS_DIR: "/usr/local/share/ca-certificates"
DOCKER_CERTS_UPDATE_COMMAND: "update-ca-certificates"
HOST_CONFIG: /spack-generated.cmake
# - name: Ubuntu CUDA debug (20.04, clang 10.0.0 + gcc 9.4.0, open-mpi 4.0.3, cuda-11.8.89)
# BUILD_AND_TEST_CLI_ARGS: "--build-exe-only --no-install-schema"
# CMAKE_BUILD_TYPE: Debug
# BUILD_GENERATOR: "--ninja"
# DOCKER_REPOSITORY: geosx/ubuntu20.04-clang10.0.0-cuda11.8.89
# ENABLE_HYPRE_DEVICE: CUDA
# ENABLE_HYPRE: ON
# ENABLE_TRILINOS: OFF
# GEOS_ENABLE_BOUNDS_CHECK: OFF
# RUNS_ON: streak2
# NPROC: 8
# DOCKER_RUN_ARGS: "--cpus=8 --memory=128g --runtime=nvidia -v /etc/pki/ca-trust/source/anchors/:/usr/local/share/ca-certificates/llnl:ro"
# DOCKER_CERTS_DIR: "/usr/local/share/ca-certificates"
# DOCKER_CERTS_UPDATE_COMMAND: "update-ca-certificates"
# HOST_CONFIG: /spack-generated.cmake

- name: Ubuntu CUDA (20.04, clang 10.0.0 + gcc 9.4.0, open-mpi 4.0.3, cuda-11.8.89)
BUILD_AND_TEST_CLI_ARGS: "--no-run-unit-tests --no-install-schema"
CMAKE_BUILD_TYPE: Release
BUILD_GENERATOR: "--ninja"
DOCKER_REPOSITORY: geosx/ubuntu20.04-clang10.0.0-cuda11.8.89
ENABLE_HYPRE_DEVICE: CUDA
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF
GEOS_ENABLE_BOUNDS_CHECK: OFF
RUNS_ON: streak2
NPROC: 8
DOCKER_RUN_ARGS: "--cpus=8 --memory=256g --runtime=nvidia -v /etc/pki/ca-trust/source/anchors/:/usr/local/share/ca-certificates/llnl:ro"
DOCKER_CERTS_DIR: "/usr/local/share/ca-certificates"
DOCKER_CERTS_UPDATE_COMMAND: "update-ca-certificates"
HOST_CONFIG: /spack-generated.cmake
# - name: Ubuntu CUDA (20.04, clang 10.0.0 + gcc 9.4.0, open-mpi 4.0.3, cuda-11.8.89)
# BUILD_AND_TEST_CLI_ARGS: "--no-run-unit-tests --no-install-schema"
# CMAKE_BUILD_TYPE: Release
# BUILD_GENERATOR: "--ninja"
# DOCKER_REPOSITORY: geosx/ubuntu20.04-clang10.0.0-cuda11.8.89
# ENABLE_HYPRE_DEVICE: CUDA
# ENABLE_HYPRE: ON
# ENABLE_TRILINOS: OFF
# GEOS_ENABLE_BOUNDS_CHECK: OFF
# RUNS_ON: streak2
# NPROC: 8
# DOCKER_RUN_ARGS: "--cpus=8 --memory=256g --runtime=nvidia -v /etc/pki/ca-trust/source/anchors/:/usr/local/share/ca-certificates/llnl:ro"
# DOCKER_CERTS_DIR: "/usr/local/share/ca-certificates"
# DOCKER_CERTS_UPDATE_COMMAND: "update-ca-certificates"
# HOST_CONFIG: /spack-generated.cmake

- name: Rockylinux CUDA (8, clang 17.0.6, cuda 12.9.1)
BUILD_AND_TEST_CLI_ARGS: "--no-install-schema"
CMAKE_BUILD_TYPE: Release
BUILD_GENERATOR: "--ninja"
ENABLE_HYPRE_DEVICE: CUDA
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF
GEOS_ENABLE_BOUNDS_CHECK: OFF
DOCKER_REPOSITORY: geosx/rockylinux8-clang17-cuda12.9.1
RUNS_ON: streak
NPROC: 8
DOCKER_RUN_ARGS: "--cpus=8 --memory=256g --runtime=nvidia --gpus all -v /etc/pki/ca-trust/source/anchors/:/usr/local/share/ca-certificates/llnl:ro"
DOCKER_CERTS_DIR: "/usr/local/share/ca-certificates"
DOCKER_CERTS_UPDATE_COMMAND: "update-ca-trust"
HOST_CONFIG: /spack-generated.cmake
# - name: Rockylinux CUDA (8, clang 17.0.6, cuda 12.9.1)
# BUILD_AND_TEST_CLI_ARGS: "--no-install-schema"
# CMAKE_BUILD_TYPE: Release
# BUILD_GENERATOR: "--ninja"
# ENABLE_HYPRE_DEVICE: CUDA
# ENABLE_HYPRE: ON
# ENABLE_TRILINOS: OFF
# GEOS_ENABLE_BOUNDS_CHECK: OFF
# DOCKER_REPOSITORY: geosx/rockylinux8-clang17-cuda12.9.1
# RUNS_ON: streak
# NPROC: 8
# DOCKER_RUN_ARGS: "--cpus=8 --memory=256g --runtime=nvidia --gpus all -v /etc/pki/ca-trust/source/anchors/:/usr/local/share/ca-certificates/llnl:ro"
# DOCKER_CERTS_DIR: "/usr/local/share/ca-certificates"
# DOCKER_CERTS_UPDATE_COMMAND: "update-ca-trust"
# HOST_CONFIG: /spack-generated.cmake

- name: Rockylinux CUDA (8, gcc 13.3, cuda 12.9.1)
BUILD_AND_TEST_CLI_ARGS: "--no-run-unit-tests --no-install-schema"
CMAKE_BUILD_TYPE: Release
BUILD_GENERATOR: "--ninja"
ENABLE_HYPRE_DEVICE: CUDA
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF
GEOS_ENABLE_BOUNDS_CHECK: OFF
DOCKER_REPOSITORY: geosx/rockylinux8-gcc13-cuda12.9.1
RUNS_ON: streak2
NPROC: 8
DOCKER_RUN_ARGS: "--cpus=8 --memory=128g --runtime=nvidia -v /etc/pki/ca-trust/source/anchors/:/etc/pki/ca-trust/source/anchors/llnl:ro"
DOCKER_CERTS_DIR: "/etc/pki/ca-trust/source/anchors"
DOCKER_CERTS_UPDATE_COMMAND: "update-ca-trust"
HOST_CONFIG: /spack-generated.cmake
# - name: Rockylinux CUDA (8, gcc 13.3, cuda 12.9.1)
# BUILD_AND_TEST_CLI_ARGS: "--no-run-unit-tests --no-install-schema"
# CMAKE_BUILD_TYPE: Release
# BUILD_GENERATOR: "--ninja"
# ENABLE_HYPRE_DEVICE: CUDA
# ENABLE_HYPRE: ON
# ENABLE_TRILINOS: OFF
# GEOS_ENABLE_BOUNDS_CHECK: OFF
# DOCKER_REPOSITORY: geosx/rockylinux8-gcc13-cuda12.9.1
# RUNS_ON: streak2
# NPROC: 8
# DOCKER_RUN_ARGS: "--cpus=8 --memory=128g --runtime=nvidia -v /etc/pki/ca-trust/source/anchors/:/etc/pki/ca-trust/source/anchors/llnl:ro"
# DOCKER_CERTS_DIR: "/etc/pki/ca-trust/source/anchors"
# DOCKER_CERTS_UPDATE_COMMAND: "update-ca-trust"
# HOST_CONFIG: /spack-generated.cmake

- name: Pangea 3 CUDA (AlmaLinux 8.8, gcc 9.4.0, open-mpi 4.1.2, cuda 11.5.0, openblas 0.3.10)
BUILD_AND_TEST_CLI_ARGS: "--build-exe-only --no-install-schema"
Expand Down Expand Up @@ -447,24 +465,20 @@ jobs:
needs:
- if_not_unassigned_pull_request
- are_submodules_in_sync
- check_code_style_and_documentation
- cpu_builds
- check_code_standards
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If check_code_standards is just rename of check_code_style_and_documentation why ?
And why check_code_rules is not required here ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking at CI checks, it is indeed then an advisory but not required enforcement ?

- cpu_builds
- cuda_builds
- run_integrated_tests
if: ${{ always() }}
steps:
- run: |
echo "if_not_unassigned_pull_request: ${{needs.if_not_unassigned_pull_request.result}}"
echo "are_submodules_in_sync: ${{needs.are_submodules_in_sync.result}}"
echo "check_code_style_and_documentation: ${{needs.check_code_style_and_documentation.result}}"
echo "cpu_builds: ${{needs.cpu_builds.result}}"
echo "cuda_builds: ${{needs.cuda_builds.result}}"
echo "check_code_standards: ${{needs.check_code_standards.result}}"
echo "run_integrated_tests: ${{needs.run_integrated_tests.result}} "
${{
needs.if_not_unassigned_pull_request.result == 'success' &&
needs.are_submodules_in_sync.result == 'success' &&
needs.check_code_style_and_documentation.result == 'success' &&
needs.cpu_builds.result == 'success' &&
needs.cuda_builds.result == 'success' &&
needs.check_code_standards.result == 'success' &&
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

was need.cpu_builds.results and its cuda counterpart removed while dev to speed up or is it permanent ??

needs.run_integrated_tests.result == 'success'
}}
Loading
Loading