Skip to content

fix: read problem details when the serializer has no usable metadata #349

fix: read problem details when the serializer has no usable metadata

fix: read problem details when the serializer has no usable metadata #349

Workflow file for this run

name: Native AOT
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
permissions:
contents: read
jobs:
native-aot-smoke:
uses: reactiveui/actions-common/.github/workflows/workflow-common-aot-smoke.yml@main
with:
projectFile: src/Refit.NativeAotSmoke/Refit.NativeAotSmoke.csproj
# The documentation examples that support Native AOT, published and run on net10.0.
native-aot-documentation:
uses: reactiveui/actions-common/.github/workflows/workflow-common-aot-smoke.yml@main
with:
projectFile: src/examples/Documentation/Aot/NativeClient/NativeClient.csproj
# Packs Refit, Refit.HttpClientFactory and Refit.Testing once for the package consumer below.
pack-for-package-consumer:
runs-on: ubuntu-latest
env:
DOTNET_CLI_WORKLOAD_UPDATE_NOTIFY_DISABLE: 1
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
with:
fetch-depth: 0
- name: Setup .NET Environment
uses: reactiveui/actions-common/.github/actions/dotnet-environment@main
with:
dotnet-versions: |
8.0.x
9.0.x
10.0.x
11.0.x
src-folder: src
- name: Pack
shell: bash
working-directory: src
run: |
for project in Refit Refit.HttpClientFactory Refit.Testing; do
dotnet pack "$project/$project.csproj" --configuration Release --output "$GITHUB_WORKSPACE/aot-feed"
done
- name: Upload packages
uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7
with:
name: aot-package-consumer-feed
path: aot-feed/*.nupkg
if-no-files-found: error
retention-days: 1
# Publishes a Native AOT application that consumes the packed packages, not project references, and runs it.
native-aot-package-consumer:
name: native-aot-package-consumer (${{ matrix.rid }})
needs: pack-for-package-consumer
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: windows-latest
rid: win-x64
- os: ubuntu-latest
rid: linux-x64
- os: macos-latest
rid: osx-arm64
env:
DOTNET_CLI_WORKLOAD_UPDATE_NOTIFY_DISABLE: 1
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
- name: Setup .NET Environment
uses: reactiveui/actions-common/.github/actions/dotnet-environment@main
with:
dotnet-versions: 10.0.x
src-folder: src
# The packages already carry their version; this shallow checkout has no tags to stamp from.
stamp-version: 'false'
- name: Install native AOT prerequisites (Linux)
if: runner.os == 'Linux'
shell: bash
run: |
sudo apt-get update
sudo apt-get install -y clang zlib1g-dev
- name: Download packages
uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8
with:
name: aot-package-consumer-feed
path: src/Refit.NativeAotPackageSmoke/obj/feed
- name: Publish
shell: bash
env:
RID: ${{ matrix.rid }}
run: |
dotnet publish src/Refit.NativeAotPackageSmoke/Refit.NativeAotPackageSmoke.csproj \
--configuration Release \
--runtime "$RID" \
--output aot-publish
- name: Run
shell: bash
run: |
if [ "$RUNNER_OS" = "Windows" ]; then
./aot-publish/Refit.NativeAotPackageSmoke.exe
else
./aot-publish/Refit.NativeAotPackageSmoke
fi