Code Monkey home page Code Monkey logo

docs-aspire's People

Contributors

adamint avatar adegeo avatar adityamandaleeka avatar akhilesh-microsoft avatar alexwolfmsft avatar alistairmatthews avatar allantargino avatar amcasey avatar camsoper avatar cmcclister avatar danmoseley avatar davidebbo avatar dependabot[bot] avatar eerhardt avatar gewarren avatar github-actions[bot] avatar ievangelist avatar jamesmontemagno avatar jamesnk avatar jonoabroad avatar justinyoo avatar learn-build-service-prod[bot] avatar martinfletcher avatar mitchdenny avatar mrxhh avatar peteraritchie avatar reubenbond avatar sammychinedu2ky avatar sebastienros avatar ziemcd avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docs-aspire's Issues

Benefits?

Type of issue

Missing information

Description

As an introductory overview this page/article fails the first rule of selling, by describing features but not benefits. As a techie, I generally prefer documentation to present the features and allow me to make my own mind up as to the benefits rather than being condescended to by marketing bods, but in this case I'll confess that a bit of condescension could be helpful.
Why would I wish to use this particular approach to orchestration and configuration as opposed to making my own choices from the full selection available on the Microsoft platform?
And what's that adjective "opinionated" referring to?

Page URL

https://learn.microsoft.com/en-gb/dotnet/aspire/get-started/aspire-overview

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/get-started/aspire-overview.md

Document Version Independent Id

1b7d0d68-ea99-ae77-0b30-0bafb0195096

Article author

IEvangelist

Add docs for dockerfile.v0 resource type.

Add documentation for the new dockerfile.v0 resource type. This probably needs a few elements:

  1. A change to the manifest documentation so that it is listed there.
  2. A tutorial on how to launch JavaScript apps might make reference to it as a mechanism to use to get those JS apps to production via AZD in a container.

Associated WorkItem - 192276

Explain "distributed"

Type of issue

Missing information

Description

Of the adjectives used in the opening statement ("observable, production ready, distributed") I suspect that the most important one (from an architectural perspective anyway) is "distributed". But that's only a suspicion - I cannot be certain because I see no explanation as to what is meant by a distributed application. Some elucidation might be helpful.

Page URL

https://learn.microsoft.com/en-gb/dotnet/aspire/get-started/aspire-overview

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/get-started/aspire-overview.md

Document Version Independent Id

1b7d0d68-ea99-ae77-0b30-0bafb0195096

Article author

IEvangelist


Associated WorkItem - 186562

Section on adding Components in VS doesn't mention prerelease checkbox requirement or have an image

Type of issue

Missing information

Description

The section on adding Components in VS should mention the requirement to check the prerelease box to see components that are still in preview (which is all of them right now). Showing a picture here would likely be helpful too. We might want to consider moving this content or linking to it from the components overview page.

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/setup-tooling?tabs=visual-studio

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/setup-tooling.md

Document Version Independent Id

0c187789-0281-3619-c8f4-b054a8d0ae80

Article author

@IEvangelist


Associated WorkItem - 189674

dotnet publish p:PublishProfile=DefaultContainer errors out

Type of issue

Code doesn't work

Description

The dotnet publish command throws in the documentation throws an error after installing the start kit in Visual Studio.

A publish profile with the name 'DefaultContainer' was not found in the project

image

Not sure if the there is supposed to be a default publish profile in the template. After manually adding Docker publish profiles to the web and ApiService I was able to publish the containers.

This seems confusing. What is the point of the AppHost? Is that what is supposed to be published?

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/deployment/azure/aca-deployment?tabs=visual-studio%2Cinstall-az-windows%2Cpowershell&pivots=azure-cli

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/deployment/azure/aca-deployment.md

Document Version Independent Id

1362fc62-686d-2b3f-c139-7725fc8dca5f

Article author

@IEvangelist


Associated WorkItem - 232451

