Skip to content

Run OpenSIPS Conformance Tests #465

Run OpenSIPS Conformance Tests

Run OpenSIPS Conformance Tests #465

Workflow file for this run

name: Run OpenSIPS Conformance Tests
on:
# Triggers the workflow on all push or pull request events
push:
pull_request:
workflow_run:
workflows:
- Build SIPSsert Image
types:
- completed
schedule:
- cron: '0 2 * * Mon'
workflow_call:
jobs:
setup-matrix:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- name: Checkout Tests repo
uses: actions/checkout@v4
with:
repository: OpenSIPS/sipssert-opensips-tests
path: tests
- name: Read and parse YAML file
id: set-matrix
uses: OpenSIPS/SIPssert/.github/actions/Set_Matrix@main
test:
needs: setup-matrix
strategy:
fail-fast: false
matrix: ${{fromJson(needs.setup-matrix.outputs.matrix)}}
runs-on: ${{ matrix.os }}
steps:
- name: Prepare SIPssert
uses: OpenSIPS/SIPssert/.github/actions/Prepare_SIPssert@main
with:
sipssert-repo: OpenSIPS/SIPSsert
tests-repo: OpenSIPS/sipssert-opensips-tests
- name: Run Test
uses: OpenSIPS/SIPssert/.github/actions/Run_Tests@main
with:
tests: ${{ matrix.tests }}
aggregate:
needs: test
runs-on: ubuntu-latest
if: always()
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Download All Artifacts
uses: actions/download-artifact@v4
with:
path: junit-reports
- name: Aggregate JUnit Reports
run: |
pip install junitparser
python .github/scripts/aggregate_junit_reports.py
env:
REPORTS_DIR: junit-reports
OUTPUT_FILE: junit-final-report.xml
- name: Upload JUnit XML
uses: actions/upload-artifact@v4
with:
name: junit-final-report
path: junit-final-report.xml
- name: Print detail final tests report
uses: dorny/test-reporter@v1
if: success() || failure()
with:
name: 'Aggregated SIPssert Test Report'
path: junit-final-report.xml
reporter: java-junit
fail-on-error: false
max-annotations: 0