Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/apply-test-attributes.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ jobs:
)
runs-on: ubuntu-latest
timeout-minutes: 10
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
permissions:
contents: write
issues: write
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/build-cli-native-archives.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ jobs:
# CLI's IdentityChannelReader can return the channel verbatim, with no
# separate parse of the version suffix at runtime.
env:
NUGET_PACKAGES: ${{ matrix.targets.os == 'ubuntu-latest' && '/mnt/nuget/packages' || format('{0}/.nuget/packages', github.workspace) }}
Comment thread
Copilot marked this conversation as resolved.
Resolved
ASPIRE_CLI_CHANNEL: ${{ github.event_name == 'pull_request' && format('pr-{0}', github.event.pull_request.number) || (startsWith(github.ref, 'refs/heads/release/') || startsWith(github.ref, 'refs/heads/internal/release/')) && 'staging' || github.ref == 'refs/heads/main' && 'local' || 'daily' }}

steps:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/build-packages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ jobs:
build_packages:
name: Build packages
runs-on: 8-core-ubuntu-latest
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
steps:
- name: Checkout code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,8 @@ jobs:
runs-on: 8-core-ubuntu-latest
needs: [prepare_for_ci]
if: ${{ github.repository_owner == 'microsoft' && needs.prepare_for_ci.outputs.skip_workflow != 'true' }}
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
steps:
# The actual stabilization work only makes sense for pull_request events. On push
# (including push to release branches with StabilizePackageVersion=true) the build is
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/cli-starter-validation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ jobs:
# collection, and artifact upload. Keep the job timeout above that aggregate budget.
timeout-minutes: 45
env:
NUGET_PACKAGES: ${{ contains(inputs.runner, 'ubuntu') && '/mnt/nuget/packages' || format('{0}/.nuget/packages', github.workspace) }}
Comment thread
Copilot marked this conversation as resolved.
Resolved
GH_TOKEN: ${{ github.token }}
steps:
- name: Checkout PR head
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/copilot-setup-steps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ jobs:
# The job MUST be called `copilot-setup-steps` or it will not be picked up by Copilot.
copilot-setup-steps:
runs-on: ${{ github.repository_owner == 'microsoft' && '8-core-ubuntu-latest' || 'ubuntu-latest' }}
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved

permissions:
contents: read
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/create-failing-test-issue.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,8 @@ jobs:
startsWith(github.event.comment.body, '/create-issue'))
runs-on: ubuntu-latest
timeout-minutes: 15
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
permissions:
contents: read # checkout repository
issues: write # create/reopen/comment on issues
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/deployment-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,8 @@ jobs:
if: ${{ github.repository_owner == 'microsoft' }}
permissions:
contents: read
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

Expand Down Expand Up @@ -458,6 +460,7 @@ jobs:
fail-fast: false
matrix: ${{ fromJson(needs.enumerate.outputs.matrix) }}
env:
NUGET_PACKAGES: /mnt/nuget/packages
ASPIRE_DEPLOYMENT_TEST_SUBSCRIPTION: ${{ secrets.AZURE_DEPLOYMENT_TEST_SUBSCRIPTION_ID }}
ASPIRE_DEPLOYMENT_TEST_RG_PREFIX: ${{ vars.ASPIRE_DEPLOYMENT_TEST_RG_PREFIX || 'aspire-e2e' }}
# Sandboxes remain an explicit opt-in until the deployment-testing environment has
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/extension-e2e-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ jobs:
# application under a debugger, so it needs more than the shared budget.
timeout-minutes: ${{ matrix.timeoutMinutes || 75 }}
env:
NUGET_PACKAGES: ${{ matrix.name == 'Linux' && '/mnt/nuget/packages' || format('{0}/.nuget/packages', github.workspace) }}
Comment thread
Copilot marked this conversation as resolved.
Resolved
NPM_REGISTRY: https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/
COREPACK_ENABLE_DOWNLOAD_PROMPT: 0
strategy:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/generate-api-diffs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ jobs:
generate-and-pr:
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'microsoft' }}
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
strategy:
fail-fast: false
matrix:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/generate-ats-diffs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ jobs:
generate-and-pr:
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'microsoft' }}
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
strategy:
fail-fast: false
matrix:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/native-dashboard-validation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ jobs:
if: ${{ inputs.rid == 'win-x64' }}
shell: pwsh
env:
NUGET_PACKAGES: ${{ github.workspace }}/.packages
NUGET_PACKAGES: ${{ format('{0}/.nuget/packages', github.workspace) }}
run: >
./dotnet.cmd test
--project tests/Aspire.Dashboard.Tests/Aspire.Dashboard.Tests.csproj
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/prepare-installer-artifacts.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ jobs:
prepare_installer_artifacts:
name: Prepare ${{ inputs.installer == 'winget' && 'WinGet manifests' || 'Homebrew cask' }}
runs-on: ${{ inputs.installer == 'winget' && 'windows-latest' || 'macos-latest' }}
env:
NUGET_PACKAGES: ${{ format('{0}/.nuget/packages', github.workspace) }}
steps:
- name: Checkout code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/refresh-manifests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ jobs:
generate-and-pr:
runs-on: windows-latest # Using Windows because the script uses PowerShell and build.cmd
if: ${{ github.repository_owner == 'microsoft' }}
env:
NUGET_PACKAGES: ${{ format('{0}/.nuget/packages', github.workspace) }}
Comment thread
sebastienros marked this conversation as resolved.
Resolved
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/reproduce-flaky-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,7 @@ jobs:
matrix: ${{ fromJson(needs.setup.outputs.matrix) }}
env:
DOTNET_ROOT: ${{ github.workspace }}/.dotnet
NUGET_PACKAGES: ${{ contains(matrix.os, 'ubuntu') && '/mnt/nuget/packages' || format('{0}/.nuget/packages', github.workspace) }}
Comment thread
Copilot marked this conversation as resolved.
Resolved

