Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/main' into eventhubs3
Browse files Browse the repository at this point in the history
  • Loading branch information
danmoseley committed Feb 7, 2025
2 parents ffafac6 + 955802e commit f05024c
Show file tree
Hide file tree
Showing 532 changed files with 13,851 additions and 4,873 deletions.
5 changes: 2 additions & 3 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ updates:
- dependency-name: "Microsoft.Build.NoTargets"
# Pinned versions that should not be updated
- dependency-name: "Microsoft.CodeAnalysis.CSharp"
# See https://github.com/dotnet/aspire/issues/7123
- dependency-name: "OpenTelemetry.*"
# NetPlatform dependencies shouldn't update across major versions
- dependency-name: "Microsoft.AspNetCore.*"
update-types: ["version-update:semver-major"]
Expand All @@ -45,9 +47,6 @@ updates:
FluentUi:
patterns:
- "Microsoft.FluentUI.*"
OpenTelemetry:
patterns:
- "OpenTelemetry.*"
Orleans:
patterns:
- "Microsoft.Orleans*"
Expand Down
34 changes: 34 additions & 0 deletions .github/workflows/generate-api-diffs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Generate API Diffs

on:
workflow_dispatch:
schedule:
- cron: '0 16 * * *' # 8am PST (16:00 UTC)

permissions:
contents: write
pull-requests: write

jobs:
generate-and-pr:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Restore and build
run: |
set +e
for proj in $(find src -name '*.csproj' ! -path 'src/Aspire.ProjectTemplates/**/*.csproj'); do
export CI=false && ./dotnet.sh build "$proj" -f net8.0 --configuration Release --no-incremental /t:"Build;GenAPIGenerateReferenceAssemblySource"
done
continue-on-error: true

- name: Create or update pull request
uses: peter-evans/create-pull-request@67ccf781d68cd99b580ae25a5c18a1cc84ffff1f
with:
token: ${{ secrets.GITHUB_TOKEN }}
branch: update-api-diffs
base: main
title: "[Automated] Update API Surface Area"
body: "Auto-generated update to the API surface to compare current surface vs latest release. This should only be merged once this surface area ships in a new release."
208 changes: 208 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,208 @@
name: Run Integration Tests

on:
pull_request:
branches: [ main ]

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
test:
runs-on: ubuntu-latest
timeout-minutes: 60
name: ${{ matrix.name }}
strategy:
fail-fast: false
matrix:
include:
# Hosting projects
- project: tests/Aspire.Hosting.Analyzers.Tests/Aspire.Hosting.Analyzers.Tests.csproj
name: Hosting.Analyzers
- project: tests/Aspire.Hosting.Azure.Tests/Aspire.Hosting.Azure.Tests.csproj
name: Hosting.Azure
- project: tests/Aspire.Hosting.Containers.Tests/Aspire.Hosting.Containers.Tests.csproj
name: Hosting.Containers
- project: tests/Aspire.Hosting.Elasticsearch.Tests/Aspire.Hosting.Elasticsearch.Tests.csproj
name: Hosting.Elasticsearch
- project: tests/Aspire.Hosting.Garnet.Tests/Aspire.Hosting.Garnet.Tests.csproj
name: Hosting.Garnet
- project: tests/Aspire.Hosting.Kafka.Tests/Aspire.Hosting.Kafka.Tests.csproj
name: Hosting.Kafka
- project: tests/Aspire.Hosting.Keycloak.Tests/Aspire.Hosting.Keycloak.Tests.csproj
name: Hosting.Keycloak
- project: tests/Aspire.Hosting.Milvus.Tests/Aspire.Hosting.Milvus.Tests.csproj
name: Hosting.Milvus
- project: tests/Aspire.Hosting.MongoDB.Tests/Aspire.Hosting.MongoDB.Tests.csproj
name: Hosting.MongoDB
- project: tests/Aspire.Hosting.MySql.Tests/Aspire.Hosting.MySql.Tests.csproj
name: Hosting.MySql
- project: tests/Aspire.Hosting.Nats.Tests/Aspire.Hosting.Nats.Tests.csproj
name: Hosting.Nats
- project: tests/Aspire.Hosting.NodeJs.Tests/Aspire.Hosting.NodeJs.Tests.csproj
name: Hosting.NodeJs
- project: tests/Aspire.Hosting.Oracle.Tests/Aspire.Hosting.Oracle.Tests.csproj
name: Hosting.Oracle
- project: tests/Aspire.Hosting.PostgreSQL.Tests/Aspire.Hosting.PostgreSQL.Tests.csproj
name: Hosting.PostgreSQL
- project: tests/Aspire.Hosting.Python.Tests/Aspire.Hosting.Python.Tests.csproj
name: Hosting.Python
- project: tests/Aspire.Hosting.Qdrant.Tests/Aspire.Hosting.Qdrant.Tests.csproj
name: Hosting.Qdrant
- project: tests/Aspire.Hosting.RabbitMQ.Tests/Aspire.Hosting.RabbitMQ.Tests.csproj
name: Hosting.RabbitMQ
- project: tests/Aspire.Hosting.Redis.Tests/Aspire.Hosting.Redis.Tests.csproj
name: Hosting.Redis
- project: tests/Aspire.Hosting.Sdk.Tests/Aspire.Hosting.Sdk.Tests.csproj
name: Hosting.Sdk
- project: tests/Aspire.Hosting.SqlServer.Tests/Aspire.Hosting.SqlServer.Tests.csproj
name: Hosting.SqlServer
- project: tests/Aspire.Hosting.Testing.Tests/Aspire.Hosting.Testing.Tests.csproj
name: Hosting.Testing
- project: tests/Aspire.Hosting.Tests/Aspire.Hosting.Tests.csproj
name: Hosting
- project: tests/Aspire.Hosting.Valkey.Tests/Aspire.Hosting.Valkey.Tests.csproj
name: Hosting.Valkey

