Skip to content

Test: Multi-service scaffolding CI validation (Contoso, AppLink, Discovery)#57914

Closed
haiyuazhang wants to merge 1 commit intomainfrom
haiyzhan/test-scaffolding-multi-service
Closed

Test: Multi-service scaffolding CI validation (Contoso, AppLink, Discovery)#57914
haiyuazhang wants to merge 1 commit intomainfrom
haiyzhan/test-scaffolding-multi-service

Conversation

@haiyuazhang
Copy link
Copy Markdown
Member

🧪 Test PR — Multi-Service Scaffolding CI Validation

⚠️ Do not merge — this PR will be closed after CI validation.

Purpose

This PR validates that the scaffolding automation from #57875 works correctly across 3 different brand-new management-plane TypeSpec SDKs, using the same spec commits as their respective AutoPRs.

Services Tested

Service Package Spec Commit AutoPR Files Gen Result
Contoso Azure.ResourceManager.Contoso a3fd1efe #57746 54 ✅ Build succeeded
AppLink Azure.ResourceManager.AppLink 5bdcbdbb #57404 115 ⚠️ Build error in generated code (CS0102 duplicate member — emitter bug, not scaffolding)
Discovery Azure.ResourceManager.Discovery 74cc90c4 #56854 249 ✅ Build succeeded

How this PR was generated

For each service, an input JSON was created simulating an AutoPR trigger, then Invoke-GenerateAndBuildV2.ps1 was run with the scaffolding changes from #57875:

tsp-client init
  → Emitter generated src/Generated/ code, .csproj, .sln, metadata.json, tsp-location.yaml
  ↓
New-MgmtPackageScaffolding()        ← NEW from #57875
  → Created ci.mgmt.yml, Directory.Build.props, README.md, CHANGELOG.md,
    AssemblyInfo.cs, test project, test base/environment classes
  ↓
GeneratePackage() with gate removed  ← CHANGED in #57875
  → dotnet build → dotnet pack → Export-API.ps1

What this validates

  • ✅ Scaffolding works for services with different naming patterns (single word, compound word, multi-word)
  • ✅ Template placeholder substitution handles all variants correctly
  • ✅ CI configuration (ci.mgmt.yml) is generated at the right path for each service
  • ✅ Build/pack/API export pipeline runs for mgmt packages (previously skipped)
  • ✅ AppLink's generated code build error doesn't block the pipeline (result override works)

Related PRs

  • #57875 — Scaffolding automation script changes
  • #57873 — Single-service test (HorizonDb)

Generated using Invoke-GenerateAndBuildV2.ps1 with scaffolding from #57875.
Tests 3 brand-new mgmt TypeSpec SDKs using same spec commits as their AutoPRs:
- Azure.ResourceManager.Contoso (spec commit a3fd1efe, AutoPR #57746)
- Azure.ResourceManager.AppLink (spec commit 5bdcbdbb, AutoPR #57404)
- Azure.ResourceManager.Discovery (spec commit 74cc90c, AutoPR #56854)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions github-actions Bot added the Mgmt This issue is related to a management package. label Apr 8, 2026
@haiyuazhang haiyuazhang closed this Apr 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Mgmt This issue is related to a management package.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant