在Jenkins中使用MS build插件时,无法加密目标web.config

时间:2014-06-23 20:31:59

标签: asp.net encryption jenkins msbuild entity-framework-5

我正在尝试设置Jenkins来构建和部署我的ASP.net MVC项目。

我的命令行参数

/p:Configuration=Staging  
/p:DeployOnBuild=true  
/p:PublishProfile=Staging  
/p:ExcludeApp_Data=False  
/p:AllowUntrustedCertificate=True  
/p:LastUsedPlatform="Any CPU"  
/p:MSDeployPublishMethod=WMSVC  
/p:DeployIisAppPath=User Information Portal;  
/p:MsDeployServiceUrl=x.x.x.x  
/p:MSDeployEnableWebConfigEncryptRule=False  
/p:username=x  
/p:password=xx

当Jenkins运行项目时,它总是失败并出现错误

msdeploy错误ERROR_FAILED_TO_ENCRYPT_WEB_CONFIG:Web部署任务失败。 (无法加密目标web.config:C:\ Jenkins \ jobs \ xxxx \ workspace \ xx \ obj \ Staging \ Package \ PackageTmp \ Views \ Web.config。有关详情,请访问:http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_FAILED_TO_ENCRYPT_WEB_CONFIG。)

我可以从Visual Studio进行部署,但使用相同的参数Jenkins无法正常工作。

另一个问题我使用实体框架代码第一种方法。我是否需要在Jenkins中执行任何操作来运行迁移脚本。

如果我将MSDeployPublishMethod作为FileSystem进行部署,但迁移脚本没有运行。

由于

1 个答案:

答案 0 :(得分:0)

后来我发现我的发布配置文件有/ p:MSDeployEnableWebConfigEncryptRule = True。

MS build忽略了命令行参数。