Address PR Feedback #135
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
# Simplified build-and-test without gRPC exporter, run when pushed to any branches other than main or release branches | |
name: "Build and Run Tests Simple" | |
on: | |
workflow_dispatch: | |
push: | |
branches-ignore: | |
- 'main' | |
- '[0-9]+.[0-9]+.[0-9]+' | |
env: | |
MLM_LICENSE_TOKEN: ${{ secrets.MLM_LICENSE_TOKEN }} | |
jobs: | |
get_version: | |
runs-on: ubuntu-22.04 | |
outputs: | |
version: ${{ steps.getversion.outputs.latest_tag }} | |
steps: | |
# need fetch-depth:0 to also download the tags | |
- name: Download OpenTelemetry-Matlab source | |
uses: actions/checkout@v3 | |
with: | |
path: opentelemetry-matlab | |
fetch-depth: 0 | |
- name: Get Version | |
id: getversion | |
shell: bash | |
working-directory: opentelemetry-matlab | |
run: echo "latest_tag=$(sed -re 's/^v?([[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+)?.*/\1/' <<< $(git describe --tags --abbrev=0))" >> $GITHUB_OUTPUT | |
build-and-run-tests-ubuntu: | |
runs-on: ubuntu-22.04 | |
needs: get_version | |
env: | |
OPENTELEMETRY_MATLAB_INSTALL: "${{ github.workspace }}/otel_matlab_install" | |
SYSTEM_LIBSTDCPP_PATH: "/usr/lib/x86_64-linux-gnu/libstdc++.so.6" | |
steps: | |
- name: Download OpenTelemetry-Matlab source | |
uses: actions/checkout@v3 | |
with: | |
path: opentelemetry-matlab | |
- name: Install ninja-build | |
run: sudo apt-get install ninja-build | |
- name: Install MATLAB | |
uses: matlab-actions/setup-matlab@v2 | |
with: | |
release: R2025a | |
products: MATLAB_Compiler MATLAB_Compiler_SDK | |
- name: Build OpenTelemetry-Matlab | |
working-directory: opentelemetry-matlab | |
run: | | |
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DWITH_EXAMPLES=ON -DUSE_BATCH_FOR_MCC=ON -DOTEL_MATLAB_VERSION=${{ needs.get_version.outputs.version }} -DCMAKE_INSTALL_PREFIX=${{ env.OPENTELEMETRY_MATLAB_INSTALL }} | |
cmake --build build --config Release --target install | |
- name: Run tests | |
env: | |
# Add the installation directory to the MATLAB Search Path by | |
# setting the MATLABPATH environment variable. | |
MATLABPATH: ${{ env.OPENTELEMETRY_MATLAB_INSTALL }} | |
uses: matlab-actions/run-tests@v2 | |
with: | |
select-by-folder: opentelemetry-matlab/test | |
build-and-run-tests-windows: | |
runs-on: windows-latest | |
needs: get_version | |
env: | |
OPENTELEMETRY_MATLAB_INSTALL: "${{ github.workspace }}/otel_matlab_install" | |
steps: | |
- name: Download OpenTelemetry-Matlab source | |
uses: actions/checkout@v3 | |
with: | |
path: opentelemetry-matlab | |
- name: Install ninja-build | |
run: choco install ninja | |
- name: Install MATLAB | |
uses: matlab-actions/setup-matlab@v2 | |
with: | |
# pin to R2024b because R2025a has an issue that causes a failure when building the context_propagation example | |
release: R2024b | |
products: MATLAB_Compiler MATLAB_Compiler_SDK | |
- name: Build OpenTelemetry-Matlab | |
working-directory: opentelemetry-matlab | |
shell: cmd | |
run: | | |
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64 | |
cmake -S . -B build -G Ninja -DCMAKE_CXX_COMPILER="cl.exe" -DCMAKE_C_COMPILER="cl.exe" -DCMAKE_BUILD_TYPE=Release -DWITH_EXAMPLES=ON -DUSE_BATCH_FOR_MCC=ON -DFETCH_VCPKG=ON -DOTEL_MATLAB_VERSION=${{ needs.get_version.outputs.version }} -DCMAKE_INSTALL_PREFIX=${{ env.OPENTELEMETRY_MATLAB_INSTALL }} | |
cmake --build build --config Release --target install | |
- name: Run tests | |
env: | |
# Add the installation directory to the MATLAB Search Path by | |
# setting the MATLABPATH environment variable. | |
MATLABPATH: ${{ env.OPENTELEMETRY_MATLAB_INSTALL }} | |
uses: matlab-actions/run-tests@v2 | |
with: | |
select-by-folder: opentelemetry-matlab/test | |
build-and-run-tests-macos: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [macos-13, macos-14] # runs on Mac with both Intel (macos-13) and Apple Silicon (macos-14) processors | |
needs: get_version | |
env: | |
OPENTELEMETRY_MATLAB_INSTALL: "${{ github.workspace }}/otel_matlab_install" | |
steps: | |
- name: Download OpenTelemetry-Matlab source | |
uses: actions/checkout@v3 | |
with: | |
path: opentelemetry-matlab | |
- name: Install ninja-build | |
run: brew install ninja | |
- name: Install MATLAB | |
uses: matlab-actions/setup-matlab@v2 | |
with: | |
release: R2025a | |
products: MATLAB_Compiler MATLAB_Compiler_SDK | |
- name: Build OpenTelemetry-Matlab | |
working-directory: opentelemetry-matlab | |
run: | | |
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DWITH_EXAMPLES=ON -DUSE_BATCH_FOR_MCC=ON -DOTEL_MATLAB_VERSION=${{ needs.get_version.outputs.version }} -DCMAKE_INSTALL_PREFIX=${{ env.OPENTELEMETRY_MATLAB_INSTALL }} | |
cmake --build build --config Release --target install | |
- name: Run tests | |
env: | |
# Add the installation directory to the MATLAB Search Path by | |
# setting the MATLABPATH environment variable. | |
MATLABPATH: ${{ env.OPENTELEMETRY_MATLAB_INSTALL }} | |
uses: matlab-actions/run-tests@v2 | |
with: | |
select-by-folder: opentelemetry-matlab/test |