Repository navigation
Conversation
Name the problem when Microsoft's download-page metadata lists no acceptable installer (an empty file list, or no HTTPS download.microsoft.com .exe URL among the files), so the final error explains why the metadata was not used rather than just reporting that no installer was found. Stop repeating a network error's code when its message already contains it, e.g. "getaddrinfo ENOTFOUND host" rather than "getaddrinfo ENOTFOUND host / ENOTFOUND". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Check that extracting box or SSEI install media actually produced a setup.exe before adding the directory to the tool cache. Previously an extraction that produced no setup.exe (e.g. an empty directory) was cached and the action only failed later, when running a setup.exe that didn't exist, and the cached directory could be reused on persistent runners. The error names the version, the extraction directory and what it contained. When the SSEI bootstrapper produces no installer, include the media directory and the files it did produce in the error. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The sqlserver-version description lists every supported version, but 2008, 2012 and 2014 fail the OS check on runners newer than Windows Server 2019, which GitHub-hosted runners no longer offer. Say so, and point to skip-os-check for trying them anyway. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Describe the cumulative update page fetch as up to three attempts rather than "retries up to three times", and note that a failure to resolve the update link (not only to download it) also falls back to installing without updates. Replace the overlapping sentences about SSEI and box extraction with one description of the shared extractAndCacheInstaller() step, including its setup.exe check. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The OS-check error only tells users to switch runner, and for SQL Server 2008, 2012 and 2014 it points to windows-2019, which GitHub-hosted runners no longer offer. Also point to skip-os-check so users can attempt the installation anyway. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Follow-ups to small points that came up while reviewing #295 and #296, plus an OS-check message improvement. Each commit stands alone.
fix: clarify cumulative update resolution errorsdownload.microsoft.com.exeinstaller in it, record that as a metadata problem ("File list has no HTTPS download.microsoft.com .exe installer (found: …)"), so the final error explains why the metadata wasn't used. The<a href>fallback is unchanged.getaddrinfo ENOTFOUND hostrather thangetaddrinfo ENOTFOUND host / ENOTFOUND).fix: fail clearly when installer extraction produces no setup.exesetup.exebefore adding the directory to the tool cache, rather than caching an empty extraction and failing later when running asetup.exethat doesn't exist. The error names the version, the extraction directory and its contents.docs: note OS limits for SQL Server 2008, 2012 and 2014sqlserver-versiondescription now says these only pass the OS check on Windows Server 2019 or older (which GitHub-hosted runners no longer offer) and points toskip-os-check. README usage block regenerated.docs: tidy copilot instructions for update retries and extractionextractAndCacheInstaller().fix: mention skip-os-check when the runner OS is unsupportedwindows-2019); it now also points toskip-os-check.Testing
lib/committed) and passes the test suite (155 tests at the tip); new tests fail against the previous implementation.Note: #297 and the upcoming tool-cache fix also touch
src/utils.ts, the README andlib/, so whichever lands later will need a rebase andnpm run build.🤖 Generated with Claude Code