5
我试图在使用Appveyor代理的服务器上部署项目。但是,如果我在部署之前不重新启动或停止应用程序,则不起作用。通过AppVeyor部署.NET Core应用程序:文件被外部进程锁定(Appveyor代理)
Web Deploy cannot modify the file 'TestProject.Application.dll' on the destination because it is locked by an external process. In order to allow the publish operation to succeed, you may need to either restart your application to release the lock, or use the AppOffline rule handler for .Net applications on your next publish attempt. Learn more at: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_FILE_IN_USE.
有没有一种简单的方法来处理app_offline.htm文件?使用“app_offline”功能的appveyor.yml配置在这种环境下不起作用。
我正在寻找“之前/之后”部分的内容。这里是我的appveyor.yml:
version: '1.0.{build}'
os: Visual Studio 2015
install:
- "SET PATH=C:\\Program Files\\dotnet\\bin;%PATH%"
branches:
only:
- master
assembly_info:
patch: true
file: '**\AssemblyInfo.*'
assembly_version: '{version}'
assembly_file_version: '{version}'
assembly_informational_version: '{version}'
build_script:
- nuget sources add -name "VNext" -source https://dotnet.myget.org/F/cli-deps/api/v3/index.json
- nuget sources add -name "nugetv3" -source https://api.nuget.org/v3/index.json
- dotnet restore
- dotnet build */*/project.json
after_build:
- ps: Remove-Item -Path src\TestProject.Web\web.config
- ps: Move-Item -Path src\TestProject.Web\web.$env:APPVEYOR_REPO_BRANCH.config -Destination src\TestProject.Web\web.config
- dotnet publish src\TestProject.Web\ --output %appveyor_build_folder%\publish
artifacts:
- path: .\publish
name: TestProject.Web
test: off
deploy:
- provider: Environment
name: east-webhost
artifact: TestProject.Web
remove_files: false
on:
branch: master
我在我的项目的根目录下有我的before-deploy.ps1,但它没有执行,对此有任何想法? /deploy.ps1 /src/TestProject.WebApp 我将这个deploy.ps1作为“解决方案项目”包含在我的解决方案中。 服务器上仍然没有执行任何操作。 –
http://www.gabrielrobert.com/2016/11/blog-post.html –