-
Notifications
You must be signed in to change notification settings - Fork 97
feat: CI - Add code rules checking action #3914
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Changes from all commits
6f8f1c0
243af07
7754898
29f0ed6
3d2782a
38748b0
21956b3
183262c
1a50cc9
4004d12
42d6f5b
6a87699
3ae12c4
06b6d8f
9f65bda
e519b29
09cea71
716ce69
a7f4a14
fad5944
d3a6d9c
56eebfc
933dcc0
fc78670
3716bf2
d2eddbd
e59d2f0
5c43982
883ba54
02e26e1
a24ff21
e28b1c2
27657f6
f48fc29
cb5754e
4aeafa3
e9e58c2
0792e88
14d9399
b7a5e53
7ed6c89
1b6654e
a4d11fd
198e895
a95fba7
239fb10
87d05fe
010d4bc
5f6c1ad
35a5aa4
64479d0
be824c6
0845150
2a96409
1d0f7f7
a47e596
411913e
d10651d
ae7e57c
b30ef2a
0dbd595
7f5aa44
84d15e9
bc8e010
74cad67
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -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: | ||
|
|
@@ -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 | ||
| uses: ./.github/workflows/build_and_test.yml | ||
| with: | ||
| BUILD_AND_TEST_CLI_ARGS: ${{ matrix.BUILD_AND_TEST_ARGS }} | ||
|
|
@@ -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: | ||
|
|
@@ -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
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe 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 | ||
|
|
@@ -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" | ||
|
|
@@ -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 | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. If
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe 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' && | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. was |
||
| needs.run_integrated_tests.result == 'success' | ||
| }} | ||
There was a problem hiding this comment.
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?