steps:
- name: Setup vars (Linux/macOS)
Expand Down Expand Up @@ -248,7 +249,6 @@ jobs:
if: runner.os != 'Windows'
env:
ASPIRE__TEST__DCPLOGBASEPATH: ${{ github.workspace }}/testresults/dcp
NUGET_PACKAGES: ${{ github.workspace }}/.packages
TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX: 'netaspireci.azurecr.io'
# Skip default quarantine/outerloop exclusion filters so the target test can run
SkipDefaultTestFilters: true
Expand Down Expand Up @@ -317,7 +317,6 @@ jobs:
shell: pwsh
env:
ASPIRE__TEST__DCPLOGBASEPATH: ${{ github.workspace }}/testresults/dcp
NUGET_PACKAGES: ${{ github.workspace }}/.packages
TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX: 'netaspireci.azurecr.io'
# Skip default quarantine/outerloop exclusion filters so the target test can run
SkipDefaultTestFilters: true
Expand Down
8 changes: 1 addition & 7 deletions .github/workflows/run-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ jobs:
name: ${{ inputs.testShortName }} (${{ inputs.os }})
env:
DOTNET_ROOT: ${{ github.workspace }}/.dotnet
NUGET_PACKAGES: ${{ contains(inputs.os, 'ubuntu') && '/mnt/nuget/packages' || format('{0}/.nuget/packages', github.workspace) }}
Comment thread
Copilot marked this conversation as resolved.
Resolved
# Disable MSBuild terminal logger via env var instead of -tl:false on the command line.
# In MTP native runner mode, -tl:false is forwarded to the test host which doesn't recognize it.
MSBUILDTERMINALLOGGER: "false"
Expand Down Expand Up @@ -398,7 +399,6 @@ jobs:
env:
ASPIRE__TEST__DCPLOGBASEPATH: ${{ github.workspace }}/testresults/dcp
BUILT_NUGETS_PATH: ${{ github.workspace }}/artifacts/packages/Debug/Shipping
NUGET_PACKAGES: ${{ github.workspace }}/nuget-cache
PLAYWRIGHT_INSTALLED: ${{ fromJson(inputs.properties).enablePlaywrightInstall != true && 'false' || 'true' }}
TEST_LOG_PATH: ${{ github.workspace }}/artifacts/log/test-logs
TestsRunningOutsideOfRepo: true
Expand Down Expand Up @@ -452,7 +452,6 @@ jobs:
env:
ASPIRE__TEST__DCPLOGBASEPATH: ${{ github.workspace }}/testresults/dcp
BUILT_NUGETS_PATH: ${{ github.workspace }}/artifacts/packages/Debug/Shipping
NUGET_PACKAGES: ${{ github.workspace }}/nuget-cache
PLAYWRIGHT_INSTALLED: ${{ fromJson(inputs.properties).enablePlaywrightInstall != true && 'false' || 'true' }}
TEST_LOG_PATH: ${{ github.workspace }}/artifacts/log/test-logs
TestsRunningOutsideOfRepo: true
Expand Down Expand Up @@ -514,10 +513,6 @@ jobs:
id: run-tests-unix
env:
ASPIRE__TEST__DCPLOGBASEPATH: ${{ github.workspace }}/testresults/dcp
# During restore and build, we use -ci, which causes NUGET_PACKAGES to point to a local cache (Arcade behavior).
# In this step, we are not using Arcade, but want to make sure that MSBuild is able to evaluate correctly.
# So, we manually set NUGET_PACKAGES
NUGET_PACKAGES: ${{ github.workspace }}/.packages
PLAYWRIGHT_INSTALLED: ${{ fromJson(inputs.properties).enablePlaywrightInstall != true && 'false' || 'true' }}
TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX: 'netaspireci.azurecr.io'
# CLI E2E Dockerfiles consume this as a build arg to avoid overloaded default Ubuntu package servers.
Expand Down Expand Up @@ -580,7 +575,6 @@ jobs:
shell: pwsh
env:
ASPIRE__TEST__DCPLOGBASEPATH: ${{ github.workspace }}/testresults/dcp
NUGET_PACKAGES: ${{ github.workspace }}/.packages
PLAYWRIGHT_INSTALLED: ${{ fromJson(inputs.properties).enablePlaywrightInstall != true && 'false' || 'true' }}
TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX: 'netaspireci.azurecr.io'
# Prevent the Roslyn compiler server (VBCSCompiler) from starting during tests.
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/specialized-test-runner.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ jobs:
name: Generate test runsheet
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'microsoft' }}
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
outputs:
runsheet: ${{ steps.inject_properties.outputs.runsheet }}
requiresNugets: ${{ steps.check_nugets.outputs.requiresNugets }}
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/tests-daily-smoke.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ jobs:
needs: build_cli_e2e_image
runs-on: ubuntu-latest
timeout-minutes: 30
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved

