2016-08-01 11 views
1

Visual Studio Codeを使用してASP.NET Core 1.0アプリケーションを開発しています.Visual Studio IDEで組み込みの公開ツールを使用することはできません。私はこれをASP.NET 5 RC1(dnx-clr-win-x86.1.0.0-rc1-update1)で動作させていますが、これをASP.NET Core 1.0にアップデートする方法はわかりません。まだ更新されていません。 ASP.NET 5 RC1についてはASP.NET Core 1.0用Kuduデプロイメントスクリプト

私は、次のコマンドを使用してdeploy.cmdファイルを生成するためにazure-cli packageを使用:これは、のために働く

@if "%SCM_TRACE_LEVEL%" NEQ "4" @echo off 

:: ---------------------- 
:: KUDU Deployment Script 
:: Version: 1.0.6 
:: ---------------------- 

:: Prerequisites 
:: ------------- 

:: Verify node.js installed 
where node 2>nul >nul 
IF %ERRORLEVEL% NEQ 0 (
    echo Missing node.js executable, please install node.js, if already installed make sure it can be reached from current environment. 
    goto error 
) 

:: Setup 
:: ----- 

setlocal enabledelayedexpansion 

SET ARTIFACTS=%~dp0%..\artifacts 

IF NOT DEFINED DEPLOYMENT_SOURCE (
    SET DEPLOYMENT_SOURCE=%~dp0%. 
) 

IF NOT DEFINED DEPLOYMENT_TARGET (
    SET DEPLOYMENT_TARGET=%ARTIFACTS%\wwwroot 
) 

IF NOT DEFINED NEXT_MANIFEST_PATH (
    SET NEXT_MANIFEST_PATH=%ARTIFACTS%\manifest 

    IF NOT DEFINED PREVIOUS_MANIFEST_PATH (
    SET PREVIOUS_MANIFEST_PATH=%ARTIFACTS%\manifest 
) 
) 

IF NOT DEFINED KUDU_SYNC_CMD (
    :: Install kudu sync 
    echo Installing Kudu Sync 
    call npm install kudusync -g --silent 
    IF !ERRORLEVEL! NEQ 0 goto error 

    :: Locally just running "kuduSync" would also work 
    SET KUDU_SYNC_CMD=%appdata%\npm\kuduSync.cmd 
) 
IF NOT DEFINED DEPLOYMENT_TEMP (
    SET DEPLOYMENT_TEMP=%temp%\___deployTemp%random% 
    SET CLEAN_LOCAL_DEPLOYMENT_TEMP=true 
) 

IF DEFINED CLEAN_LOCAL_DEPLOYMENT_TEMP (
    IF EXIST "%DEPLOYMENT_TEMP%" rd /s /q "%DEPLOYMENT_TEMP%" 
    mkdir "%DEPLOYMENT_TEMP%" 
) 

IF DEFINED MSBUILD_PATH goto MsbuildPathDefined 
SET MSBUILD_PATH=%ProgramFiles(x86)%\MSBuild\14.0\Bin\MSBuild.exe 
:MsbuildPathDefined 
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 
:: Deployment 
:: ---------- 

echo Handling ASP.NET 5 Web Application deployment. 

:: Remove wwwroot if deploying to default location 
IF "%DEPLOYMENT_TARGET%" == "%WEBROOT_PATH%" (
    FOR /F %%i IN ("%DEPLOYMENT_TARGET%") DO IF "%%~nxi"=="wwwroot" (
    SET DEPLOYMENT_TARGET=%%~dpi 
    ) 
) 

:: Remove trailing slash if present 
IF "%DEPLOYMENT_TARGET:~-1%"=="\" (
    SET DEPLOYMENT_TARGET=%DEPLOYMENT_TARGET:~0,-1% 
) 


