Skip to content

Commit c591b83

Browse files
joperezrRussKie
andauthored
Mark shipped public api as such and add infrastructure for PublicApiAnalyzers (dotnet#4467)
* Add Microsoft.CodeAnalysis.PublicApiAnalyzers Marking the API we shipped stable as Shipped * Add new API added in main to Unshipped lists * Adding more new API as unshipped * Enable Package Validation on all packages to prevent breaking changes * Update Versions.props Co-authored-by: Igor Velikorossov <[email protected]> * Add PR suggestion --------- Co-authored-by: Igor Velikorossov <[email protected]>
1 parent d5b3c17 commit c591b83

File tree

151 files changed

+1701
-1537
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

151 files changed

+1701
-1537
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -144,3 +144,4 @@ node_modules/
144144
/playground/**/.gitignore
145145
/playground/**/azure.yaml
146146
/playground/**/next-steps.md
147+
*.svclog

Directory.Build.props

+2-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<Project>
2-
32
<Import Project="Sdk.props" Sdk="Microsoft.DotNet.Arcade.Sdk" />
3+
<Import Project="$(RepositoryEngineeringDir)/apicompat/PublicApiAnalyzer.props" />
44

55
<PropertyGroup>
66
<Copyright>$(CopyrightNetFoundation)</Copyright>
@@ -24,6 +24,7 @@
2424
<StrongNameKeyId>Open</StrongNameKeyId>
2525
<Nullable>enable</Nullable>
2626
<ImplicitUsings>enable</ImplicitUsings>
27+
<UsePublicApiAnalyzers>true</UsePublicApiAnalyzers>
2728
<!-- Redirect test logs into a subfolder -->
2829
<TestResultsLogDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsLogDir)', 'TestLogs'))</TestResultsLogDir>
2930
<!-- We don't want to use the workload for AppHost projects in this repo -->
@@ -48,8 +49,4 @@
4849
<AspireDashboardDir>$(MSBuildThisFileDirectory)/artifacts/bin/Aspire.Dashboard/$(Configuration)/net8.0/</AspireDashboardDir>
4950
</PropertyGroup>
5051

51-
<PropertyGroup>
52-
<AddPublicApiAnalyzers>true</AddPublicApiAnalyzers>
53-
</PropertyGroup>
54-
5552
</Project>

Directory.Build.targets

+1-4
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,5 @@
2323
<None Include="$(ReadMePath)" Pack="true" PackagePath="\" />
2424
</ItemGroup>
2525

26-
<ItemGroup Condition=" '$(DotNetBuildFromSource)' != 'true' AND $(AddPublicApiAnalyzers) ">
27-
<PackageReference Include="Microsoft.CodeAnalysis.PublicApiAnalyzers" ExcludeAssets="Compile" PrivateAssets="All" />
28-
</ItemGroup>
29-
26+
<Import Project="$(RepositoryEngineeringDir)/apicompat/PublicApiAnalyzer.targets" />
3027
</Project>

eng/Versions.props

+6
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,12 @@
66
<PatchVersion>0</PatchVersion>
77
<VersionPrefix>8.1.0</VersionPrefix>
88
<PreReleaseVersionLabel>preview.1</PreReleaseVersionLabel>
9+
<!--
10+
When running package validation as part of the build, we want to ensure we didn't break the API against the previous
11+
version of each package. The following property points to the package version that should be used as baseline.
12+
This should get updated each time packages are shipped.
13+
-->
14+
<BaselineVersionForPackageValidation>8.0.1</BaselineVersionForPackageValidation>
915
<UseVSTestRunner>true</UseVSTestRunner>
1016
<!-- Enable to remove prerelease label. -->
1117
<StabilizePackageVersion Condition="'$(StabilizePackageVersion)' == ''">false</StabilizePackageVersion>

