Skip to content

VibeCAD Analysis FEM Stabilization #6

VibeCAD Analysis FEM Stabilization

VibeCAD Analysis FEM Stabilization #6

name: VibeCAD Analysis FEM Stabilization
on:
workflow_dispatch:
push:
branches: ["main"]
pull_request:
branches: ["main"]
permissions:
contents: read
concurrency:
group: vibecad-analysis-fem-${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
analysis-fem-stabilization:
name: Analysis FEM (${{ matrix.os }})
runs-on: ${{ matrix.os }}
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
os:
- ubuntu-24.04
- windows-2022
steps:
- name: Check out source
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install test runner
run: python -m pip install --disable-pip-version-check pytest jsonschema
- name: Run FEM parity and process-tree stabilization tests
run: >-
python -m pytest -q
--junitxml=analysis-fem-pytest.xml
src/Mod/VibeCAD/vibecad_tests/test_analysis_fem_parity_oracle.py
src/Mod/VibeCAD/vibecad_tests/test_analysis_fem_execution_route.py
src/Mod/VibeCAD/vibecad_tests/test_analysis_fem_lifecycle_burnin.py
src/Mod/VibeCAD/vibecad_tests/test_analysis_fem_installed_publication.py
src/Mod/VibeCAD/vibecad_tests/test_analysis_fem_installed_lifecycle.py
src/Mod/VibeCAD/vibecad_tests/test_analysis_fem_error_mapping.py
src/Mod/VibeCAD/vibecad_tests/test_analysis_process_tree.py
src/Mod/VibeCAD/vibecad_tests/test_scripted_process.py
src/Mod/VibeCAD/vibecad_tests/test_mesh_windows_process_contract.py
src/Mod/VibeCAD/vibecad_tests/test_native_analyze_flow_result.py
src/Mod/VibeCAD/vibecad_tests/test_native_analyze_solver_execution.py
- name: Preserve failure diagnostics
if: failure()
uses: actions/upload-artifact@v4
with:
name: analysis-fem-${{ runner.os }}-failure
path: analysis-fem-pytest.xml
if-no-files-found: warn
retention-days: 7