【发布时间】:2017-05-26 23:31:50
【问题描述】:
对于 ASP.NET 项目,我可以使用键 SCM_BUILD_ARGS 和值 -p:Configuration="Debug" 设置应用程序设置来更改构建配置。 这似乎不适用于 aspnet core 1.1 项目。 这种情况下如何指定构建配置?
【问题讨论】:
标签: azure .net-core azure-web-app-service
对于 ASP.NET 项目,我可以使用键 SCM_BUILD_ARGS 和值 -p:Configuration="Debug" 设置应用程序设置来更改构建配置。 这似乎不适用于 aspnet core 1.1 项目。 这种情况下如何指定构建配置?
【问题讨论】:
标签: azure .net-core azure-web-app-service
根据从KUDU下载的deploy.cmd文件,你会发现.net核心应用和.net应用不一样。
deploy.cmd文件如下:
您将找到 SCM_BUILD_ARGS。
:: 1. Restore NuGet packages
IF /I "Documents\Visual" NEQ "" (
call :ExecuteCmd nuget restore "%DEPLOYMENT_SOURCE%\Documents\Visual"
IF !ERRORLEVEL! NEQ 0 goto error
)
:: 2. Build to the temporary path
IF /I "%IN_PLACE_DEPLOYMENT%" NEQ "1" (
call :ExecuteCmd "%MSBUILD_PATH%" "%DEPLOYMENT_SOURCE%\Documents\Visual" /nologo /verbosity:m /t:Build /t:pipelinePreDeployCopyAllFilesToOneFolder /p:_PackageTempDir="%DEPLOYMENT_TEMP%";AutoParameterizationWebConfigConnectionStrings=false;Configuration=Release;UseSharedCompilation=false /p:SolutionDir="%DEPLOYMENT_SOURCE%\Documents\\" %SCM_BUILD_ARGS%
) ELSE (
call :ExecuteCmd "%MSBUILD_PATH%" "%DEPLOYMENT_SOURCE%\Documents\Visual" /nologo /verbosity:m /t:Build /p:AutoParameterizationWebConfigConnectionStrings=false;Configuration=Release;UseSharedCompilation=false /p:SolutionDir="%DEPLOYMENT_SOURCE%\Documents\\" %SCM_BUILD_ARGS%
)
IF !ERRORLEVEL! NEQ 0 goto error
:: 3. KuduSync
IF /I "%IN_PLACE_DEPLOYMENT%" NEQ "1" (
call :ExecuteCmd "%KUDU_SYNC_CMD%" -v 50 -f "%DEPLOYMENT_TEMP%" -t "%DEPLOYMENT_TARGET%" -n "%NEXT_MANIFEST_PATH%" -p "%PREVIOUS_MANIFEST_PATH%" -i ".git;.hg;.deployment;deploy.cmd"
IF !ERRORLEVEL! NEQ 0 goto error
)
.net 核心部署:
它不包含 SCM_BUILD_ARGS。
echo Handling ASP.NET Core Web Application deployment.
:: 1. Restore nuget packages
call :ExecuteCmd dotnet restore "WebCoreGitDeploy.sln"
IF !ERRORLEVEL! NEQ 0 goto error
:: 2. Build and publish
call :ExecuteCmd dotnet publish "WebCoreGitDeploy\WebCoreGitDeploy.csproj" --output "%DEPLOYMENT_TEMP%" --configuration Release
IF !ERRORLEVEL! NEQ 0 goto error
:: 3. KuduSync
call :ExecuteCmd "%KUDU_SYNC_CMD%" -v 50 -f "%DEPLOYMENT_TEMP%" -t "%DEPLOYMENT_TARGET%" -n "%NEXT_MANIFEST_PATH%" -p "%PREVIOUS_MANIFEST_PATH%" -i ".git;.hg;.deployment;deploy.cmd"
IF !ERRORLEVEL! NEQ 0 goto error
所以如果你想改变配置,你只需下载部署文件并将deploy.cmd的配置标签更改为Debug即可。
我建议您可以先将项目推送到 azure web 应用程序。然后你可以从 kudu 下载部署脚本。
最后将这些文件添加到你的项目的根路径,并使用 git add 命令将文件添加到 git 并推送。
更多细节,您可以参考以下步骤:
1.打开KUDU
2.下载部署脚本。
3.使用记事本打开deploy.cmd,修改配置如下
4.然后 git add 修改的文件。
5.最后,你推送 git。
【讨论】: