Skipping C Unit Tests on ubuntu-24.04 #2
Workflow file for this run
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: Checker | |
| on: | |
| push: | |
| branches: ['**'] | |
| jobs: | |
| test: | |
| name: 🛠️ Build on ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-22.04, ubuntu-24.04] | |
| env: | |
| FLEDGE_ROOT: ${{ github.workspace }} | |
| PYTHONPATH: ${{ github.workspace }}/python | |
| steps: | |
| - name: 🛎️ Checkout code | |
| uses: actions/checkout@v4 | |
| - name: ⚙️ Compile Fledge Core | |
| id: make_fledge | |
| run: | | |
| set -e | |
| cd "$FLEDGE_ROOT" | |
| sudo ./requirements.sh | |
| make -j"$(nproc)" | |
| - name: 🚫 Skipping C Unit Tests on ubuntu-24.04 | |
| if: matrix.os == 'ubuntu-24.04' | |
| run: echo "⚠️ Skipping C unit tests on ubuntu-24.04 due to increased execution time. See JIRA FOGL-9817 for details." | |
| - name: 🧪 Run C Unit Tests | |
| if: matrix.os != 'ubuntu-24.04' && steps.make_fledge.outcome == 'success' | |
| continue-on-error: true | |
| run: | | |
| set +e | |
| cd "$FLEDGE_ROOT/tests/unit/C" | |
| echo "🛠️ Installing C test dependencies..." | |
| chmod +x requirements.sh && ./requirements.sh | |
| echo "📋 Running C tests..." | |
| chmod +x scripts/RunAllTests.sh && ./scripts/RunAllTests.sh | |
| mkdir -p "$FLEDGE_ROOT/reports" | |
| cp -v results/*.xml "$FLEDGE_ROOT/reports/" || echo "⚠️ No C test reports found" | |
| - name: 🧪 Run Python Unit Tests | |
| if: steps.make_fledge.outcome == 'success' | |
| continue-on-error: true | |
| run: | | |
| set +e | |
| echo "🛠️ Installing Python test dependencies..." | |
| python3 -m pip install -Ir python/requirements-test.txt | |
| echo "📋 Running Python tests..." | |
| python3 -m pytest -s -vv \ | |
| --junit-xml="$FLEDGE_ROOT/tests/unit/python/fledge/python_test_output.xml" \ | |
| "$FLEDGE_ROOT/tests/unit/python/fledge" \ | |
| --tb=line | |
| mkdir -p "$FLEDGE_ROOT/reports" | |
| cp -v "$FLEDGE_ROOT/tests/unit/python/fledge/"*.xml "$FLEDGE_ROOT/reports/" || echo "⚠️ No Python test report found" | |
| # Publish test results to GitHub UI using a third-party action | |
| # Note: GitHub Actions does not yet support native test report publishing in the UI | |
| # This step uses dorny/test-reporter to visualize test results in the Actions tab | |
| - name: 📤 Publish Test Report to GitHub | |
| if: steps.make_fledge.outcome == 'success' | |
| continue-on-error: true | |
| uses: dorny/test-reporter@v1 | |
| with: | |
| name: 📊 Test Results on ${{ matrix.os }} | |
| path: ${{ env.FLEDGE_ROOT }}/reports/*.xml | |
| reporter: java-junit | |
| fail-on-error: true | |