actions / actions/runner

GitHub Hosted Runner v2.330: Missing SSDT (Microsoft.Data.Tools.Schema.SqlTasks.targets) required for SQL Projects

Open
#4,159 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
C#
Stars
6.3k
Forks
1.4k
Avg merge
1d 16h
Merged PRs (30d)
24

Description

Describe the bug
After upgrading the GitHub Actions self-hosted runner application from v2.328 to v2.330, our MSBuild steps that handle SQL projects (.sqlproj) have started failing. The build fails because it cannot find the SQL Server Data Tools (SSDT) targets file: Microsoft.Data.Tools.Schema.SqlTasks.targets. This indicates that the necessary SSDT components are either missing or have been moved in the new runner's environment, causing a build breakage for SQL database projects.

To Reproduce
Steps to reproduce the behavior:

  1. Ensure the self-hosted runner application is updated to v2.330.x.
  2. Run a workflow that executes msbuild on a solution (.sln) containing a SQL Database Project (.sqlproj).
  3. The msbuild step fails with the error MSB4226.

Expected behavior
The build should successfully find and use the SQL Server Data Tools (SSDT) components required to compile the .sqlproj file, as it did when running on the runner application v2.328.x. The expected behavior is a successful build and compilation of the database project.

Runner Version and Platform

Version of your runner?
v2.330.x

OS of the machine running the runner?
Windows Server 2022

What's not working?

The MSBuild step fails because it cannot resolve an imported project path related to SSDT.

The error message shows the system is using a newer MSBuild installation path (Visual Studio\18\BuildTools), but the required SSDT targets file is being looked for in a path referencing an older Visual Studio version (v16.0):

C:\Program Files (x86)\Microsoft Visual Studio\18\BuildTools\MSBuild\Microsoft\VisualStudio\v16.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets

Job Log Output

C:\Program Files (x86)\Microsoft Visual Studio\18\BuildTools\MSBuild\Current\Bin\amd64\MSBuild.exe
msbuild.exe MSBuild version 18.0.5+e22287bf1 for .NET Framework
MSBuild auto-detection: using msbuild version '18.0.5.56406' from 'C:\Program Files (x86)\Microsoft Visual Studio\18\BuildTools\MSBuild\Current\Bin'.
C:\Users\ContainerAdministrator.nuget\packages\microsoft.build.sql\0.1.14-preview\Sdk\Sdk.targets(22,89): error MSB4226: The imported project "C:\Program Files (x86)\Microsoft Visual Studio\18\BuildTools\MSBuild\Microsoft\VisualStudio\v16.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets" was not found. Also, tried to find "Microsoft\VisualStudio\v16.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets" in the fallback search path(s) for $(MSBuildExtensionsPath) - "C:\Program Files (x86)\MSBuild" . These search paths are defined in "C:\Program Files (x86)\Microsoft Visual Studio\18\BuildTools\MSBuild\Current\Bin\msbuild.exe.Config". Confirm that the path in the declaration is correct, and that the file exists on disk in one of the search paths. [C:\home\runner_work\Main\Main\src\Core.Database\Core.Database.sqlproj]

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing the Windows Server 2022 runner environments in v2.328.x and v2.330.x, focusing on the MSBuild and SSDT paths shown in the job log. Reproduce the MSB4226 failure with an MSBuild solution containing the mentioned Core.Database.sqlproj, then verify that the Microsoft.Data.Tools.Schema.SqlTasks.targets import resolves and the SQL project builds successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, sql
Domain
build-system, ci-cd, databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.