Repository navigation
fix: read problem details when the serializer has no usable metadata #349
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: 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 |