Cat*_*ter 5 azure-devops azure-pipelines
我们有一个最终正常工作的构建/发布管道,但开发人员要求我们排除阶段配置文件(Web.Dev.config、Web.Test.config、Web.Prod.config)以及工件存档本身来自网站/wwwroot。
正如您所看到的,每次我们部署时,这些 zip 文件也都存储在站点根目录中。它们无害,但看起来不太好:
这是发布应用服务 Web 部署 YAML:
steps:
- task: AzureRmWebAppDeployment@4
displayName: 'Azure App Service Deploy: project-123'
inputs:
azureSubscription: 'Azure Dev Service Connection'
WebAppName: 'project-123'
packageForLinux: '$(System.DefaultWorkingDirectory)/Project123 Dev Build Artifact/Release'
enableCustomDeployment: true
enableXmlTransform: true
Run Code Online (Sandbox Code Playgroud)
部署成功后我们如何排除这些文件?
Kudu目录结构:
基于@theWinterCoder 答案,不幸的是,\xe2\x80\x99t 似乎没有一种遵循文件MSDeploySkipRules中定义的方法csproj。AdditionalArguments相反,可以通过定义Azure 应用服务部署 ( ) 任务的参数来跳过文件和文件夹AzureRmWebAppDeployment。
由于 \xe2\x80\x99t 似乎没有任何有关规则的官方文档-skip,并且MSDeploy.exe Azure Pipelines 引用的文档已过时,因此richard-szalay在 2012 年写了一篇有用的文章 \xe2\x80\x9c揭秘 MSDeploy 跳过规则\xe2\x80\x9d,它为需要额外控制的任何人提供了大量详细信息。
简要说明:
\n该dirPath参数表示Web 部署提供程序跳过目录,而该filePath参数用于跳过单个文件。\ndirPath从 开始wwwroot。\n对于ASP.NET Core应用程序,\xe2\x80\x99swwwroot下wwwroot还有另一个; 因此,absolutePath在这种情况下将如下所示:absolutePath=wwwroot\\\\somefoldername它将映射到D:\\home\\site\\wwwroot\\wwwroot\\somefoldername
解决方案:
\n因此,由于我\xe2\x80\x99m 跳过文件,我将Web部署提供程序设置为filePath,并且由于我们\xe2\x80\x99不使用 .NET Core,因此我们设置absolutePath为Web.Dev.config. 这将映射到D:\\home\\site\\wwwroot\\Web.Dev.config.\n同样的情况也适用于 zip 工件,但是,如果我们不在\\\\通配符之前添加 \xe2\x80\x99t ,它将失败并出现以下错误:
Error: Error: The regular expression \'.zip\xe2\x80\x99 is invalid. Error: parsing ".zip" - Quantifier {x,y} following nothing. Error count: 1.\n\n-skip:objectName=filePath,absolutePath=Web.Dev.config \n-skip:objectName=filePath,absolutePath=Web.Prod.config \n-skip:objectName=filePath,absolutePath=Web.Test.config \n-skip:objectName=filePath,absolutePath=\\\\*.zip\nRun Code Online (Sandbox Code Playgroud)\n或使用正则表达式:
\n-skip:objectName=filePath,absolutePath="Web.Dev.config|Web.Prod.config|Web.Test.config|\\\\*.zip"\nRun Code Online (Sandbox Code Playgroud)\n就是这样
\n\n| 归档时间: |
|
| 查看次数: |
1553 次 |
| 最近记录: |