eng/apicompat/PublicApiAnalyzer.props

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<Project>
2+
3+
<PropertyGroup Condition="'$(UsePublicApiAnalyzers)' == 'true'">
4+
<!-- https://github.com/dotnet/roslyn-analyzers/blob/main/src/PublicApiAnalyzers/Microsoft.CodeAnalysis.PublicApiAnalyzers.md -->
5+
<WarningsAsErrors>$(WarningsAsErrors);RS0016;RS0017;RS0022;RS0024;RS0025;RS0026;RS0027;RS0036;RS0037</WarningsAsErrors>
6+
</PropertyGroup>
7+
8+
</Project>
+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<Project>
2+
3+
<ItemGroup Condition="'$(UsePublicApiAnalyzers)' == 'true' AND '$(DotNetBuildFromSource)' != 'true'">
4+
<PackageReference Include="Microsoft.CodeAnalysis.PublicApiAnalyzers" ExcludeAssets="Compile" PrivateAssets="All" />
5+
<AdditionalFiles Include="$(ProjectDir)PublicAPI.Shipped.txt" />
6+
<AdditionalFiles Include="$(ProjectDir)PublicAPI.Unshipped.txt" />
7+
</ItemGroup>
8+
9+
</Project>

eng/apicompat/mark-shipped.cmd

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
@echo off
2+
powershell -noprofile -executionPolicy RemoteSigned -file "%~dp0mark-shipped.ps1"

eng/apicompat/mark-shipped.ps1

+49
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
[CmdletBinding(PositionalBinding=$false)]
2+
param ()
3+
4+
Set-StrictMode -version 2.0
5+
$ErrorActionPreference = "Stop"
6+
7+
function MarkShipped([string]$dir) {
8+
$shippedFilePath = Join-Path $dir "PublicAPI.Shipped.txt"
9+
$shipped = @()
10+
$shipped += Get-Content $shippedFilePath
11+
12+
$unshippedFilePath = Join-Path $dir "PublicAPI.Unshipped.txt"
13+
$unshipped = Get-Content $unshippedFilePath
14+
$removed = @()
15+
$removedPrefix = "*REMOVED*";
16+
Write-Host "Processing $dir"
17+
18+
foreach ($item in $unshipped) {
19+
if ($item.Length -gt 0) {
20+
if ($item.StartsWith($removedPrefix)) {
21+
$item = $item.Substring($removedPrefix.Length)
22+
$removed += $item
23+
}
24+
else {
25+
$shipped += $item
26+
}
27+
}
28+
}
29+
30+
$shipped | Sort-Object -Unique |Where-Object { -not $removed.Contains($_) } | Out-File $shippedFilePath -Encoding Ascii
31+
"#nullable enable`r`n" | Out-File $unshippedFilePath -Encoding Ascii
32+
}
33+
34+
try {
35+
Push-Location $PSScriptRoot\..\..
36+
37+
foreach ($file in Get-ChildItem -re -in "PublicApi.Shipped.txt") {
38+
$dir = Split-Path -parent $file
39+
MarkShipped $dir
40+
}
41+
}
42+
catch {
43+
Write-Host $_
44+
Write-Host $_.Exception
45+
exit 1
46+
}
47+
finally {
48+
Pop-Location
49+
}

eng/apicompat/readme.md

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Mark-Shipped Tool
2+
========
3+
4+
This tool should be run after every supported release that has API changes. It will
5+
merge the collection of PublicApi.Shipped.txt files with the PublicApi.Unshipped.txt
6+
versions. This will take into account `*REMOVED*` elements when updating the files.
7+
8+
Usage:
9+
10+
``` cmd
11+
mark-shipped.cmd
12+
```

playground/Directory.Build.props

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
<Project>
2-
3-
<Import Project="..\Directory.Build.props" />
2+
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))" />
43

54
<PropertyGroup>
65
<!--
@@ -13,7 +12,7 @@
1312
</PropertyGroup>
1413

1514
<PropertyGroup>
16-
<AddPublicApiAnalyzers>false</AddPublicApiAnalyzers>
15+
<UsePublicApiAnalyzers>false</UsePublicApiAnalyzers>
1716
</PropertyGroup>
1817

1918
<!-- Enable Azure ActivitySources so Azure Components participate in tracing. -->

playground/orleans/Directory.Build.props

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
<Project>
2-
3-
<Import Project="..\Directory.Build.props" />
2+
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))" />
43

54
<PropertyGroup>
65
<NoWarn>$(NoWarn),8002</NoWarn>

src/Aspire.Dashboard/Aspire.Dashboard.csproj

