15below/Ensconce — pull request #38 by harrisonmeister (2014-09-03 17:49:11+00:00)
Title: MS Reporting Service Reports Deployment Enhancement

Allows MS Reporting Service reports deployment without the need to call rs.exe from Powershell (and thus avoiding environment variable block limits) as .rss (reporting service script) files have to be 'compiled-on-the-fly')

The 2 functions are both fairly opinionated and they consist of:

1. Publishing reports to the server to a structure of /PARENT_FOLDER/SUB_FOLDER, and assigning the single data source name provided to all reports in the reports source folder.
2. Adding reporting service roles to either a local or domain user such that this user has permissions to run reports via the available ReportViewer controls in ASP.NET

Example usages in ensconce would be:

Deploy either reports (.rdl files) or add a role to a local/domain user.

Both options requires Reporting Service Variables (--rsv). multiple values can (and must) be specified.

Example Usage:

# Deploy Reports
--dr
--rsv reportingServicesUrl=http://reportingservices.yourserver.com:80/ReportServer_INSTANCE/ReportService2010.asmx
--rsv networkDomain=DOMAIN
--rsv networkLogin=USER
--rsv networkPassword=PASSWORD

--rsv parentFolder=PARENT_FOLDER
--rsv subFolder=SUB_FOLDER
--rsv dataSourceName=DATA-SOURCE-NAME
--rsv dataSourceConnectionString=Data Source=(local);Initial Catalog=DATABASE01
--rsv dataSourceUserName=DBUSER1
--rsv dataSourcePassword=DBPASSWORD1
--rsv reportSourceFolder=C:\TEMP\PATH_TO_REPORTS\SUB_FOLDER

# Deploy Reporting Role for User
--drr
--rsv reportingServicesUrl=http://reportingservices.yourserver.com:80/ReportServer_INSTANCE/ReportService2010.asmx
--rsv networkDomain=DOMAIN
--rsv networkLogin=USER
--rsv networkPassword=PASSWORD

--rsv itemPath=/PARENT_FOLDER
--rsv reportingUserToAddRoleFor=DOMAIN\USER
--rsv reportingRoleToAdd="Content Manager"