Add developer certificate setup guide and install-flow cross-links - #1164
Add developer certificate setup guide and install-flow cross-links#1164David Pine (IEvangelist) with Copilot wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
Pull request overview
Adds a new “Set up development certificates” get-started page and wires it into existing onboarding flows so readers can find certificate trust/setup guidance from install and template docs.
Changes:
- Added a new
/get-started/developer-certificates/documentation page covering Aspire CLI certificate trust commands and thedotnet dev-certsworkflow. - Linked the new page from the CLI install page “See also” section.
- Updated the SDK templates get-started doc to point to the consolidated certificate guidance page.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| src/frontend/src/content/docs/get-started/install-cli.mdx | Adds a “See also” link to the new developer certificates page. |
| src/frontend/src/content/docs/get-started/developer-certificates.mdx | Introduces the new consolidated developer certificates setup guide. |
| src/frontend/src/content/docs/get-started/aspire-sdk-templates.mdx | Replaces external certificate troubleshooting links with a pointer to the new consolidated page. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| When you run either of these commands, Aspire ensures a development certificate exists and is trusted: | ||
|
|
||
| ```bash title="Aspire CLI" | ||
| aspire run | ||
| ``` |
Adam Ratzman (adamint)
left a comment
There was a problem hiding this comment.
I found several cross-platform certificate issues that I think need to be fixed before merge: trust is skipped in non-interactive environments, Linux browser and OpenSSL trust require different setup, clean removes all development certificates, the new page duplicates the canonical certificate page and is not in the sidebar, and one troubleshooting link is dead. I verified the command/help surface and a read-only certificate check on macOS; Windows and Linux end-to-end proof was not available.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Frontend HTML artifact readyThe latest frontend build uploaded the This comment updates automatically when a new frontend build artifact is uploaded. |
| const horizontalWhitespace = String.raw`[ \t]+`; | ||
|
|
||
| // A deprecated term only matches when it isn't fused to an adjacent alphanumeric | ||
| // character, so longer tokens like `ASP.NET Aspire` or `.NET AspireX` stay intact |
There was a problem hiding this comment.
Use "Aspire" instead of ".NET Aspire".
| // character, so longer tokens like `ASP.NET Aspire` or `.NET AspireX` stay intact | |
| // character, so longer tokens like `ASPAspire` or `AspireX` stay intact |
| const termEnd = String.raw`(?![A-Za-z0-9])`; | ||
|
|
||
| // Markdown emphasis/link openers can sit between an article and a term in raw | ||
| // README content (e.g. `a **.NET Aspire**`, `a [.NET Aspire](url)`, or |
There was a problem hiding this comment.
Use "Aspire" instead of ".NET Aspire".
| // README content (e.g. `a **.NET Aspire**`, `a [.NET Aspire](url)`, or | |
| // README content (e.g. `a **Aspire**`, `a [Aspire](url)`, or |
|
|
||
| // Markdown emphasis/link openers can sit between an article and a term in raw | ||
| // README content (e.g. `a **.NET Aspire**`, `a [.NET Aspire](url)`, or | ||
| // `a _.NET Aspire_`), so the article corrector consumes them to stay grammatical |
There was a problem hiding this comment.
Use "Aspire" instead of ".NET Aspire".
| // `a _.NET Aspire_`), so the article corrector consumes them to stay grammatical | |
| // `a _Aspire_`), so the article corrector consumes them to stay grammatical |
| const markdownOpeners = String.raw`[*\[_]*`; | ||
|
|
||
| // Fenced code blocks and inline code spans are copied through verbatim so sample | ||
| // commands like `dotnet aspire run` are never rewritten into an unrunnable |
There was a problem hiding this comment.
Use "Aspire" instead of "dotnet aspire".
| // commands like `dotnet aspire run` are never rewritten into an unrunnable | |
| // commands like `Aspire run` are never rewritten into an unrunnable |
| * Case-insensitive regex source matching the deprecated term core, without | ||
| * boundaries. Use `${horizontalWhitespace}` for internal spaces; alphanumeric | ||
| * boundaries are applied automatically so a rule can never corrupt a longer | ||
| * token like `ASP.NET Aspire` or `.NET AspireX`. |
There was a problem hiding this comment.
Use "Aspire" instead of ".NET Aspire".
| * token like `ASP.NET Aspire` or `.NET AspireX`. | |
| * token like `ASPAspire` or `AspireX`. |
| /** | ||
| * Indefinite article the replacement should take. Set this only when the | ||
| * replacement's leading sound differs from the term's, so a preceding `a`/`an` | ||
| * is corrected (e.g. `a .NET Aspire` -> `an Aspire`). |
There was a problem hiding this comment.
Use "Aspire" instead of ".NET Aspire".
| * is corrected (e.g. `a .NET Aspire` -> `an Aspire`). | |
| * is corrected (e.g. `a Aspire` -> `an Aspire`). |
| seoTitle: Bun integration for Aspire AppHost (Community Toolkit) | ||
| description: Learn how to use the Aspire Community Toolkit Bun hosting integration to orchestrate Bun applications alongside other resources in the Aspire app host. | ||
| seoTitle: Bun integration for Aspire AppHost | ||
| description: Learn how to use the Aspire.Hosting.JavaScript Bun hosting APIs to orchestrate Bun applications alongside other resources in the Aspire app host. |
There was a problem hiding this comment.
Use "AppHost" instead of "app host".
| description: Learn how to use the Aspire.Hosting.JavaScript Bun hosting APIs to orchestrate Bun applications alongside other resources in the Aspire app host. | |
| description: Learn how to use the Aspire.Hosting.JavaScript Bun hosting APIs to orchestrate Bun applications alongside other resources in the Aspire AppHost. |
| ['uppercase article', `A ${legacyDotnetAspireName} sample`, 'An Aspire sample'], | ||
| ['lowercase article', `Build a ${legacyDotnetAspireName} sample`, 'Build an Aspire sample'], | ||
| ['no article', `Deploy the ${legacyDotnetAspireName} app`, 'Deploy the Aspire app'], | ||
| ])('normalizes the "dotnet aspire" spelling (%s)', (_scenario, input, expected) => { |
There was a problem hiding this comment.
Use "Aspire" instead of "dotnet aspire".
| ])('normalizes the "dotnet aspire" spelling (%s)', (_scenario, input, expected) => { | |
| ])('normalizes the "Aspire" spelling (%s)', (_scenario, input, expected) => { |
| test('normalizes prose while preserving adjacent code', () => { | ||
| const input = `Build a ${legacyAspireName} app, then run \`${legacyDotnetAspireName} run\`.`; | ||
| expect(normalizeAspireTerminology(input)).toBe( | ||
| 'Build an Aspire app, then run `dotnet aspire run`.' |
There was a problem hiding this comment.
Use "Aspire" instead of "dotnet aspire".
| 'Build an Aspire app, then run `dotnet aspire run`.' | |
| 'Build an Aspire app, then run `Aspire run`.' |
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
e55ad5e to
2899f68
Compare
This PR adds a dedicated Aspire docs page for development certificate setup and links it from install/get-started flows. It covers the new CLI trust behavior for polyglot apps (
aspire run/aspire start) and the .NET-specificdotnet dev-certspath.New get-started documentation
/get-started/developer-certificates/with:aspire runandaspire startaspire certs trust,aspire certs clean)dotnet dev-certs https --trust/--cleanguidanceInstall-flow cross-links
get-started/install-cli.mdxto include the new page in See alsoget-started/aspire-sdk-templates.mdxcert guidance to point to the new consolidated pageRedirect follow-up
https://aka.ms/aspire/devcertsto redirect to/get-started/developer-certificates/