[MsDeploy] .Net Core部署
問題
使用MsDeploy.exe發行
1.使用MsBuild封裝成Package
msbuild.exe /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:configuration=Release /p:SkipInvalidConfigurations=true "D:\NetCoreMsdeploy\NetCoreMsdeploy.sln"
輸出結果如下2.使用MsDeploy.exe發行
msdeploy.exe -source:package='D:\NetCoreMsdeploy\src\NetCoreMsdeploy\bin\Release\MSDeployPackage\NetCoreMsdeploy.zip' -dest:auto,ComputerName='http://your-ap/MsDeployAgentService',UserName='x',Password='x',IncludeAcls='False',AuthType='Basic' -verb:sync -retryAttempts:20 -disablerule:BackupRule -setParam:kind=ProviderPath,scope=iisApp,value=net.kim.info -enablerule:AppOffline
這裡要注意的是-setParam:kind=ProviderPath,scope=iisApp,value=net.kim.info,此為指定目的地的Site名稱,其他文章介紹的方式,大部分為-setParam:'IIS Web Application Name..,該方式是配合之前的.Net Framework Web程式在發行時所產生的SetParameter.xml所使用,在.Net Core並沒有該檔案,當然你也可以自己手動產生一個...。
3.補充
若不使用上述第2點的-setParam指定的話,也可以使用-dest:manifest:使用xml定義檔,參考如下:將-dest:auto 改成-dest:manifest="NetCoreMsdeploy.xml"
NetCoreMsdeploy.xml
執行訊息
參考來源
http://stackoverflow.com/questions/37869701/how-do-i-deploy-net-core-rc2-projects-via-msbuild-msdeploy