# Client projects
- project: tests/Aspire.Azure.AI.OpenAI.Tests/Aspire.Azure.AI.OpenAI.Tests.csproj
name: Azure.AI.OpenAI
- project: tests/Aspire.Azure.Data.Tables.Tests/Aspire.Azure.Data.Tables.Tests.csproj
name: Azure.Data.Tables
- project: tests/Aspire.Azure.Messaging.EventHubs.Tests/Aspire.Azure.Messaging.EventHubs.Tests.csproj
name: Azure.Messaging.EventHubs
- project: tests/Aspire.Azure.Messaging.ServiceBus.Tests/Aspire.Azure.Messaging.ServiceBus.Tests.csproj
name: Azure.Messaging.ServiceBus
- project: tests/Aspire.Azure.Messaging.WebPubSub.Tests/Aspire.Azure.Messaging.WebPubSub.Tests.csproj
name: Azure.Messaging.WebPubSub
- project: tests/Aspire.Azure.Search.Documents.Tests/Aspire.Azure.Search.Documents.Tests.csproj
name: Azure.Search.Documents
- project: tests/Aspire.Azure.Security.KeyVault.Tests/Aspire.Azure.Security.KeyVault.Tests.csproj
name: Azure.Security.KeyVault
- project: tests/Aspire.Azure.Storage.Blobs.Tests/Aspire.Azure.Storage.Blobs.Tests.csproj
name: Azure.Storage.Blobs
- project: tests/Aspire.Azure.Storage.Queues.Tests/Aspire.Azure.Storage.Queues.Tests.csproj
name: Azure.Storage.Queues
- project: tests/Aspire.Components.Common.Tests/Aspire.Components.Common.Tests.csproj
name: Components.Common
- project: tests/Aspire.Confluent.Kafka.Tests/Aspire.Confluent.Kafka.Tests.csproj
name: Confluent.Kafka
# This is failing
# - project: tests/Aspire.Elastic.Clients.Elasticsearch.Tests/Aspire.Elastic.Clients.Elasticsearch.Tests.csproj
# name: Elastic.Clients.Elasticsearch
- project: tests/Aspire.Keycloak.Authentication.Tests/Aspire.Keycloak.Authentication.Tests.csproj
name: Keycloak.Authentication
- project: tests/Aspire.Microsoft.Azure.Cosmos.Tests/Aspire.Microsoft.Azure.Cosmos.Tests.csproj
name: Microsoft.Azure.Cosmos
- project: tests/Aspire.Microsoft.Data.SqlClient.Tests/Aspire.Microsoft.Data.SqlClient.Tests.csproj
name: Microsoft.Data.SqlClient
- project: tests/Aspire.Microsoft.EntityFrameworkCore.Cosmos.Tests/Aspire.Microsoft.EntityFrameworkCore.Cosmos.Tests.csproj
name: Microsoft.EntityFrameworkCore.Cosmos
- project: tests/Aspire.Microsoft.EntityFrameworkCore.SqlServer.Tests/Aspire.Microsoft.EntityFrameworkCore.SqlServer.Tests.csproj
name: Microsoft.EntityFrameworkCore.SqlServer
- project: tests/Aspire.Milvus.Client.Tests/Aspire.Milvus.Client.Tests.csproj
name: Milvus.Client
- project: tests/Aspire.MongoDB.Driver.Tests/Aspire.MongoDB.Driver.Tests.csproj
name: MongoDB.Driver
- project: tests/Aspire.MongoDB.Driver.v3.Tests/Aspire.MongoDB.Driver.v3.Tests.csproj
name: MongoDB.Driver.v3
- project: tests/Aspire.MySqlConnector.Tests/Aspire.MySqlConnector.Tests.csproj
name: MySqlConnector
- project: tests/Aspire.NATS.Net.Tests/Aspire.NATS.Net.Tests.csproj
name: NATS.Net
- project: tests/Aspire.Npgsql.EntityFrameworkCore.PostgreSQL.Tests/Aspire.Npgsql.EntityFrameworkCore.PostgreSQL.Tests.csproj
name: Npgsql.EntityFrameworkCore.PostgreSQL
- project: tests/Aspire.Npgsql.Tests/Aspire.Npgsql.Tests.csproj
name: Npgsql
- project: tests/Aspire.OpenAI.Tests/Aspire.OpenAI.Tests.csproj
name: OpenAI
- project: tests/Aspire.Oracle.EntityFrameworkCore.Tests/Aspire.Oracle.EntityFrameworkCore.Tests.csproj
name: Oracle.EntityFrameworkCore
- project: tests/Aspire.Pomelo.EntityFrameworkCore.MySql.Tests/Aspire.Pomelo.EntityFrameworkCore.MySql.Tests.csproj
name: Pomelo.EntityFrameworkCore.MySql
- project: tests/Aspire.Qdrant.Client.Tests/Aspire.Qdrant.Client.Tests.csproj
name: Qdrant.Client
- project: tests/Aspire.RabbitMQ.Client.Tests/Aspire.RabbitMQ.Client.Tests.csproj
name: RabbitMQ.Client
- project: tests/Aspire.RabbitMQ.Client.v7.Tests/Aspire.RabbitMQ.Client.v7.Tests.csproj
name: RabbitMQ.Client.v7
- project: tests/Aspire.Seq.Tests/Aspire.Seq.Tests.csproj
name: Seq
- project: tests/Aspire.StackExchange.Redis.DistributedCaching.Tests/Aspire.StackExchange.Redis.DistributedCaching.Tests.csproj
name: StackExchange.Redis.DistributedCaching
- project: tests/Aspire.StackExchange.Redis.OutputCaching.Tests/Aspire.StackExchange.Redis.OutputCaching.Tests.csproj
name: StackExchange.Redis.OutputCaching
- project: tests/Aspire.StackExchange.Redis.Tests/Aspire.StackExchange.Redis.Tests.csproj
name: StackExchange.Redis