Aspire PostgreSQL Entity Framework Core Orchestration: code does not compile

Type of issue

Code doesn't work

Description

Following the steps at https://learn.microsoft.com/en-us/dotnet/aspire/database/postgresql-entity-framework-component?tabs=dotnet-cli#orchestration, the provided code does not compile.

Does it require an extra NuGet package to be installed? If so, which one?

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/database/postgresql-entity-framework-component?tabs=dotnet-cli

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/database/postgresql-entity-framework-component.md

Document Version Independent Id

f9dd88d5-b271-9168-11b5-9afcf05a59d2

Article author

IEvangelist


Associated WorkItem - 186555

Add clarity in the documentation

Type of issue

Missing information

Description

It would be nice to clarify which project should we include provided code in - i.e. apphost project or your project or extension project. Reading the code, it's not clear where should we add package refereances, where we should add code snipets etc.
[Enter feedback here]

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/database/azure-cosmos-db-entity-framework-component?tabs=dotnet-cli

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/database/azure-cosmos-db-entity-framework-component.md

Document Version Independent Id

8b585800-8c7b-df72-3125-2776e1b1375e

Article author

@IEvangelist


Associated WorkItem - 214421

components-overview.md

In components-overview.md we don't really mention the orchestrator side of what someone needs to do when they set up Postgres within a service. We should probably explain both sides of the equation in more detail.


Associated WorkItem - 189985

For Aspire preview.2, we should update the setup instructions for using VS with aspire

