Draft
Conversation
- Linux: Set TMPDIR=/tmp to ensure consistent diagnostic IPC socket paths (Helix agents may set TMPDIR to non-writable work item temp dirs) - macOS: Set TMPDIR=/private/tmp (resolved /tmp symlink) - macOS: Resolve HELIX_CORRELATION_PAYLOAD through /tmp -> /private/tmp symlink so all derived paths match what the runtime reports - macOS: Add ResolveMacOSDotNetRoot target to resolve DOTNET_ROOT after Helix SDK sets it (fixes BasicProcessInfoSuspendTest path mismatch)
MSBuild was interpreting \ as a property reference, resolving to empty. Use %24 to escape the dollar sign so MSBuild emits a literal \ for shell command substitution.
Copilot CLI skill that looks up CI build results for a PR: - Finds ADO builds via GitHub PR status or ADO API - Extracts Helix job IDs from ADO build logs - Queries Helix API for per-work-item test results - Includes reference tables for test suites and build configs
apt-get was failing with 'Could not get lock /var/lib/dpkg/lock-frontend' because another process held it. Add -o DPkg::Lock::Timeout=120 to both apt-get update and install to wait for the lock instead of failing.
SOS.LLDBPluginTests uses PYTHONPATH as the Python binary path, but Helix sets PYTHONPATH to a colon-delimited import path string. Unset it so the test falls back to /usr/bin/python, and create a symlink if needed.
Thread osSuffix parameter from diagnostics.yml through build.yml and send-to-helix.yml to helix.proj so that linux-musl runs display as 'linux-musl x64 Debug' instead of 'linux x64 Debug'.
Switch musl Helix queues from Ubuntu.2204 (glibc) to Alpine 3.23 containers so musl-linked native binaries (libdbgshim.so, libsosplugin.so) can load correctly. Split Linux pre-commands: - Non-musl: apt-get based LLDB 16 install (Ubuntu) - Musl: apk based LLDB/Python install (Alpine)
Alpine container queue names contain () and @ characters that bash interprets as subshell/special chars. Quote the /p:HelixTargetQueues parameter in all send-to-helix.yml steps to prevent shell errors.
The @ character is reserved in YAML and must be quoted in plain scalars. Add single quotes around the container queue values to prevent YAML parsing failures.
1. Remove 'unset PYTHONPATH' from common Linux pre-commands. This was breaking the Helix result reporter (ModuleNotFoundError: No module named 'helix'), causing ALL Linux x64 tests to be marked as failed even though the tests themselves pass. 2. Fix musl container read-only filesystem: correlation payload is mounted read-only in Docker containers, so cp into dotnet-cli/ fails. Create a writable DOTNET_ROOT overlay using symlinks and copy Versions.txt there instead. 3. Move Versions.txt cp into platform-specific sections since the approach differs between Ubuntu (direct cp) and Alpine (overlay).
Two issues fixed: 1. DOTNET_ROOT/PATH overrides were being clobbered by Helix SDK's AddDotNetSdk target which runs after our pre-commands. Move the overrides to a FixMuslDotNetRoot Target (AfterTargets=AddDotNetSdk) so they take effect after the SDK sets its values. 2. The * glob in 'ln -sf .../dotnet-cli/*' was treated as an MSBuild file wildcard, causing the item to silently produce no output. Escape as %2A so MSBuild passes it through as a literal *. Also use a for loop with %3B-escaped semicolons for proper bash syntax.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.