# These are failing due to globalization issues
# Dashboard projects
- project: tests/Aspire.Dashboard.Components.Tests/Aspire.Dashboard.Components.Tests.csproj
name: Dashboard.Components
- project: tests/Aspire.Dashboard.Tests/Aspire.Dashboard.Tests.csproj
name: Dashboard

# Playground project
- project: tests/Aspire.Playground.Tests/Aspire.Playground.Tests.csproj
name: Playground
# Add more projects as needed
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: |
8.x
9.x
- name: Trust HTTPS development certificate
run: dotnet dev-certs https --trust

- name: Verify Docker is running
run: docker info

- name: Install Azure Functions Core Tools
if: matrix.name == 'Playground' || matrix.name == 'Azure'
run: |
sudo apt-get update
sudo apt-get install -y azure-functions-core-tools-4
- name: Build test project
run: |
export CI=false && ./build.sh -restore -ci -build -projects ${{ github.workspace }}/${{ matrix.project }} /bl
- name: Run tests
id: run-tests
env:
DCP_DIAGNOSTICS_LOG_LEVEL: debug
DCP_DIAGNOSTICS_LOG_FOLDER: ${{ github.workspace }}/testresults
run: |
export CI=false && ./dotnet.sh test ${{ github.workspace }}/${{ matrix.project }} \
/p:ContinuousIntegrationBuild=true \
-s eng/testing/.runsettings \
--logger "console;verbosity=normal" \
--logger "trx" \
--logger html \
--logger "GitHubActions;summary.includePassedTests=true;summary.includeSkippedTests=true" \
--blame \
--blame-hang-timeout 7m \
--results-directory testresults \
--no-restore \
--no-build -- RunConfiguration.CollectSourceInformation=true
- name: Upload bin log artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: binlog-${{ matrix.name }}
path: "**/*.binlog"