:: 1. Set DNX Path 
set DNVM_CMD_PATH_FILE="%USERPROFILE%\.dnx\temp-set-envvars.cmd" 
set DNX_RUNTIME="%USERPROFILE%\.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1" 

:: 2. Install DNX 
call :ExecuteCmd PowerShell -NoProfile -NoLogo -ExecutionPolicy unrestricted -Command "[System.Threading.Thread]::CurrentThread.CurrentCulture = ''; [System.Threading.Thread]::CurrentThread.CurrentUICulture = '';$CmdPathFile='%DNVM_CMD_PATH_FILE%';& '%SCM_DNVM_PS_PATH%' " install 1.0.0-rc1-update1 -arch x86 -r clr %SCM_DNVM_INSTALL_OPTIONS% 
IF !ERRORLEVEL! NEQ 0 goto error 


:: 3. Run DNU Restore 
call %DNX_RUNTIME%\bin\dnu restore "%DEPLOYMENT_SOURCE%" %SCM_DNU_RESTORE_OPTIONS% 
IF !ERRORLEVEL! NEQ 0 goto error 

:: 4. Run DNU Bundle 
call %DNX_RUNTIME%\bin\dnu publish ".\server\project.json" --runtime %DNX_RUNTIME% --out "%DEPLOYMENT_TEMP%" %SCM_DNU_PUBLISH_OPTIONS% 
IF !ERRORLEVEL! NEQ 0 goto error 

:: 5. KuduSync 
call %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 
) 

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 

:: Post deployment stub 
IF DEFINED POST_DEPLOYMENT_ACTION call "%POST_DEPLOYMENT_ACTION%" 
IF !ERRORLEVEL! NEQ 0 goto error 

goto end 

:: Execute command routine that will echo out when error 
:ExecuteCmd 
setlocal 
set _CMD_=%* 
call %_CMD_% 
if "%ERRORLEVEL%" NEQ "0" echo Failed exitCode=%ERRORLEVEL%, command=%_CMD_% 
exit /b %ERRORLEVEL% 

:error 
endlocal 
echo An error has occurred during web site deployment. 
call :exitSetErrorLevel 
call :exitFromFunction 2>nul 

:exitSetErrorLevel 
exit /b 1 

:exitFromFunction 
() 

:end 
endlocal 
echo Finished successfully. 

azure site deploymentscript --aspNet5 .\server\project.json -p .\server --aspNet5Version "1.0.0-rc1-update1" --aspNet5Runtime clr --aspNet5Architecture x86 

私は次のようdeploy.cmdファイルを得ましたASP.NET 5 RC1(dnx-clr-win-x86.1.0.0-rc1-update1)ですが、ASP.NET Core 1.0用にどのように更新すればよいですか? ASP.NET Core 1.0のdeploy.cmdの実例を指摘できますか?

答えて

5

Azure CLIはすぐに更新されますが、kuduscript npmパッケージを使用して最新のものを直接使用することができます。使用してそれをインストールします。

npm install -g kuduscript 

あなたは、このようなものを使用してASP.NETコアスクリプト(必要に応じて名前を置き換える)を生成することができます

kuduscript -y --aspNetCore src\AspNetCoreVS\project.json -s AspNetCoreVS.sln 

をそれとも、ソリューションファイルを持っていない場合は、わずかに異なるスクリプトを生成するものはスキップすることができます。

一般的なケースでは、Kuduはスクリプトなしで物事を把握する必要があることに注意してください。カスタムスクリプトはもっと複雑な場合にのみ必要です。

+0

ありがとうございます!これは本当に私を助けました。私は.deploymentとdeploy.cmdの両方を削除しました。 - Kuduは簡単なテストレポのためにそれをすべて考え出しました。私のメインプロジェクトでは、ASP.NET Coreアプリケーションをサブフォルダに持っていました。その場合、カスタムの.deploymentファイルに "[config] project = server"と指定してkuduにそのプロジェクトを指摘しました。 – mikeesouth

関連する問題