web-dev-qa-db-ja.com

Visual Studioによって公開されたAzure関数の削除

Visual Studioを通じてAzure Functionを公開しました。公開済みのAzure関数を削除したいのですが、削除するボタンが無効になっています。 VSから公開されたAzure関数を削除する方法はありますか?

9
Shiju Samuel

VSからコードを発行した後、Azureポータルは関数を読み取り専用に設定して、事前にコンパイルされたアセットをポータルで編集できないようにします。

Webデプロイを使用する場合(Run from package fileをチェックしませんでした)、

enter image description here

2つの選択肢があります。

  1. ポータルですべての機能を直接削除します。ポータルで、Functionアプリを停止し、次にPlatform features> App Service Editorを停止し、Host.json以外のすべてを削除します。

    注:かつてもっともらしい解決策を提供しました--Platform features> Function app settingsFunction app edit modeRead/Writeに変更すると、削除ボタンをクリックできます。このようにして、特定の関数を削除できますが、実際に蓄積されて問題を引き起こす可能性のあるコンパイル済みのDLLは削除しませんでした。

  2. 次に新しい関数を公開するときに、古い関数をすべて削除します。公開パネルで、Manage Profile Settingsをクリックし、Remove additional files at destinationを確認します。

    enter image description here

公開時にRun from package fileをチェックした場合、それらの手段はどれも機能しません。再度公開するだけでなく、Platform features> Application settingsに移動し、[アプリケーションの設定]セクションでWEBSITE_RUN_FROM_PACKAGEを削除すると、関数アプリが空になります。詳細は パッケージから実行のアナウンス を参照してください。

このアプローチでは、ファイルも無音で蓄積されますが、新しい関数にエラーが発生することはありません。古いファイルを削除するには、Platform features> Advanced tools (Kudu)> Debug console(CMD)に移動し、d:\ home\data\SitePackagesに移動して、使用していないzipを削除します。

9
Jerry Liu

最も簡単な方法は、すべての関数を削除することです:

  1. 処理する関数アプリケーションのポータルで、WEBSITE_RUN_FROM_PACKAGEを0に変更します。
  2. これにより、指定したアプリケーションのポータルでスクリプト関数を作成できます
  3. 関数を1つ作成すると、このアクションにより、パッケージから取得した他のすべての関数が削除されます。
0
alex.peter