2段階で展開できました。まず、MSBuildの使用してzipパッケージを作成します。
msbuild FunctionApp.sln /p:Configuration=Release /p:DeployOnBuild=true
/p:WebPublishMethod=Package /p:PackageAsSingleFile=true
/p:SkipInvalidConfigurations=true
/p:DesktopBuildPackageLocation="c:\output.zip" /p:DeployIisAppPath="Default Web Site"
次に、パッケージは、Azureブロブストレージにアップロードする必要があります(SASトークンなど) をそして、私はパッケージと展開時をダウンロードAzureのAppServiceの場合msdeploy拡張を利用しましたAzure機能サービスに入力してください:
{
"apiVersion": "2015-08-01",
"type": "Microsoft.Web/sites",
"name": "[variables('functionAppName')]",
"kind": "functionapp",
"dependsOn": [
...
],
"properties": {...},
"resources": [
{
"name": "MSDeploy",
"type": "extensions",
"location": "[resourceGroup().location]",
"apiVersion": "2015-08-01",
"dependsOn": [
"[concat('Microsoft.Web/sites/', variables('functionAppName'))]"
],
"tags": {
"displayName": "webDeploy"
},
"properties": {
"packageUri": "[concat(parameters('_artifactsLocation'), '/', parameters('webDeployPackageFolder'), '/', parameters('webDeployPackageFileName'), parameters('_artifactsLocationSasToken'))]",
"dbType": "None",
"connectionString": "",
"setParameters": {
"IIS Web Application Name": "[variables('functionAppName')]"
}
}
}
]
},
Azure Resource Managerがパッケージにアクセスできることを確認してください!
おかげジェレミー応答のために:
ここで、この機能の完全な記事があります。私がGITのアプローチで持っている最初の問題は、私の関数がJavaScriptでさえcsxでさえないということです。私の関数プロジェクトは、Microsoft.NET.Sdk.Functionsに基づく.netアプリケーションです。ですから、クローンしたgitにはbinフォルダとfunction.jsonが含まれています。したがって、ビルドサーバーは、コミット/プッシュする前にプロジェクトを最初に構築する必要があります。コマンドラインとは何ですか?私のC#コードをコミットすればAzureアプリケーションサービスがプロジェクトをビルドしますか? –
はい、デプロイメントの詳細を指定するには、.deploymentファイルを追加します。これに問題がある場合は教えてください:https://github.com/projectkudu/kudu/wiki/Customizing-deploymentsあなたのプロジェクトやソリューションを指定するセクションを探してください。 –