+2-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414
</PropertyGroup>
1515

1616
<PropertyGroup>
17-
<AddPublicApiAnalyzers>false</AddPublicApiAnalyzers>
17+
<UsePublicApiAnalyzers>false</UsePublicApiAnalyzers>
18+
<EnablePackageValidation>false</EnablePackageValidation>
1819
</PropertyGroup>
1920

2021
<ItemGroup>

src/Aspire.Hosting.AWS/Aspire.Hosting.AWS.csproj

+2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
<SuppressFinalPackageVersion>true</SuppressFinalPackageVersion>
88
<PackageTags>aspire hosting aws</PackageTags>
99
<Description>Add support for provisioning AWS application resources and configuring the AWS SDK for .NET.</Description>
10+
<!-- This package hasn't shipped stable, so package validation runs against previously shipped version of it. -->
11+
<PackageValidationBaselineVersion>8.0.1-preview.8.24267.1</PackageValidationBaselineVersion>
1012
</PropertyGroup>
1113

1214
<ItemGroup>

src/Aspire.Hosting.AppHost/Aspire.Hosting.AppHost.csproj

+4
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@
77
<Description>Core library and MSBuild logic for .NET Aspire AppHost projects.</Description>
88
</PropertyGroup>
99

10+
<PropertyGroup>
11+
<UsePublicApiAnalyzers>false</UsePublicApiAnalyzers>
12+
</PropertyGroup>
13+
1014
<ItemGroup>
1115
<None Include="**/*.props;**/*.targets" Pack="true" PackagePath="%(RecursiveDir)%(Filename)%(Extension)" />
1216
</ItemGroup>
Original file line numberDiff line numberDiff line change
@@ -1 +1,8 @@
11
#nullable enable
2+
Aspire.Hosting.Azure.AzureAppConfigurationResource
3+
Aspire.Hosting.Azure.AzureAppConfigurationResource.AzureAppConfigurationResource(string! name, System.Action<Aspire.Hosting.ResourceModuleConstruct!>! configureConstruct) -> void
4+
Aspire.Hosting.Azure.AzureAppConfigurationResource.ConnectionStringExpression.get -> Aspire.Hosting.ApplicationModel.ReferenceExpression!
5+
Aspire.Hosting.Azure.AzureAppConfigurationResource.Endpoint.get -> Aspire.Hosting.Azure.BicepOutputReference!
6+
Aspire.Hosting.AzureAppConfigurationExtensions
7+
static Aspire.Hosting.AzureAppConfigurationExtensions.AddAzureAppConfiguration(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureAppConfigurationResource!>!
8+
static Aspire.Hosting.AzureAppConfigurationExtensions.AddAzureAppConfiguration(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name, System.Action<Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureAppConfigurationResource!>!, Aspire.Hosting.ResourceModuleConstruct!, Azure.Provisioning.AppConfiguration.AppConfigurationStore!>? configureResource) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureAppConfigurationResource!>!
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,2 @@
11
#nullable enable
2-
Aspire.Hosting.Azure.AzureAppConfigurationResource
3-
Aspire.Hosting.Azure.AzureAppConfigurationResource.AzureAppConfigurationResource(string! name, System.Action<Aspire.Hosting.ResourceModuleConstruct!>! configureConstruct) -> void
4-
Aspire.Hosting.Azure.AzureAppConfigurationResource.ConnectionStringExpression.get -> Aspire.Hosting.ApplicationModel.ReferenceExpression!
5-
Aspire.Hosting.Azure.AzureAppConfigurationResource.Endpoint.get -> Aspire.Hosting.Azure.BicepOutputReference!
6-
Aspire.Hosting.AzureAppConfigurationExtensions
7-
static Aspire.Hosting.AzureAppConfigurationExtensions.AddAzureAppConfiguration(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureAppConfigurationResource!>!
8-
static Aspire.Hosting.AzureAppConfigurationExtensions.AddAzureAppConfiguration(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name, System.Action<Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureAppConfigurationResource!>!, Aspire.Hosting.ResourceModuleConstruct!, Azure.Provisioning.AppConfiguration.AppConfigurationStore!>? configureResource) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureAppConfigurationResource!>!
2+
Original file line numberDiff line numberDiff line change
@@ -1 +1,10 @@
11
#nullable enable
2+
Aspire.Hosting.Azure.AzureApplicationInsightsResource
3+
Aspire.Hosting.Azure.AzureApplicationInsightsResource.AzureApplicationInsightsResource(string! name, System.Action<Aspire.Hosting.ResourceModuleConstruct!>! configureConstruct) -> void
4+
Aspire.Hosting.Azure.AzureApplicationInsightsResource.ConnectionString.get -> Aspire.Hosting.Azure.BicepOutputReference!
5+
Aspire.Hosting.Azure.AzureApplicationInsightsResource.ConnectionStringExpression.get -> Aspire.Hosting.ApplicationModel.ReferenceExpression!
6+
Aspire.Hosting.AzureApplicationInsightsExtensions
7+
static Aspire.Hosting.AzureApplicationInsightsExtensions.AddAzureApplicationInsights(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!
8+
static Aspire.Hosting.AzureApplicationInsightsExtensions.AddAzureApplicationInsights(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name, Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureLogAnalyticsWorkspaceResource!>? logAnalyticsWorkspace) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!
9+
static Aspire.Hosting.AzureApplicationInsightsExtensions.AddAzureApplicationInsights(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name, Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureLogAnalyticsWorkspaceResource!>? logAnalyticsWorkspace, System.Action<Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!, Aspire.Hosting.ResourceModuleConstruct!, Azure.Provisioning.ApplicationInsights.ApplicationInsightsComponent!>? configureResource) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!
10+
static Aspire.Hosting.AzureApplicationInsightsExtensions.AddAzureApplicationInsights(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name, System.Action<Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!, Aspire.Hosting.ResourceModuleConstruct!, Azure.Provisioning.ApplicationInsights.ApplicationInsightsComponent!>? configureResource) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,2 @@
11
#nullable enable
2-
Aspire.Hosting.Azure.AzureApplicationInsightsResource
3-
Aspire.Hosting.Azure.AzureApplicationInsightsResource.AzureApplicationInsightsResource(string! name, System.Action<Aspire.Hosting.ResourceModuleConstruct!>! configureConstruct) -> void
4-
Aspire.Hosting.Azure.AzureApplicationInsightsResource.ConnectionString.get -> Aspire.Hosting.Azure.BicepOutputReference!
5-
Aspire.Hosting.Azure.AzureApplicationInsightsResource.ConnectionStringExpression.get -> Aspire.Hosting.ApplicationModel.ReferenceExpression!
6-
Aspire.Hosting.AzureApplicationInsightsExtensions
7-
static Aspire.Hosting.AzureApplicationInsightsExtensions.AddAzureApplicationInsights(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!
8-
static Aspire.Hosting.AzureApplicationInsightsExtensions.AddAzureApplicationInsights(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name, Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureLogAnalyticsWorkspaceResource!>? logAnalyticsWorkspace) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!
9-
static Aspire.Hosting.AzureApplicationInsightsExtensions.AddAzureApplicationInsights(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name, Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureLogAnalyticsWorkspaceResource!>? logAnalyticsWorkspace, System.Action<Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!, Aspire.Hosting.ResourceModuleConstruct!, Azure.Provisioning.ApplicationInsights.ApplicationInsightsComponent!>? configureResource) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!
10-
static Aspire.Hosting.AzureApplicationInsightsExtensions.AddAzureApplicationInsights(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name, System.Action<Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!, Aspire.Hosting.ResourceModuleConstruct!, Azure.Provisioning.ApplicationInsights.ApplicationInsightsComponent!>? configureResource) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureApplicationInsightsResource!>!
2+
Original file line numberDiff line numberDiff line change
@@ -1 +1,17 @@
11
#nullable enable
2+
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment
3+
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.AzureOpenAIDeployment(string! name, string! modelName, string! modelVersion, string! skuName = "Standard", int skuCapacity = 1) -> void
4+
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.ModelName.get -> string!
5+
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.ModelVersion.get -> string!
6+
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.Name.get -> string!
7+
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.SkuCapacity.get -> int
8+
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.SkuName.get -> string!
9+
Aspire.Hosting.ApplicationModel.AzureOpenAIResource
10+
Aspire.Hosting.ApplicationModel.AzureOpenAIResource.AzureOpenAIResource(string! name, System.Action<Aspire.Hosting.ResourceModuleConstruct!>! configureConstruct) -> void
11+
Aspire.Hosting.ApplicationModel.AzureOpenAIResource.ConnectionString.get -> Aspire.Hosting.Azure.BicepOutputReference!
12+
Aspire.Hosting.ApplicationModel.AzureOpenAIResource.ConnectionStringExpression.get -> Aspire.Hosting.ApplicationModel.ReferenceExpression!
13+
Aspire.Hosting.ApplicationModel.AzureOpenAIResource.Deployments.get -> System.Collections.Generic.IReadOnlyList<Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment!>!
14+
Aspire.Hosting.AzureOpenAIExtensions
15+
static Aspire.Hosting.AzureOpenAIExtensions.AddAzureOpenAI(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.ApplicationModel.AzureOpenAIResource!>!
16+
static Aspire.Hosting.AzureOpenAIExtensions.AddAzureOpenAI(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name, System.Action<Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.ApplicationModel.AzureOpenAIResource!>!, Aspire.Hosting.ResourceModuleConstruct!, Azure.Provisioning.CognitiveServices.CognitiveServicesAccount!, System.Collections.Generic.IEnumerable<Azure.Provisioning.CognitiveServices.CognitiveServicesAccountDeployment!>!>? configureResource) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.ApplicationModel.AzureOpenAIResource!>!
17+
static Aspire.Hosting.AzureOpenAIExtensions.AddDeployment(this Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.ApplicationModel.AzureOpenAIResource!>! builder, Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment! deployment) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.ApplicationModel.AzureOpenAIResource!>!
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,2 @@
11
#nullable enable
2-
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment
3-
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.AzureOpenAIDeployment(string! name, string! modelName, string! modelVersion, string! skuName = "Standard", int skuCapacity = 1) -> void
4-
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.ModelName.get -> string!
5-
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.ModelVersion.get -> string!
6-
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.Name.get -> string!
7-
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.SkuCapacity.get -> int
8-
Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment.SkuName.get -> string!
9-
Aspire.Hosting.ApplicationModel.AzureOpenAIResource
10-
Aspire.Hosting.ApplicationModel.AzureOpenAIResource.AzureOpenAIResource(string! name, System.Action<Aspire.Hosting.ResourceModuleConstruct!>! configureConstruct) -> void
11-
Aspire.Hosting.ApplicationModel.AzureOpenAIResource.ConnectionString.get -> Aspire.Hosting.Azure.BicepOutputReference!
12-
Aspire.Hosting.ApplicationModel.AzureOpenAIResource.ConnectionStringExpression.get -> Aspire.Hosting.ApplicationModel.ReferenceExpression!
13-
Aspire.Hosting.ApplicationModel.AzureOpenAIResource.Deployments.get -> System.Collections.Generic.IReadOnlyList<Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment!>!
14-
Aspire.Hosting.AzureOpenAIExtensions
15-
static Aspire.Hosting.AzureOpenAIExtensions.AddAzureOpenAI(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.ApplicationModel.AzureOpenAIResource!>!
16-
static Aspire.Hosting.AzureOpenAIExtensions.AddAzureOpenAI(this Aspire.Hosting.IDistributedApplicationBuilder! builder, string! name, System.Action<Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.ApplicationModel.AzureOpenAIResource!>!, Aspire.Hosting.ResourceModuleConstruct!, Azure.Provisioning.CognitiveServices.CognitiveServicesAccount!, System.Collections.Generic.IEnumerable<Azure.Provisioning.CognitiveServices.CognitiveServicesAccountDeployment!>!>? configureResource) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.ApplicationModel.AzureOpenAIResource!>!
17-
static Aspire.Hosting.AzureOpenAIExtensions.AddDeployment(this Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.ApplicationModel.AzureOpenAIResource!>! builder, Aspire.Hosting.ApplicationModel.AzureOpenAIDeployment! deployment) -> Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.ApplicationModel.AzureOpenAIResource!>!
2+

0 commit comments

Comments
 (0)