Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Automated deployment options for SSRS

I have been tasked to look into ways to automate the deployment process for our SSRS 2012 reports. Are there any good tools out there? I'm thinking of something along the lines of press a button and the report gets deployed.

Thanks!

like image 682
Michael Robinson Avatar asked Jun 02 '14 19:06

Michael Robinson


People also ask

What are the different modes of deployment for SSRS?

A Reporting Services report server runs in one of two deployment modes; Native mode or SharePoint mode.

What are automated deployments?

Deployment automation refers to a software deployment approach that allows organizations to increase their velocity by automating build processes, testing, and deployment workflows for developers. In other words, it allows organizations to release new features faster and more frequently.

How do I deploy an SSRS report?

On the Build menu, click Deploy <report project name>. Alternatively, in Solution Explorer, right-click the report project and then click Deploy. You can view the status of the publishing process in the Output window.


2 Answers

To deploy our SSRS reports, we're using this lovely powershell project:

https://github.com/timabell/ssrs-powershell-deploy

Usage:

.\Deploy-SSRSProject.ps1 -path YourReportsProject.rptproj -configuration Release -verbose

or you can use the alternate parameter set:

.\Deploy-SSRSProject\Deploy-SSRSProject.ps1 -path .\AFS.Reports.rptproj -ServerUrl http://localhost/Reportserver -Folder MyReports -DataSourceFolder "MyReports/Data Sources" -DataSetFolder "MyReports/Datasets" -verbose

The full deployment story (for us):

  • ssrs-powershell-deploy scripts, .rptproj, .rds, .rdl files are all packaged into a nuget package by our build server.
  • Octopus Deploy extracts the nuget package on our SSRS server and calls Deploy-SSRSProject.ps1
like image 112
Ronnie Overby Avatar answered Oct 19 '22 23:10

Ronnie Overby


Visual Studio Deployment

Visual Studio is actually really good at automatic deployment. I've used it a number of times with great results. You need to split your solution into separate projects for each folder on the report server and then it will take a bit of time to configure each project & deployment environment. But after that initial time investment it works wonders and when you add a new project you can simply copy the deployment settings for an existing project.

MSDN article: Set Deployment Properties (Reporting Services)

Rs.exe Utility

Alternatively you can use the Rs.exe utility which comes with SSRS. It is a command-line utility used for automatic deployment and administration. I haven't personally use this one, but I know of it. It is my understanding that there are also third party utilities which leverage Rs.exe in order to automate report deployment but I haven't used any of them so I can't recommend any.

More info on MSDN: RS.exe Utility (SSRS)


I'm sure there are also other third-party tools you could get but I haven't ever looked into them. I've always found the Visual Studio deployment functionality sufficient for my needs.

like image 32
Mike D. Avatar answered Oct 20 '22 00:10

Mike D.