steps:
- name: Checkout
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/tests-outerloop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@ jobs:
needs: [outerloop_tests]
if: ${{ failure() && github.event_name == 'schedule' && github.repository_owner == 'microsoft' }}
runs-on: ubuntu-latest
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
permissions:
contents: read # checkout to require the local .js modules
actions: read
Expand Down Expand Up @@ -114,4 +116,3 @@ jobs:
script: |
const reporter = require('./.github/workflows/report-specialized-test-failures.js');
await require('./.github/workflows/specialized-test-failure-runner.js')({ github, context, core, reporter });

1 change: 1 addition & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ jobs:
permissions:
contents: read
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
# Single source of truth for the selection-summary path: passed to the select-tests action
# (so it writes here) and reused by the upload step below (so it uploads the same file).
# Mirrors the action's own default; keeping it here lets one value drive both the write and
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/typescript-api-compat.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ jobs:
name: TypeScript API Compatibility
if: ${{ github.event_name == 'pull_request' }}
runs-on: ubuntu-latest
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
steps:
- name: Checkout code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/update-ai-foundry-models.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ jobs:
generate-and-pr:
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'microsoft' }}
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/update-aspire-skills-bundle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ jobs:
update-and-pr:
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'microsoft' }}
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/update-dependencies.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ jobs:
update-dependencies:
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'microsoft' }}
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/validate-agentic-workflows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ jobs:
validate:
name: Compile, lint, and test agentic workflows
runs-on: ubuntu-latest
env:
NUGET_PACKAGES: /mnt/nuget/packages
Comment thread
Copilot marked this conversation as resolved.
Resolved

steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
Expand Down
5 changes: 5 additions & 0 deletions docs/ci/TestingOnCI.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,11 @@ The CI test infrastructure uses a unified matrix generation system that:

For how MTP diagnostic arguments (hang dump, crash dump, etc.) flow through this pipeline, see [MTP Args Pipeline](mtp-args-pipeline.md).

GitHub Actions scripts that restore or consume NuGet packages use
`/mnt/nuget/packages` on Linux and `${{ github.workspace }}/.nuget/packages` on
Windows/macOS. Set `NUGET_PACKAGES` at job scope when restore, build, and test
steps share the cache, or at step scope when only that step uses NuGet.
Comment thread
Copilot marked this conversation as resolved.
Resolved

## Architecture

```text
Expand Down
Loading