- name: Upload test results artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: testresults-${{ matrix.name }}
path: testresults/**
1 change: 0 additions & 1 deletion Directory.Build.props
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
<Project>
<Import Project="Sdk.props" Sdk="Microsoft.DotNet.Arcade.Sdk" />
<Import Project="$(RepositoryEngineeringDir)/apicompat/PublicApiAnalyzer.props" />

<PropertyGroup>
<Copyright>$(CopyrightNetFoundation)</Copyright>
Expand Down
1 change: 0 additions & 1 deletion Directory.Build.targets
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@
<None Include="$(ReadMePath)" Pack="true" PackagePath="\" />
</ItemGroup>

<Import Project="$(RepositoryEngineeringDir)/apicompat/PublicApiAnalyzer.targets" />
<Import Project="$(RepositoryEngineeringDir)/NullablePolyfill.targets" />

<!-- HACK: This resolves issues in CI builds where the extensions.json file is mapped to the incorrect directory. We only want
Expand Down
11 changes: 6 additions & 5 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -123,11 +123,11 @@
<!-- build dependencies -->
<PackageVersion Include="MicroBuild.Plugins.SwixBuild.Dotnet" Version="1.1.87-gba258badda" />
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="4.12.0" />
<PackageVersion Include="Microsoft.CodeAnalysis.PublicApiAnalyzers" Version="3.3.4" />
<PackageVersion Include="Microsoft.DotNet.Build.Tasks.Workloads" Version="8.0.0-beta.23564.4" />
<PackageVersion Include="Microsoft.Signed.Wix" Version="$(MicrosoftSignedWixVersion)" />
<PackageVersion Include="Microsoft.DotNet.Build.Tasks.Installers" Version="8.0.0-beta.23564.4" />
<PackageVersion Include="System.CommandLine" Version="2.0.0-beta4.24528.1" />
<PackageVersion Include="Microsoft.DotNet.GenAPI.Task" Version="9.0.103-servicing.25065.25" />
<PackageVersion Include="System.CommandLine" Version="2.0.0-beta4.25072.1" />
<!-- unit test dependencies -->
<PackageVersion Include="bUnit" Version="1.33.3" />
<PackageVersion Include="JsonSchema.Net" Version="7.3.1" />
Expand All @@ -148,6 +148,7 @@
<PackageVersion Include="Testcontainers.Oracle" Version="$(TestcontainersPackageVersion)" />
<PackageVersion Include="Testcontainers.Elasticsearch" Version="$(TestcontainersPackageVersion)" />
<PackageVersion Include="Testcontainers" Version="$(TestcontainersPackageVersion)" />
<PackageVersion Include="GitHubActionsTestLogger" Version="2.4.1" />
<!-- playground apps dependencies -->
<PackageVersion Include="Dapr.AspNetCore" Version="1.14.0" />
<PackageVersion Include="Microsoft.Orleans.Clustering.AzureStorage" Version="9.0.1" />
Expand All @@ -157,12 +158,12 @@
<PackageVersion Include="Microsoft.Orleans.Sdk" Version="9.0.1" />
<!-- playground apps dependencies for AzureFunctionsEndToEnd -->
<PackageVersion Include="Microsoft.Azure.Functions.Worker" Version="2.0.0" />
<PackageVersion Include="Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore" Version="2.0.0" />
<PackageVersion Include="Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore" Version="2.0.1" />
<PackageVersion Include="Microsoft.Azure.Functions.Worker.Extensions.Storage.Blobs" Version="6.6.0" />
<PackageVersion Include="Microsoft.Azure.Functions.Worker.Extensions.Storage.Queues" Version="5.5.0" />
<PackageVersion Include="Microsoft.Azure.Functions.Worker.Extensions.ServiceBus" Version="5.22.0" />
<PackageVersion Include="Microsoft.Azure.Functions.Worker.Extensions.ServiceBus" Version="5.22.1" />
<PackageVersion Include="Microsoft.Azure.Functions.Worker.Extensions.EventHubs" Version="6.3.6" />
<PackageVersion Include="Microsoft.Azure.Functions.Worker.Extensions.CosmosDb" Version="4.11.0" />
<PackageVersion Include="Microsoft.Azure.Functions.Worker.Extensions.CosmosDb" Version="4.12.0" />
<PackageVersion Include="Microsoft.Azure.Functions.Worker.OpenTelemetry" Version="1.1.0-preview6" />
<PackageVersion Include="Microsoft.Azure.Functions.Worker.Sdk" Version="2.0.0" />
<PackageVersion Include="Microsoft.ApplicationInsights.WorkerService" Version="2.22.0" />
Expand Down
Loading

0 comments on commit f05024c

Please sign in to comment.