c# - 如何通过管道在 Azure devops 部署期间删除本地 wwwroot 文件夹的内容?
问题描述
我正在尝试通过 Azure devops 管道在 IIS 网站上部署我的 .Net 代码。如果 wwwroot 文件夹在部署前保持为空,则部署成功,但如果 wwwroot 文件夹包含文件,则在这种情况下,部署过程不会覆盖这些文件。我想在部署之前删除 wwwroot 文件夹的内容,或者找到一些可以帮助我覆盖现有内容的设置。在各种论坛上提出了几个问题,其中大多数建议人们使用设置“在目标位置删除其他文件”,我尝试了相同的方法,但它对我不起作用。请建议在这种情况下可以做什么。
解决方案
清除文件夹或删除文件可以通过powershell脚本来实现。您可以在部署任务之前添加一个 powershell 任务来完成清理工作。
Try {
Remove-Item -path "path\to\wwwroot\*" –recurse -ErrorAction Stop
}
Catch {
Write-Warning "Warning, something failed! $($_.Exception.Message)"
}
但是,我无法重现上述问题。我测试了删除目的地的其他文件。它成功删除了 Web App zip 包中的不匹配文件。我做了一个测试来更改 wwwroot 文件夹中的 appsettings.json 文件,当我重新部署我的网站时它也被替换了。
推荐阅读
- c# - DebuggerDisplay 中的跨语言 DataRow 索引
- c# - 如何获取具有Unicode字符的快捷方式的目标路径
- command-line - 在控制台上输出 liquibase
- sql - 查询 SQL 查询时出现 Python 错误(字符串格式化期间并非所有参数都转换)
- c# - Deedle Frame的计算性能明显慢于Series?
- .net - 如何使用 C# iText7 在 PDF 生成中创建页眉
- wordpress - 如何在更改自定义帖子类型 slug 后使用 .htaccess 进行 301 重定向
- java - 如何以多线程方式提高使用 OrientDB 的性能?
- mysql - Mysql group_concat 与 in() 函数
- python - BeautifulSoup 查找 - 从感兴趣的块中排除嵌套标签