For the aspire setup documentation related to VS (mainly this document, we should ask customers to

  • Make sure 'Aspire SDK' component is checked in VS installer
  • Separately run dotnet workload update and dotnet workload install aspire to get preview.2 version of aspire

We should also talk about the 'Enable support for .NET Aspire' preview flag is checked in Tools-Options (This is checked by default, so customer will need to uncheck it if they don't want aspire UI to show up).


Associated WorkItem - 187720

Improve Service Discovery Documentation

I'm new to Aspire and spent just a couple of hours with it. During that time I discovered that the documentation about Service Discovery was not able to let me understand what it actually does and how to use it.

I read those docs:
https://github.com/dotnet/aspire/tree/c694a69189cb1579c326944cf8cf2975b1971bea/src/Microsoft.Extensions.ServiceDiscovery
https://github.com/dotnet/aspire/blob/c694a69189cb1579c326944cf8cf2975b1971bea/src/Microsoft.Extensions.ServiceDiscovery.Yarp/README.md
https://github.com/dotnet/docs-aspire/blob/28829cb18310f306ffc87357620374068f390367/docs/service-discovery/overview.md

Those are the questions that I came up with, and I think it would help also other people if the docs would answer them.

  1. What problem does it actually solve? Is there a graphic showing the involved components and what is done where?
  2. Is the Service Discovery just relevant for development (with the dashboard) or also for an in production deployed application?
  3. Where should I place the code snipptes from the documentation, in the AppHost or one of the service projects? (in some places it's specified, in others it isn't)
  4. After adding service discovery with AddHttpClient().UseServiceDiscovery(), how do I use the http client? How does it behave? Do I use it just with relative URLs? Does it do service discovery on every call (round-robin) or does it only do it once?

The YARP extension was especially confusing for me:

  1. When should I use that library? What problem does it solve?
  2. What is a "destination resolver"?
  3. In which format do I specify a destination address in YARP configuration to be resolved? Address = service-name or http://service-name
  4. Is there a minimal example that shows what it does?

I think a much better example is the Consul documentation, for example this part: https://developer.hashicorp.com/consul/docs/concepts/service-discovery

The first chapters are even named like some of my questions:

  1. What is (product name)?
  2. Why chose (product name)?
  3. Core Concepts

It starts with an overview and only then goes into details. It doesn't mention implementation details like IServiceEndPointResolverand IServiceEndPointResolverProvider already in the "How it works" section.

Redis container resource name

Type of issue

Typo

Description

is: Additionally, a Redis container resource labelled "redis" was added
should be: Additionally, a Redis container resource labelled "cache" was added

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/get-started/quickstart-build-your-first-aspire-app?tabs=visual-studio

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/get-started/quickstart-build-your-first-aspire-app.md

Document Version Independent Id

5af6bf54-9e3e-025f-e1ff-b2a550558f35

Article author

IEvangelist


Associated WorkItem - 186563

`Scope "subscription" is not valid for this resource type` following Bicep instructions in _Deploy a .NET Aspire app to Azure Container Apps_

Issue description

When following along at https://learn.microsoft.com/en-us/dotnet/aspire/deployment/azure/aca-deployment?tabs=visual-studio%2Cinstall-az-windows%2Cpowershell&pivots=azure-bicep, in the "Create the Azure Bicep provisioning files" section, the resulting bicep file causes an error in VS Code: Scope "subscription" is not valid for this resource type. Permitted scopes: "resourceGroup".bicep(BCP135) (starting with step 2).

Target framework

  • .NET Core
  • .NET Framework
  • .NET Standard
dotnet --info output or About VS info
.NET SDK:
 Version:           8.0.100
 Commit:            57efcf1350
 Workload version:  8.0.100-manifests.71b9f198

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.22631
 OS Platform: Windows
 RID:         win-x64
 Base Path:   C:\Program Files\dotnet\sdk\8.0.100\

.NET workloads installed:
 Workload version: 8.0.100-manifests.71b9f198
 [aspire]
   Installation Source: SDK 8.0.100
   Manifest Version:    8.0.0-preview.1.23557.2/8.0.100
   Manifest Path:       C:\Program Files\dotnet\sdk-manifests\8.0.100\microsoft.net.sdk.aspire\8.0.0-preview.1.23557.2\WorkloadManifest.json
   Install Type:              Msi

 [maui-windows]
   Installation Source: VS 17.8.34309.116
   Manifest Version:    8.0.3/8.0.100
   Manifest Path:       C:\Program Files\dotnet\sdk-manifests\8.0.100\microsoft.net.sdk.maui\8.0.3\WorkloadManifest.json
   Install Type:              Msi

 [ios]
   Installation Source: VS 17.8.34309.116
   Manifest Version:    17.0.8478/8.0.100
   Manifest Path:       C:\Program Files\dotnet\sdk-manifests\8.0.100\microsoft.net.sdk.ios\17.0.8478\WorkloadManifest.json
   Install Type:              Msi

 [android]
   Installation Source: VS 17.8.34309.116
   Manifest Version:    34.0.43/8.0.100
   Manifest Path:       C:\Program Files\dotnet\sdk-manifests\8.0.100\microsoft.net.sdk.android\34.0.43\WorkloadManifest.json
   Install Type:              Msi

 [maccatalyst]
   Installation Source: VS 17.8.34309.116
   Manifest Version:    17.0.8478/8.0.100
   Manifest Path:       C:\Program Files\dotnet\sdk-manifests\8.0.100\microsoft.net.sdk.maccatalyst\17.0.8478\WorkloadManifest.json
   Install Type:              Msi


Host:
  Version:      8.0.0
  Architecture: x64
  Commit:       5535e31a71

.NET SDKs installed:
  2.1.818 [C:\Program Files\dotnet\sdk]
  3.1.426 [C:\Program Files\dotnet\sdk]
  5.0.408 [C:\Program Files\dotnet\sdk]
  6.0.116 [C:\Program Files\dotnet\sdk]
  6.0.202 [C:\Program Files\dotnet\sdk]
  6.0.203 [C:\Program Files\dotnet\sdk]
  6.0.302 [C:\Program Files\dotnet\sdk]
  6.0.320 [C:\Program Files\dotnet\sdk]
  7.0.100-rc.1.22431.12 [C:\Program Files\dotnet\sdk]
  7.0.114 [C:\Program Files\dotnet\sdk]
  7.0.203 [C:\Program Files\dotnet\sdk]
  8.0.100 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.All 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.1.25 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.1.27 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 6.0.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 6.0.16 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 6.0.25 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 7.0.0-rc.1.22427.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 7.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 7.0.11 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 7.0.14 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 8.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.1.25 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.1.27 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.25 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.0-rc.1.22426.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.11 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.14 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 8.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 3.1.25 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 3.1.27 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 6.0.4 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 6.0.7 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 6.0.25 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.0-rc.1.22427.1 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.11 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.14 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 8.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
  x86   [C:\Program Files (x86)\dotnet]
    registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation]

Environment variables:
  Not set

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download

Associated WorkItem - 186560

PostgreSQL reference on SQL Server page

Type of issue

Typo

Description

Quote:

The .NET Aspire PostgreSQL component supports Microsoft.Extensions.Configuration. It loads the MicrosoftDataSqlClientSettings from configuration files such as appsettings.json by using the Aspire:SqlServer:SqlClient key.

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/database/sql-server-component?tabs=dotnet-cli

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/database/sql-server-component.md

Document Version Independent Id

712b85f1-cbae-7475-736b-c026d03da704

Article author

@IEvangelist


Associated WorkItem - 187721

[Aspire] Names vary across layers

What we doc as the orchestrator is called the "AppHost" in the project name and the "AspireHost" in msbuild.
What we doc as configuration (I think) is called "ServiceDefaults" in the project name and "AspireSharedProject" in msbuild.

[Aspire]: Add more details to the azd deployment doc

This doc needs more details on what is supported with azd and an advanced section on spitting out IaC using azd infra synth.

I would to see an explanation of what goes into azure.yaml for aspire apps.

  • A list of supported resources.
  • An explanation about what azd does
    • Interrogates the apphost for the manifest (with a link to a doc that @mitchdenny is writing)
    • Sets up service discovery information
    • Sets up connection strings.
    • Deploys infrastructure (describing what it does with managed identity etc)
    • Builds containers (explaining how it does this and how to influence it)
    • Explains the default ingress rules that we setup for ACA
    • Explains how grpc and http2 works

cc @ellismg @mitchdenny

Add FAQ questions.

These questions came in over the weekend:

โ€œI still cannot understand, what is relation between Aspire and K8S. Will Aspire just yet another way to deploy to K8S (like, fancy helm with c# instead of yaml)? Also, is Aspire dashboard created for demos, or you want to replace Grafana with it?โ€


Associated WorkItem - 186559

.NET Aspire SqlServer Entity Framework Core component documentation discrepancy

Type of issue

Typo

Description

There seems to be a difference between the Usage example for the .NET Aspire SqlServer Entity Framework Core component

Nugget documentation uses example
builder.AddSqlServerDbContext<MyDbContext>("sqldata"); found here
while learn.Microsoft documentation uses
builder.AddSqlServerEntityFrameworkDBContext<YourDbContext>(); found here

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/database/sql-server-entity-framework-component?tabs=dotnet-cli

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/database/sql-server-entity-framework-component.md

Document Version Independent Id

2cd52f56-0ee5-8f04-c2b5-fe52c7f8109f

Article author

IEvangelist

Missing step when using azd deploy: docker login

Type of issue

Missing information

Description

Hey DotNet Team,

During my exploration of Aspire, I noticed that I could not deploy the app when using azd deply:

ERROR: failed deploying service 'apiservice': failing invoking action 'deploy', logging in to registry: failed logging into docker registry MyRegistry.azurecr.io: failed logging into docker: exit code: 1, stdout: , stderr: Error response from daemon: Get "https://MyRegistry.azurecr.io/v2/": unauthorized: authentication required, visit https://aka.ms/acr/authorization for more information.

I know it is a small thing, but either add a line of text explaining that you need to do docker login MyRegistry.azurecr.io or let the azd tooling do it automatically?

Anyways - Love the idea behind Aspire and look forward to what it will bring!

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/deployment/azure/aca-deployment-azd-in-depth?tabs=windows

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/deployment/azure/aca-deployment-azd-in-depth.md

Document Version Independent Id

f8f94169-53e3-93c7-6281-bcbdfb05b757

Article author

IEvangelist


Associated WorkItem - 186554

Dashboard docs suggestions

re: https://review.learn.microsoft.com/en-us/dotnet-internal/aspire/dashboard?branch=aspire

  • Theme selection is the least important thing for people to know about. It can be put at the bottom. Modify the tip to say other screenshots were taken with the dark theme rather than following screenshots.
  • Mention near the start of the doc that the dashboard is real-time. All pages display the latest app state and logs.
  • Projects + Container pages
    • State column: Errors are displayed in the state column as a badge + error count. It's useful to quickly understand what projects/containers are reporting errors. Clicking on the badge takes you to the semantic logs for that resource with the filter at an error level. Consider updating the screenshot to show the badge. (an animation of it here)
  • Structured logs page:
    • Consider updating the screenshot with error/warning log entries to show the icon and colors to highlight these entries.
    • Also, mention structured logs filter functionality. The filter text box and "Level" dropdown are UI that people will use often. There is also more advanced filtering by clicking the icon.
  • Traces page:
    • Mention filtering functionality.
    • Spans can have an error status. An error icon is displayed next to spans that reported an error status.
  • Trace detail page:
    • Spans on the also display the error icon on the trace detail page.
    • Spans that have a type of client/consumer, but don't have a span on the server, show an arrow icon and then the destination address. This represents a client call to a system outside of the Aspire application. For example, an HTTP request an external web API, or a database call.
    • The trace detail page has a "View Logs" button to view the trace's structured logs.

cc @davidfowl @tlmii @smitpatel @IEvangelist

Typo: "http" vs "default" named endpoints in k8s example

Type of issue

Typo

Description

https://learn.microsoft.com/en-us/dotnet/aspire/service-discovery/overview#named-endpoints-in-kubernetes-using-dns-srv

In the above section, the document says a DNS SRV record being created for an endpoint named "http" and an endpoint named "dashboard". But the example actually creates endpoints named default and dashboard. The rest of the section appears to refer to the correct name - this is the only typo.

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/service-discovery/overview

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/service-discovery/overview.md

Document Version Independent Id

c250cb89-e0b4-c037-e4e0-edcec7c84eb8

Article author

IEvangelist


Associated WorkItem - 183266

Write guidance for using Entity Framework migrations with Aspire solutions

Type of issue

Missing information

Description

my AppHost program.cs:

var builder = DistributedApplication.CreateBuilder(args);

var sql = builder.AddSqlServerContainer("sql",password:"P4s$wordBuT$tr0ng",port:14420).AddDatabase("sqldata");

builder.AddProject<Projects.adminendpoint>("admin").WithReference(sql);

builder.Build().Run();

Then i want to run it but first make database from my dbcontext that used in admin endpoint.
admin endpoint program.cs is:

builder.AddSqlServerDbContext<DataBaseContext>("sqldata");
builder.Services.AddScoped<IDataBaseContext, DataBaseContext>();

and my dbcontext is :

public class DataBaseContext : DbContext, IDataBaseContext
{
    public DataBaseContext(DbContextOptions dbContextOptions):base(dbContextOptions) { }
    public DbSet<User> Users { get; set; }
    public DbSet<Role> Roles { get; set; }
    public DbSet<UserInRole> UserInRoles { get; set; }
}

So how should i use Add-Migration and Update-Database?

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/database/sql-server-entity-framework-component?tabs=dotnet-cli

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/database/sql-server-entity-framework-component.md

Document Version Independent Id

2cd52f56-0ee5-8f04-c2b5-fe52c7f8109f

Article author

IEvangelist


Associated WorkItem - 186558

.NET Aspire Docs: Go-live checklist

Before .NET Conf

Post .NET Conf

  • dotnet/aspire-samples: When this goes public, it can take up to 72 hours for samples to flow into the Browse code samples: .NET Aspire.
  • Update all .NET Aspire docs to use .NET Aspire API reference, xref within conceptual docs. This is blocked by dotnet/aspire-api-docs not being public.

Associated WorkItem - 186557

Entity Framework Migration and Persisted Volumes

Unclear How to Set up and Migrate pSQL DB w/ EntityFramework DB Contexts

Hey team, I'm trying to follow along with the docs but instead of a redis cache and 2 apps (UI and API) I'm just doing API & Postgres using Npgsql.

How does the connection string work here? I'd think it was all handled and I wouldn't have to configure a connection string for local dev (the redis setup makes no mention of a connection string). Do I need to add that to the AppHost or API's appsettings.json?

It looks like the port changes for the database container every time I restart the Aspire project. Any way to make that port static so I don't have to remember to change it each time?

Finally, it would be neat to get more details about how to manage migrations for entity framework. I assume I'd just run dotnet ef database update from the API project once I stood up the project but theres that pesky connection string issue.

I spin up the project with dotnet run --project AspireSample.AppHost and in the API project I add the connection string to appsettings.json like so "db": "Host=localhost;Port=51586;Database=postgres;User ID=postgres;Password=postgres" then in another terminal from the API project I run dotnet ef database update to kick off the migration.

Otherwise, really neat project and good docs ๐Ÿ™‚

.NET Core 8

  • .NET Core
  • .NET Framework
  • .NET Standard
.NET SDK: Version: 8.0.100 Commit: 57efcf1350 Workload version: 8.0.100-manifests.71b9f198

Runtime Environment:
OS Name: Mac OS X
OS Version: 14.1
OS Platform: Darwin
RID: osx-arm64
Base Path: /usr/local/share/dotnet/sdk/8.0.100/

.NET workloads installed:
Workload version: 8.0.100-manifests.71b9f198
[aspire]
Installation Source: SDK 8.0.100
Manifest Version: 8.0.0-preview.1.23557.2/8.0.100
Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100/microsoft.net.sdk.aspire/8.0.0-preview.1.23557.2/WorkloadManifest.json
Install Type: FileBased

Host:
Version: 8.0.0
Architecture: arm64
Commit: 5535e31a71

.NET SDKs installed:
8.0.100 [/usr/local/share/dotnet/sdk]

.NET runtimes installed:
Microsoft.NETCore.App 8.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]

Other architectures found:
x64 [/usr/local/share/dotnet/x64]
registered at [/etc/dotnet/install_location_x64]

<replace>

Associated WorkItem - 205474

[Aspire] I can't figure out what Configuration is

The Overview docs mention configuration without really explaining what that is. Is it related to IConfiguration? Is it declarative yaml/json/xml files (I don't think so)? Is it component-specific?

A couple particularly confusing bits:

Applies ServiceBusClient configurations either inline through code or through configuration

capable of flowing their configurations through dependencies

[AspireToAzure azd] Deploy a .NET Aspire app to Azure Container Apps - need some updates and unable to create AZD environment

Issue description

Using the latest Aspire bits (VS 17.9 P1 build), we tried running through the Deploy a .NET Aspire app to Azure Container Apps document. Chose 'Azure Developer CLI' option.

Some updates are needed.

Prerequisites

  • We should copy this section from the caching quickstart, which gives both the VS and CLI install options.

Install the Azure Developer CLI

  • This section occurs twice in the document. Below 'Prerequisites', it simply says that you'll learn about Azure Developer CLI. And then below 'Create the template solution' section, there is a link to the actual instructions to get azd. I think just the second Azure Developer CLI section is sufficient, or we should combine the two sections into one.

Create the template solution

  • For the text Enter a Project Name of AspireSample., the project name should be AspireToAzure instead of AspireSample because that's the name we show in the azd screenshots.

Create a new AZD Environment

  • When doing azd init, I don't see the options described in this document. I only got a prompt for the environment name and a bicep file got generated which shows that a new resource group will get created. And that's it. Am I missing something?

image

Generated main.bicep file

image

[Aspire] Dashboard section introduces new terminology without definition

The Dashboard section seems to take for granted that the preceding text will have explained what Containers and Executables are, but I don't think we actually mention containerization anywhere. At first, I thought each project was a container, but the example clarifies that projects are Projects and components like Redis get Containers. I don't know what an Executable is - all the doc says is that the sample app doesn't have any.

Endpoint looks iffy

Type of issue

Missing information

Description

The "dashboard" endpoint, resolved via http://_dashboard.basket is _dashboard.10.2.3.4:9999.

Isn't the "dashboard" endpoint simply 10.2.3.4:9999?

If my guess is wrong, then I am obviously missing something fundamental. In that case I would be ever so grateful if the article was a bit clearer on what is going on. (what happens behind the scenes and what is observed where)

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/service-discovery/overview

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/service-discovery/overview.md

Document Version Independent Id

c250cb89-e0b4-c037-e4e0-edcec7c84eb8

Article author

@IEvangelist


Associated WorkItem - 190553

Enhance Azure Storage Documentation with Azurite Integration

Type of issue

Other (describe below)

Description

Recognizing the growing importance of cloud-native solutions, this update aims to include comprehensive instructions for integrating Azurite. This inclusion will provide users with more flexibility and options in their cloud-native journey.

Motivation

  • Cloud-Native Approach: With the increasing shift towards cloud-native architectures, providing documentation that covers a wider range of cloud-compatible storage solutions aligns well with current industry trends.
  • Developer Flexibility: Including Azurite and other storage options offers developers more tools to tailor their cloud storage solutions according to their specific needs.
  • Community Engagement: By embracing open-source solutions like Azurite, we can foster a more inclusive and engaged developer community around Azure Aspire.

Proposed Changes

  1. Azurite Integration:
    • Step-by-step guide for setting up Azurite in a development environment.
    • Instructions for integrating Azurite with an Azure Storage account.
    • Sample configurations and use-cases.

Impact

This update will not only enhance the documentation's comprehensiveness but also empower developers with more choices and flexibility in their cloud-native development processes. It aligns with Azure's commitment to providing robust and adaptable cloud solutions.

Concern

While this beyond the scope of what I am look for I am interested in seeing if a aspire component is made to accomplish this and then documentation is updated, or if the following steps are taken over time.

  1. update docs to include current way of configuring azurite with or without azure storage explorer
  2. then create a aspire component to run azurite locally
  3. and then update the docs to include the aspire instructions instead of the instructions from step 1

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/storage/quickstart-azure-storage?tabs=portal

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/storage/quickstart-azure-storage.md

Document Version Independent Id

89751822-3dc3-94cb-51a1-78b78cb68cc6

Article author

IEvangelist


Associated WorkItem - 186556

For Aspire preview.2, some more updates are needed to the setup instructions using VS / CLI with aspire

Issue description
In the .NET Aspire setup and tooling doc, we need to make some more updates to the instructions for Preview 2.

Setup using CLI

  • During validation, we have been doing dotnet workload update first and then run dotnet workload install aspire. But the documentation asks users to run dotnet workload install aspire first and then run dotnet workload update.

Setup using VS

  • In the VS installer steps, after the step Modify to install the .NET Aspire component, we should additionally ask the user to run dotnet workload update and dotnet workload install aspire from a Command prompt. With VS 17.9 Preview 2, the installer will continue to include only the preview.1 version of aspire. So, users need to use the CLI to get the latest preview.2 version of aspire.

  • In the Add orchestration projects section, the screenshot of the Add .NET Aspire Orchestrator Support dialog needs to be updated. The Framework dropdown in this dialog has been removed in preview.2.

  • Couple of screenshots need to be updated

    • Aspire Sample Dashboard screenshot should be updated. With preview.2, the Projects, Containers and Executables tabs are combined into one section.
    • [Minor nit] In NuGet Package manager for Add Aspire Component, the packages show preview.1 instead of preview.2. I'm not sure if we plan to keep updating this screenshot for each preview.

Refers to Visual Studio 2022 version 17.9 as a pre-requisite which isn't even out yet

Type of issue

Typo

Description

Hello,

As of 14 Nov 2024, on this page: https://learn.microsoft.com/en-au/dotnet/aspire/get-started/quickstart-build-your-first-aspire-app?tabs=visual-studio it refers to Visual Studio 2022 version 17.9 or higher (Optional) as a pre-requisite, but the latest version of VS as of 14 Nov 2023 is 17.8, not 17.9.

It's under the Pre-requisite section: https://learn.microsoft.com/en-au/dotnet/aspire/get-started/quickstart-build-your-first-aspire-app?tabs=visual-studio#prerequisites

Page URL

https://learn.microsoft.com/en-au/dotnet/aspire/get-started/quickstart-build-your-first-aspire-app?tabs=visual-studio

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/get-started/quickstart-build-your-first-aspire-app.md

Document Version Independent Id

5af6bf54-9e3e-025f-e1ff-b2a550558f35

Article author

IEvangelist

ERROR: only a single Aspire project is supported at this time

Type of issue

Other (describe below)

Description

Attempting to follow the documentation after installing the starter kit and running azd init, there is an error that only a single project is supported.

Additionally, the documentation said nothing about needing powershell 7.4 installed but in my case I had to update from 7.2 to 7.4 or the azd command was not found.
image

Page URL

https://learn.microsoft.com/en-us/dotnet/aspire/deployment/azure/aca-deployment?tabs=visual-studio%2Cinstall-az-windows%2Cpowershell

Content source URL

https://github.com/dotnet/docs-aspire/blob/main/docs/deployment/azure/aca-deployment.md

Document Version Independent Id

1362fc62-686d-2b3f-c139-7725fc8dca5f

Article author

@IEvangelist


Associated WorkItem - 190284

.NET Aspire API docs

We need .NET Aspire API docs for the following packages of version: 8.0.0-preview.1.23557.2:

  • Aspire.Azure.Data.Tables
  • Aspire.Azure.Messaging.ServiceBus
  • Aspire.Azure.Security.KeyVault
  • Aspire.Azure.Storage.Blobs
  • Aspire.Azure.Storage.Queues
  • Aspire.Hosting
  • Aspire.Hosting.Azure
  • Aspire.Hosting.Azure.Provisioning
  • Aspire.Hosting.Dapr
  • Aspire.Microsoft.Azure.Cosmos
  • Aspire.Microsoft.Data.SqlClient
  • Aspire.Microsoft.EntityFrameworkCore.Cosmos
  • Aspire.Microsoft.EntityFrameworkCore.SqlServer
  • Aspire.Npgsql
  • Aspire.Npgsql.EntityFrameworkCore.PostgreSQL
  • Aspire.RabbitMQ.Client
  • Aspire.StackExchange.Redis
  • Aspire.StackExchange.Redis.DistributedCaching
  • Aspire.StackExchange.Redis.OutputCaching
  • Microsoft.Extensions.ServiceDiscovery
  • Microsoft.Extensions.ServiceDiscovery.Abstractions
  • Microsoft.Extensions.ServiceDiscovery.Dns
  • Microsoft.Extensions.ServiceDiscovery.Yarp

Associated WorkItem - 183267

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.