Skip to content

Commit 90e6dae

Browse files
davidfowlCopilot
andcommitted
Refine deployment docs and CI/CD guidance
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent b6f2fb2 commit 90e6dae

File tree

7 files changed

+457
-245
lines changed

7 files changed

+457
-245
lines changed

.github/skills/doc-writer/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -347,11 +347,11 @@ For client/library packages:
347347

348348
## AppHost Language Parity (C# and TypeScript)
349349

350-
Aspire supports both **C# AppHosts** (`AppHost.cs`) and **TypeScript AppHosts** (`apphost.ts`). Documentation must treat both languages as first-class citizens. Never write AppHost or hosting-integration documentation with a C#-only bias.
350+
Aspire supports both **C# AppHosts** (`AppHost.cs`) and **TypeScript AppHosts** (`apphost.ts`). Documentation must treat both languages as first-class citizens. **Always show both C# and TypeScript code samples for AppHost code unless the feature is genuinely language-specific or TypeScript support does not exist yet.** Never write AppHost or hosting-integration documentation with a C#-only bias.
351351

352352
### Core Principles
353353

354-
1. **Always show both languages**: Every AppHost-focused example or walkthrough must include both C# and TypeScript variants unless the feature is genuinely language-specific.
354+
1. **Always show both languages**: Every AppHost-focused example, walkthrough, and AppHost code sample must include both C# and TypeScript variants unless the feature is genuinely language-specific.
355355
2. **Use neutral framing**: Write prose that applies to both languages. Say "In your AppHost" not "In your C# project". Say "Add a Redis resource" not "Call `builder.AddRedis()`".
356356
3. **Neither language is the default**: Don't present C# first as the "real" example and TypeScript as an afterthought. Both tabs are equal peers.
357357
4. **Verify TypeScript APIs exist**: Before writing a TypeScript example, confirm the API exists in the TypeScript AppHost SDK. Do not invent TypeScript samples — if you are unsure whether an API is available, flag it for review.

src/frontend/config/sidebar/deployment.topics.ts

Lines changed: 38 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -68,57 +68,55 @@ export const deploymentTopics: StarlightSidebarTopicsUserConfig = {
6868
slug: 'deployment/environments',
6969
},
7070
{
71-
label: 'Pipelines (aspire do)',
72-
slug: 'deployment/pipelines',
71+
label: 'Pipelines',
72+
collapsed: false,
73+
items: [
74+
{
75+
label: 'Overview',
76+
slug: 'deployment/pipelines',
77+
},
78+
{
79+
label: 'Custom deployment pipelines',
80+
slug: 'deployment/custom-deployments',
81+
},
82+
{
83+
label: 'Deployment state caching',
84+
slug: 'deployment/deployment-state-caching',
85+
},
86+
],
87+
},
88+
{
89+
label: 'CI/CD',
90+
collapsed: false,
91+
items: [
92+
{
93+
label: 'Overview',
94+
slug: 'deployment/ci-cd',
95+
},
96+
{
97+
label: 'Example app lifecycle workflow',
98+
slug: 'deployment/app-lifecycle',
99+
},
100+
],
101+
},
102+
{
103+
label: 'JavaScript apps',
104+
slug: 'deployment/javascript-apps',
73105
},
74106
{
75-
label: 'Deploy to Docker Compose',
107+
label: 'Docker Compose',
76108
slug: 'deployment/docker-compose',
77109
},
78110
{
79-
label: 'Deploy to Kubernetes',
111+
label: 'Kubernetes',
80112
slug: 'deployment/kubernetes',
81113
},
82114
{
83-
label: 'Deploy to Azure',
115+
label: 'Azure',
84116
collapsed: false,
85-
translations: {
86-
da: 'Udrul til Azure',
87-
de: 'In Azure bereitstellen',
88-
en: 'Deploy to Azure',
89-
es: 'Desplegar en Azure',
90-
fr: 'Déployer sur Azure',
91-
hi: 'Azure पर तैनात करें',
92-
id: 'Deploy ke Azure',
93-
it: 'Distribuisci in Azure',
94-
ja: 'Azure にデプロイ',
95-
ko: 'Azure에 배포',
96-
'pt-BR': 'Implantar no Azure',
97-
ru: 'Развертывание в Azure',
98-
tr: "Azure'a dağıt",
99-
uk: 'Розгортання в Azure',
100-
'zh-CN': '部署到 Azure',
101-
},
102117
items: [
103118
{
104-
label: 'Deploy using the Aspire CLI',
105-
translations: {
106-
da: 'Udrul ved hjælp af Aspire CLI',
107-
de: 'Bereitstellen mit der Aspire CLI',
108-
en: 'Deploy using the Aspire CLI',
109-
es: 'Desplegar usando la CLI de Aspire',
110-
fr: "Déployer à l'aide de la CLI Aspire",
111-
hi: 'Aspire CLI का उपयोग करके तैनात करें',
112-
id: 'Deploy menggunakan Aspire CLI',
113-
it: 'Distribuisci usando Aspire CLI',
114-
ja: 'Aspire CLI を使用したデプロイ',
115-
ko: 'Aspire CLI를 사용하여 배포',
116-
'pt-BR': 'Implantar usando a CLI do Aspire',
117-
ru: 'Развертывание с помощью Aspire CLI',
118-
tr: 'Aspire CLI kullanarak dağıt',
119-
uk: 'Розгортання за допомогою Aspire CLI',
120-
'zh-CN': '使用 Aspire CLI 部署',
121-
},
119+
label: 'Aspire CLI',
122120
slug: 'deployment/azure/aca-deployment-aspire-cli',
123121
},
124122
{
@@ -162,27 +160,5 @@ export const deploymentTopics: StarlightSidebarTopicsUserConfig = {
162160
},
163161
],
164162
},
165-
{
166-
label: 'Deploy JavaScript apps',
167-
slug: 'deployment/javascript-apps',
168-
},
169-
{
170-
label: 'App lifecycle (CI/CD)',
171-
slug: 'deployment/app-lifecycle',
172-
},
173-
{
174-
label: 'Advanced',
175-
collapsed: true,
176-
items: [
177-
{
178-
label: 'Deployment state caching',
179-
slug: 'deployment/deployment-state-caching',
180-
},
181-
{
182-
label: 'Custom deployment pipelines',
183-
slug: 'deployment/custom-deployments',
184-
},
185-
],
186-
},
187163
],
188164
};

0 commit comments

Comments
 (0)