Add OpenTelemetry Instrumentation #963
Workflow file for this run
This file contains 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: Test | |
on: | |
pull_request: {} | |
push: | |
branches: | |
- main | |
jobs: | |
dotnet: | |
name: dotnet | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- branch: 'v2.9.22' | |
- branch: 'v2.10.9' | |
- branch: 'main' | |
runs-on: ubuntu-latest | |
env: | |
DOTNET_CLI_TELEMETRY_OPTOUT: 1 | |
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1 | |
NUGET_XMLDOC_MODE: skip | |
steps: | |
- name: Install nats-server | |
run: | | |
for i in 1 2 3 | |
do | |
curl -sf https://binaries.nats.dev/nats-io/nats-server/v2@${{ matrix.config.branch }} | PREFIX=. sh && break || sleep 30 | |
done | |
sudo mv nats-server /usr/local/bin | |
- name: Check nats-server | |
run: nats-server -v | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Setup dotnet | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: '8.x' | |
- name: Build | |
run: dotnet build -c Debug | |
- name: Test Core | |
run: dotnet test -c Debug --no-build --logger:"console;verbosity=normal" tests/NATS.Client.Core.Tests/NATS.Client.Core.Tests.csproj | |
- name: Test JetStream | |
run: dotnet test -c Debug --no-build --logger:"console;verbosity=normal" tests/NATS.Client.JetStream.Tests/NATS.Client.JetStream.Tests.csproj | |
- name: Test Key/Value Store | |
run: dotnet test -c Debug --no-build --logger:"console;verbosity=normal" tests/NATS.Client.KeyValueStore.Tests/NATS.Client.KeyValueStore.Tests.csproj | |
- name: Test Object Store | |
run: dotnet test -c Debug --no-build --logger:"console;verbosity=normal" tests/NATS.Client.ObjectStore.Tests/NATS.Client.ObjectStore.Tests.csproj | |
- name: Test Services | |
run: dotnet test -c Debug --no-build --logger:"console;verbosity=normal" tests/NATS.Client.Services.Tests/NATS.Client.Services.Tests.csproj | |
- name: Check Native AOT | |
run: | | |
cd tests/NATS.Client.CheckNativeAot | |
rm -rf bin obj | |
dotnet publish -r linux-x64 -c Release -o dist | tee output.txt | |
# check for warnings | |
grep -i warning output.txt && exit 1 | |
cd dist | |
ls -lh | |
# make sure it's executable | |
file NATS.Client.CheckNativeAot | |
file NATS.Client.CheckNativeAot | grep ELF || exit 1 | |
# can't be less than a meg | |
ls --size NATS.Client.CheckNativeAot | perl -lne'/(\d+)/; exit(1) if $1 < 1024' || exit 1 | |
./NATS.Client.CheckNativeAot | |
memory_test: | |
name: memory test | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- branch: 'v2.9.22' | |
- branch: 'v2.10.9' | |
- branch: 'main' | |
runs-on: windows-latest | |
env: | |
DOTNET_CLI_TELEMETRY_OPTOUT: 1 | |
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1 | |
NUGET_XMLDOC_MODE: skip | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Setup dotnet | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: '8.x' | |
- name: Get nats-server | |
shell: bash | |
run: | | |
mkdir tools-nats-server && cd tools-nats-server | |
for i in 1 2 3 | |
do | |
curl -sf https://binaries.nats.dev/nats-io/nats-server/v2@${{ matrix.config.branch }} | PREFIX=. sh && break || sleep 30 | |
done | |
mv nats-server nats-server.exe | |
cygpath -w "$(pwd)" | tee -a "$GITHUB_PATH" | |
- name: Check nats-server | |
run: nats-server -v | |
- name: Get tools | |
run: | | |
Invoke-WebRequest https://download.jetbrains.com/resharper/JetBrains.dotMemoryUnit.3.2.20220510.zip -OutFile dotMemoryUnit.zip | |
Expand-Archive dotMemoryUnit.zip | |
nuget install NUnit.ConsoleRunner -version 3.16.3 | |
$current_path = (Get-Item .).FullName | |
echo "$current_path\dotMemoryUnit" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append | |
- name: Build | |
run: dotnet build -c Debug | |
- name: Memory Test | |
run: dotMemoryUnit .\NUnit.ConsoleRunner.3.16.3\tools\nunit3-console.exe --propagate-exit-code -- .\tests\NATS.Client.Core.MemoryTests\bin\Debug\net6.0\NATS.Client.Core.MemoryTests.dll |