在Team Foundation Server 2018 Express中构建和部署SSRS报告

问题描述 投票:0回答:1

在TFS构建过程中,可以使用哪种任务或自定义命令为rptproj项目生成工件,然后在部署过程中将报告发布到本地ReportServer?

长话故事。

我在TFS 2018 Express中有一个单独的构建和部署管道的设置。

我的Visual Studio 2017解决方案有三个ASP.NET MVC Web应用程序项目和两个SSRS项目(rptproj)。

目前,我正在使用以下MSBuild参数触发构建:

/p:DeployOnBuild=true /p:WebPublishMethod=Package
 /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true
 /p:PackageLocation="$(build.artifactstagingdirectory)\\"
 /p:AutoParameterizationWebConfigConnectionStrings=false

我还为工件指定了一个输出文件夹。

构建之后,工件文件夹包含三个用于网站的zip文件和一些部署帮助程序脚本。但是,我的rptproj项目没有任何输出(我不确定输出应该是什么)。从构建日志判断,报告项目没有任何问题,它们只是不生成任何工件输出。

我已将部署管道配置为使用zip并部署到本地IIS服务器。它工作正常,web.config转换也得到应用。

我使用TFS 2018内置任务完成了所有工作,一切似乎都很直接。但SSRS没有内置任务。

我在TFS在线图库中找到了一些第三方SSRS任务,但是,如果我理解正确,他们似乎都在构建期间立即部署。我不需要 - 我想首先在工件中收集rptproj输出,然后在部署管道步骤中部署它,因为有时我想触发一些旧版本的手动版本而不实际重建所有内容。

reporting-services tfs continuous-delivery
1个回答
1
投票

我想首先在工件中收集rptproj输出,然后在部署管道步骤中部署它

您刚刚说明了问题的确切解决方案:

添加Publish Artifacts任务,将其指向包含报告输出的文件夹,然后将报告发布为工件。然后它将在一个版本中提供。根据我的经验,您不需要“构建”报告项目,只需从$(Build.SourcesDirectory)/Path/To/Your/Reports发布包含报告的文件夹即可。

© www.soinside.com 2019 - 2024. All rights reserved.