0

I have a project which contains a number of reports built in Visual Studio using SSDT's SQL Server Reports projects. The reports need to be deployed to remote customers for them to publish to their SSRS servers, which are of varying editions of SQL Server. To accommodate this, we target our reports at the lowest common denominator (SQL 2008).

Currently, whenever we have a deployment to a customer, a developer has to open up Visual Studio, load the project, build the project, open up a Windows Explorer window, navigate to the project's output folder, and copy the *.rdl files into the correct drop folder. I'd really like to automate this process, but I'm running into a brick wall:

  • MSBuild doesn't know how to build .rptproj files, so when VSTS runs the "Build Solution" task, the report project is skipped.
  • I've been unable to find any VSTS Build Task extensions that can do this build, so I'm prepared to write my own.
  • I can manually build the project from a command line using devenv.com, but when I attempt to do this on the build agents, it complains about the lack of Visual Studio license.
  • As far as I can tell, the "building" of the RDL files is done internally by devenv (using an extension assembly, I assume), so there is no command-line tool I can call to do the building.

I can't believe we are the only people who use SSRS to design reports but aren't publishing them internally. Does anyone have any insight on how to make this happen?

Michael Edenfield
  • 28,070
  • 4
  • 86
  • 117
  • Calling devenv.exe/com is the only way apart from upgrading to a more recent version of either SSDT, or moving to powerbi.com for reporting solutions. – jessehouwing Nov 01 '17 at 18:54
  • If you're not using the hosted agent, you could install and activate visual studio on a custom agent and the devenv.exe approach should succeed. – jessehouwing Nov 01 '17 at 18:55
  • My visual studio license comes from an Partner Network MSDN subscription; as far as I know I can't "activate" it for anyone except myself, logged in interactively, and I need to refresh the license every month. I was actually trying to figure out how to make that work as I was typing this question. – Michael Edenfield Nov 01 '17 at 19:37
  • Also: is there a more recent version of SSDT that supports building report projects? I thought I was on the latest version available. – Michael Edenfield Nov 01 '17 at 19:38
  • Can you use Hosted agent? A related thread: [How to build and deploy SSRS project through VSTS?](https://stackoverflow.com/questions/45994328/how-to-build-and-deploy-ssrs-project-through-vsts) – starian chen-MSFT Nov 02 '17 at 07:56
  • I think we have to use a custom agent due to some other dependencies we have. (Right now we're actually still on-premesis but we're migrating to VSTS). – Michael Edenfield Nov 02 '17 at 11:22

1 Answers1

1

Setup a build agent on a machine with necessary dependencies installed, then deploy files through SQL Server Reporting Services Deployment extension.

A related thread: How to build and deploy SSRS project through VSTS?

Note: If license is required, you need to active it manually.

starian chen-MSFT
  • 33,174
  • 2
  • 29
  • 53
  • Can you expand on the "activate it manually" part? I've attempted to figure out how to do this. My MSDN subscription says that I cannot get a product key, that I can only activate the license by logging in (which means I have to run the build agent as myself and log into it every month.) – Michael Edenfield Nov 06 '17 at 03:29
  • Log on to the machine and refresh the license. You need to use your account as the agent service account if the license just apply to you. – starian chen-MSFT Nov 06 '17 at 06:44
  • ok. I was hoping this wasn't the answer (seems like a big hole in SSRS visual studio support -- maybe we're using them for something they shouldn't be used for) but it works. – Michael Edenfield Nov 06 '17 at 18:17