1

vNext のビルドとデプロイから Azure WebJob を実行する方法はありますか? 手動でトリガーされる Azure Web アプリ用の Web ジョブを作成しました。現在動作しており、実行時に dbscript.sql ファイルを読み取り、Web アプリのデータベースに対して実行します。これにより、データベースが効果的に更新されます。ここで、Web アプリを新しくビルドしてデプロイするたびにこの WebJob を実行したいと考えていますが、vNext ビルド定義でこれを実行する方法がわかりません。

ありがとう、ラス

4

1 に答える 1

0

デプロイ時に何かを呼び出す方法が必要になります。現在どのようにデプロイしているかはわかりませんが、git を使用していると仮定しましょう。バックエンドでは、Azure は git デプロイに Kudu を使用します。Kudu スクリプトをカスタマイズして、powershell コマンドレットを呼び出して項目をキューに追加し、それによって Web ジョブがトリガーされるようにする必要があります。 Git または Mercurialを使用して ASP.NET 5 アプリケーションを Azure Web アプリにデプロイするデプロイ後のフックと、Kuduのデプロイ後のフックを探します。

もっと簡単に試してみることの 1 つは、ドキュメントにあるように、(Web ジョブを使用するのではなく) Kudu のデプロイ後のフックでコードを呼び出すことです。

展開後のアクション フックを追加するには、単に必要です
スクリプト ファイル (.bat または .cmd) を配置するには
 サイト\展開\ツール\PostDeploymentActions.

展開をローカルで行っている場合は、展開後に azure-cli を使用して、 azure-cli チート シートから次のコマンドを使用して Web ジョブをトリガーします (ジョブとサイトの詳細を入力する必要があります)。

Azure サイトのジョブ開始

Web ジョブに戻る - 安静な方法で Web ジョブをトリガーすることはできないため、新しいキュー メッセージによって Web ジョブをトリガーする必要があります (その方法を選択した場合)。これは、powershell で実行できます。次の「 Azure Storage で Azure PowerShell を使用する」でメッセージをキューに挿入する方法を確認して ください。これにより、Web ジョブがトリガーされます。

最後に、ASP.NET 5 アプリである Web ジョブを実行し、必要に応じてそれをトリガーして、独自のアクションを実行することができます。その手段により、Web API で同じことを簡単に行うことができます。ただし、この場合は、キュー メッセージを介して Web ジョブをトリガーするか、azure-cli を使用するのが最適な場合があります。構成は比較的簡単です。

于 2015-11-23T06:32:12.143 に答える