Store polyglot artifacts under the workspace .aspire folder#15991
Store polyglot artifacts under the workspace .aspire folder#15991IEvangelist wants to merge 6 commits intomicrosoft:mainfrom
Conversation
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 15991Or
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 15991" |
|
Re-running the failed jobs in the CI workflow for this pull request because 1 job was identified as retry-safe transient failures in the CI run attempt.
|
Move prebuilt AppHost staging and bundled restore output into the workspace-local .aspire directory, add default .gitignore coverage for generated polyglot projects, and cover the behavior with CLI tests. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Use OS-neutral path composition in TemplateGitIgnoreTests so the starter template .gitignore assertions work on Ubuntu runners as well as Windows. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Root the generated .aspire ignore entry at /.aspire/, merge it into an existing root .gitignore instead of overwriting it, and fail scaffolding when other returned files already exist. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep the project-root .gitignore behavior and safe merge logic, but revert the generated ignore entry itself back to .aspire/ to match the intended template output. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Flow an explicit temporary nuget.config into bundle restore for explicit channels and include source URLs in the bundle restore cache hash so staging restores stay isolated under the workspace .aspire directory. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
6175cbc to
39ed7ee
Compare
|
Re-running the failed jobs in the CI workflow for this pull request because 2 jobs were identified as retry-safe transient failures in the CI run attempt.
|
Treat an existing root package.json as mergeable scaffold output so TypeScript brownfield init can augment existing repos after the rebase without tripping the no-overwrite guard. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Summary
aspire.config.json(or legacy.aspire/settings.json) and store workspace-scoped CLI artifacts under<workspace>/.aspire/..., including bundled restore output and prebuilt AppHost stagingnuget.configinto bundle restore for explicit channels and make the restore cache source-aware so same-version packages from different feeds no longer collide under the workspace.aspirerestore cache.gitignoreentry for.aspire/to generated TypeScript, Python, and Java projects so the new workspace-local artifact folder stays untracked by default.gitignorewhen scaffolding a polyglot AppHost by appending missing ignore entries instead of overwriting the file, and fail scaffolding if any other returned project files already existFixes #15967.
Addresses #15399.
Testing