The VS2017 env. includes SQL Server Data tools so things like reporting services projects can be built/deployed, as documented here:
https://github.com/actions/virtual-environments/blob/master/images/win/Windows2016-Readme.md#sql-server-data-tools-for-vs-2017
SQL Server Data Tools has been broken into separate extensions for VS2019 as shown here:
https://docs.microsoft.com/en-us/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-ver15#changes-in-ssdt-for-visual-studio-2019
But all of the extensions that replace SSDT are not available on the VS2019 image by default.
In our case this means we can't build Reporting Services projects on this later image but it may also effect others attempting to build different SQL Server related project types.
We can install these in a build step but this is slow and cumbersome.
Can I suggest that these extensions be installed/available on the VS2019 image please?
@Dhugal Could you please provide some more data on what extensions do you need? Is it enough to have this one https://github.com/actions/virtual-environments/pull/515?
The Reporting Services extension is separate to the Analysis Services one. Here is the package homepage: https://marketplace.visualstudio.com/items?itemName=ProBITools.MicrosoftReportProjectsforVisualStudio&ssr=false#overview
@miketimofeev - In our case it's, as described by SYoungPB, the Reporting Services extension but I would suggest that all of the extensions which replace the prior combined one are installed otherwise someone else is likely to come back with a request for one of the others.
The VS 2017 image contains the following SQL Server Data Tools for VS 2017 (Version: 15.1.62002.1090) - which itself contains the following:
For VS 2019 SQL Server Data Tools is already installed so I'd suggest the following extensions are also included to keep the functionality in line with the prior image:
@Dhugal thanks for the list! I'll prepare PR with all the extensions
@dhugal all appropriate extensions are supposed to be installed now. Could you please check it?
@miketimofeev - Thanks Mike. Unfortunately I'm not seeing the latest version of the image when I carry out a build, so it's still failing.
I've attempted switching the vmImage to both 'windows-2019' and 'windows-latest' and in both cases I get the following in the initialise job step of the build, which appears to indicate a prior version of the image is still being used:
Starting: Initialize job
Agent name: 'Hosted Agent'
Agent machine name: 'WIN-HT1ND6OD3O7'
Current agent version: '2.165.2'
Current image version: '20200308.0'
Agent running as: 'VssAdministrator'
Prepare build directory.
Set build variables.
Download all required tasks.
Downloading task: NuGetToolInstaller (0.165.0)
Downloading task: NuGetCommand (2.166.0)
Downloading task: VSBuild (1.166.0)
Downloading task: VSTest (2.166.2)
Downloading task: CopyFiles (2.164.0)
Downloading task: PublishBuildArtifacts (1.158.1)
Checking job knob settings.
Finished checking job knob settings.
Start tracking orphan processes.
Finishing: Initialize job
Has the new image been deployed to all regions (we're based in the UK) and/or is there anything I need to do to get this project/build to pick up the latest image?
@Dhugal oh, I see. The image has been deployed to github only at the moment due to VS 16.5 issues that's why you still see the old image version. Sorry for the misinformation
@miketimofeev - Ok, no problem. Do you have an ETA for when it's going to be applied to Azure Dev Ops or is there somewhere we can see the status if this kind of thing?
@miketimofeev
PS: I think it would be good to get some clarification on where you can see the image that is currently deployed.
At the moment, the following page lists the images and has an entry for windows-2019:
https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=azure-devops
The windows-2019 link in turn takes you to this page, which indicates that the 20200319.1 image is in use, but this appears to be incorrect:
https://github.com/actions/virtual-environments/blob/master/images/win/Windows2019-Readme.md
@Dhugal yeah, that's quite confusing.
@alepauly do we have any ETA for AzDO update?
I'm late to the party, but actually found myself in the same place as @Dhugal over the past few days.
Our Azure DevOps environment is still using the 20200308.0 image. I'm using windows-latest in our pipeline.
Great news, this seems to be updated in Azure DevOps. My build was successful and I have the March 31 image.
Current agent version: '2.165.2'
Current image version: '20200331.1'
Thanks all!
@treyhendon , deployment is in progress right now and will be finished soon.
(please pay attention that not all machines are updated for now).
@maxim-lobanov @miketimofeev - Thank you - I've switched our build to use the windows-2019 image and, after a couple of hiccups, it's now working for me too.
In case it helps anyone else out, when I initially switched to this image I got an error during the nuget restore, which I didn't get prior to this upgrade. The error is as follows:
"Exception has been thrown by the target of an invocation. The project file could not be loaded. Could not load file or assembly 'Microsoft.Build.Framework, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified."
The resolution for us was to alter the nuget install step to use version 5.5.1. Here's the relevant section of YAML:
steps:
- task: NuGetToolInstaller@1
inputs:
versionSpec: '5.5.1'
The following answer on stack overflow pointed me in this direction:
Most helpful comment
@miketimofeev - In our case it's, as described by SYoungPB, the Reporting Services extension but I would suggest that all of the extensions which replace the prior combined one are installed otherwise someone else is likely to come back with a request for one of the others.
The VS 2017 image contains the following SQL Server Data Tools for VS 2017 (Version: 15.1.62002.1090) - which itself contains the following:
For VS 2019 SQL Server Data Tools is already installed so I'd suggest the following extensions are also included to keep the functionality in line with the prior image: