Skip to content

Conversation

@dibarbet
Copy link
Member

@dibarbet dibarbet commented Nov 13, 2025

misc improvements to make debugging easier and improve install

  1. allow machine retention on dartlab for remoting
  2. copy install logs to artifacts
  3. ensure the vsix install only goes to the specified VS instance

@dibarbet dibarbet requested a review from a team as a code owner November 13, 2025 19:10
@dibarbet dibarbet force-pushed the dartlab_improvements branch from db0e004 to a441ad3 Compare November 13, 2025 19:12
$hive = "RoslynDev"
Write-Host "Using VS Instance $vsId ($displayVersion) at `"$vsDir`""
$baseArgs = "/rootSuffix:$hive /quiet /shutdownprocesses"
try {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hide whitespace changes

@dibarbet dibarbet force-pushed the dartlab_improvements branch from a441ad3 to 0c384bb Compare November 13, 2025 19:13
@dibarbet dibarbet enabled auto-merge (squash) November 13, 2025 21:13
Comment on lines +524 to +526
$activityLogPath = Join-Path ${env:USERPROFILE} "AppData\Roaming\Microsoft\VisualStudio\$vsMajorVersion.0_$($vsId)$hive\ActivityLog.xml"
$devenvExeConfig = Join-Path ${env:USERPROFILE} "AppData\Local\Microsoft\VisualStudio\$vsMajorVersion.0_$($vsId)$hive\devenv.exe.config"
$mefErrors = Join-Path ${env:USERPROFILE} "AppData\Local\Microsoft\VisualStudio\$vsMajorVersion.0_$($vsId)$hive\ComponentModelCache\Microsoft.VisualStudio.Default.err"
Copy link
Member

@jasonmalinowski jasonmalinowski Nov 13, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is totally fine, but I wonder if at some point we can capture these as a part of the integration test framework; especially once we move to xunit v3 that has file attachment support.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is totally fine, but I wonder if at some point we can capture these as a part of the integration test framework; Especially once we move to xunit v3 that has file attachment support.

I think there is a collector. But the collector only runs as part of the test run. If we don't get to the test run (e.g. crash on resetSettings) then nothing gets collected

Copy link
Member

@jasonmalinowski jasonmalinowski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just waxing philosophical on a few places, awesome work.

}
# InstanceIds is required here to ensure it installs the vsixes only into the specified VS instance.
# The default installer behavior without it is to install into every installed VS instance.
$baseArgs = "/rootSuffix:$hive /quiet /shutdownprocesses /instanceIds:$vsId /logFile:$logFileName"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to do quoting for the log file name? I assume we wouldn't get a space...

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't no - we generate the file name (and we generate with no spaces).

- name: sha
type: string
default: 'None'
# Set to 'stop' if you want to keep the test machines around for investigation after test completion.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome!

@dibarbet dibarbet merged commit 12c6d84 into dotnet:main Nov 13, 2025
28 of 29 checks passed
@dibarbet dibarbet deleted the dartlab_improvements branch November 13, 2025 21:29
@dotnet-policy-service dotnet-policy-service bot added this to the Next milestone Nov 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants