Noble testing #491
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build and Test | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| jobs: | |
| build: | |
| name: ${{ matrix.name }} | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| name: [ "Build Noble", "Build Noble OMP", "Build Jammy" ] | |
| include: | |
| - name: "Build Noble" | |
| release: noble | |
| - name: "Build Noble OMP" | |
| release: noble-omp | |
| - name: "Build Jammy" | |
| release: jammy | |
| steps: | |
| - name: Check Out Repo | |
| uses: actions/checkout@v3 | |
| - name: Login to Docker Hub | |
| uses: docker/login-action@v2 | |
| with: | |
| username: ${{ secrets.DOCKER_USERNAME }} | |
| password: ${{ secrets.DOCKER_TOKEN }} | |
| - name: Build and push | |
| id: docker_build | |
| uses: docker/build-push-action@v3 | |
| with: | |
| context: . | |
| file: docker/actions/Dockerfile.actions.${{ matrix.release }} | |
| push: true | |
| tags: fluidity/actions:${{ matrix.release }}-${{ github.sha }} | |
| testing: | |
| name: ${{ matrix.name }} | |
| runs-on: ubuntu-latest | |
| needs: build | |
| if: success() || failure() | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| name: [ "Unit Noble", "Short Noble", "Medium Noble", "Short Jammy" ] | |
| include: | |
| - name: "Unit Noble" | |
| release: noble | |
| command: "make unittest" | |
| output: "test_results_unittests.xml" | |
| - name: "Short Noble" | |
| release: noble | |
| command: "make THREADS=2 test" | |
| output: "test_results.xml" | |
| - name: "Medium Noble" | |
| release: noble | |
| command: "make THREADS=2 mediumtest" | |
| output: "test_results_medium.xml" | |
| - name: "Short Jammy" | |
| release: jammy | |
| command: "make THREADS=2 test" | |
| output: "test_results.xml" | |
| steps: | |
| - name: ${{ matrix.name }} Testing | |
| run: | | |
| chmod 777 . | |
| docker pull fluidity/actions:${{ matrix.release }}-${{ github.sha }} | |
| docker run -v $PWD:/host fluidity/actions:${{ matrix.release }}-${{ github.sha }} /bin/bash -c "${{ matrix.command }} && cp -v tests/${{ matrix.output }} /host/${{ matrix.release }}-${{ matrix.output}}" | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| path: ${{ matrix.release }}-${{ matrix.output }} | |
| name: $${{ matrix.release }}_$${{ matrix.output }} | |
| - name: ${{ matrix.name }} JUnit | |
| uses: mikepenz/action-junit-report@v3 | |
| with: | |
| report_paths: ${{ matrix.release }}-${{ matrix.output }} | |
| github_token: ${{ secrets.GITHUB_TOKEN }} | |
| check_name: Test report ${{ matrix.name }} | |
| fail_on_failure: true | |
| longtesting: | |
| name: longtest-${{ matrix.name }} | |
| runs-on: ubuntu-latest | |
| needs: build | |
| if: success() || failure() | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| name: [ | |
| "mphase_tephra_settling_2d_adaptive", | |
| "gyre_parallel", | |
| "Stokes_square_convection_1e4_vv_p1p1", | |
| "Stokes_square_convection_1e4_p1p1_Ra_Test", | |
| "Stokes_square_convection_1e4_vv_gauss_p2p1", | |
| "viscous_fs_drunkensailor", | |
| "cylinder-3d-drag", | |
| "viscosity_2d_p0_adaptive_parallel", | |
| "circle-2d-drag", | |
| "mphase_tephra_settling_3d", | |
| "tidal_diagnostics", | |
| "mms_burgers_dg_steady", | |
| "mms_ns_p1bp1_steady", | |
| "mms_ns_dg_steady_parallel", | |
| "mms_burgers_cg_steady", | |
| "mms_burgers_cg_structured_steady", | |
| "mms_ns_cg_steady_full", | |
| "foam_2d_p1dgp2_convergence", | |
| "circular_duct_from_rest", | |
| "mms_tracer_P1dg_cdg_diff_steady", | |
| "mms_tracer_cg_supg_advdiff_steady", | |
| "para_eddy", | |
| "mms_ns_p1p1stabilised_steady", | |
| "lock_exchange_3d", | |
| "mms_tracer_p0_adv_steady_conservative", | |
| "mms_tracer_cg_advdiff_steady", | |
| "gls-MixedLayer", | |
| "sphere-3D-drag-Re100", | |
| "mms_ns_cg_steady", | |
| "mms_tracer_P1dg_br_diff_steady", | |
| "mphase_mms_p1dgp2_br", | |
| "mphase_mms_p2p1_compressible_ie_heat_transfer", | |
| "mphase_mms_p2p1_compressible_ie", | |
| "mms_ns_p0p1_steady_periodic", | |
| "mms_tracer_cv_advdiff_eg_steady", | |
| "mms_ns_p1p1stabilised_supg_steady", | |
| "sphere-3D-drag-Re1", | |
| "mms_tracer_cv_diff_eg_steady", | |
| "mms_tracer_cv_diff_steady_structured", | |
| "mms_ns_p1lp1cv_steady_compressible", | |
| "mphase_mms_p1dgp2_cdg", | |
| "mms_tracer_cv_diff_steady", | |
| "mms_tracer_p0_adv_steady", | |
| "mms_ns_p0p1cv_steady_periodic", | |
| "mphase_mms_p2p1_no_interactions", | |
| "mms_ns_dg_steady", | |
| "mphase_mms_p1dgp2_fpdrag", | |
| "mms_tracer_cv_advdiff_steady", | |
| "sphere-3D-drag-Re10", | |
| "wetting_and_drying_thacker_dg_parallel", | |
| "flow_past_sphere_Re1", | |
| "flow_past_sphere_Re10", | |
| "flow_past_sphere_Re100", | |
| "particle_rayleigh_taylor_mu10", | |
| "rotating_channel", | |
| "tephra_settling", | |
| "top_hat", | |
| "water_collapse", | |
| "stagnant_conical_island", | |
| "lituya_bay_pseudo2dadapt", | |
| "pseudo2dadapt_parallel_galerkinproj", | |
| "mms_rans_p2p1_keps_linearmomentum_cv", | |
| "mms_rans_p2p1_keps_lowRe", | |
| "mphase_mms_p2p1_compressible_ie_p1cv_heat_transfer", | |
| "mms_ns_p2lp1_steady_compressible", | |
| "mphase_mms_p2p1_vfrac", | |
| "lock_exchange_3d_dg", | |
| "mms_rans_p1dgp2_upw_keps", | |
| "mphase_mms_p2p1_compressible_ie_p1cv", | |
| "mms_rans_p1dgp2_keps", | |
| "open_ocean_deep_convection-parallel", | |
| "mms_rans_p2p1_keps_linearmomentum", | |
| "Stommel_tracer_advection", | |
| "particle_stratified_stable_layer", | |
| "spherical_benchmark_free_slip", | |
| "spherical_benchmark_free_slip_p2bp1dg", | |
| "spherical_benchmark_no_slip", | |
| "spherical_benchmark_no_slip_p2bp1dg", | |
| "spherical_benchmark_smooth_free_slip", | |
| "spherical_benchmark_smooth_no_slip", | |
| "backward_facing_step_2d", | |
| "explicit-hyperc-shear", | |
| "explicit-hyperc-shear-adapt", | |
| "explicit-hyperc-superman", | |
| "coarse-corner", | |
| "gls-StationPapa", | |
| "medp1dgp2", | |
| "Stokes_mms_p1dg_p2", | |
| "Stokes_subduction_zone_vanKeken2008_OneA", | |
| "Stokes_subduction_zone_vanKeken2008_TwoB", | |
| "lagrangian_detectors_3d_2e5", | |
| "lock_exchange_2d_Lagrangian_paths", | |
| "square-convection-1e6", | |
| "wetting_and_drying_balzano1_dg_parallel" | |
| ## Tests still failing and in need of fixing | |
| #"lock_exchange", | |
| #"lock_exchange_3d_parallel", | |
| #"saltfinger2d_adaptive", | |
| #"driven_cavity", | |
| ] | |
| steps: | |
| - name: ${{ matrix.name }} Longtesting | |
| run: | | |
| chmod 777 . | |
| docker pull fluidity/actions:noble-${{ github.sha }} | |
| docker run -v $PWD:/host fluidity/actions:noble-${{ github.sha }} /bin/bash -c "git clone https://github.com/fluidityproject/longtests && bin/testharness -x test_results_${{ matrix.name }}.xml -f ${{ matrix.name }}.xml && cp -v test_results_${{ matrix.name }}.xml /host" | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| path: test_results_${{ matrix.name }}.xml | |
| name: longtests_xml_outputs_$${{ matrix.name }} | |
| - name: ${{ matrix.name }} JUnit | |
| uses: mikepenz/action-junit-report@v3 | |
| with: | |
| report_paths: test_results_${{ matrix.name }}.xml | |
| github_token: ${{ secrets.GITHUB_TOKEN }} | |
| check_name: Longtest report ${{ matrix.name }} | |
| fail_on_failure: true |