1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Azure Functionsのpublishで、デプロイ後の「トリガーの同期」だけ実行されない場合の対処

Last updated at Posted at 2024-10-31

現象

Azure Functionsをfunc azure functionapp publishでパブリッシュする際、
処理は「デプロイ」「トリガーの同期」の二段階で進みます。

  • デプロイ開始:Starting the function app deployment...
  • デプロイ終了:Deployment completed successfully.
  • トリガーの同期開始:Syncing triggers...
  • トリガーの同期終了:緑色で各種URLが表示される

CleanShot 2024-10-31 at 10.23.47@2x.png

しかし稀に、「デプロイは成功して、そのままトリガーの同期に進まずに終わってしまう」という場合があります。
以下のスクショのように「Syncing triggers...」が始まらない。

CleanShot 2024-10-31 at 10.22.24@2x.png

特にエラーが出るわけでもなく、ただ「デプロイのみ実行して満足している」状態。publish全体は完了しておらずfunctionは古いままになるんですが、エラーが出ないせいで問題の原因が特定しづらく、非常に困ります。

回避方法

一旦は「handler関数の中身をちょっといじって再デプロイすればOK」でした。

CleanShot 2024-10-31 at 10.40.04@2x.png

例えば↑のように、handler関数内から別の自作モジュールをimportして、
その関数を呼び出すことはよくあると思うんですよね。
この場合、import先(この場合はmain)を修正してもトリガーの同期はされないままでした。
handler関数(この場合はExampleFuncHTTP)の直下を修正してあげると、
それによって「トリガーに変更があったので同期する!」とスイッチが入るようですね。

根本原因と対策は・・・

なんかもっと、本質的な部分で根本原因と対策がありそうな予感はしています。
根本対処など詳しい方いらっしゃれば、コメントお待ちしてます!
しかし、もうちょっとAzure側でなんとかしてほしいところではありますよね。。

参考サイト

Azure Functions のトリガーの同期とは - Japan Azure PaaS Support Team
Azure FunctionsでPrismaを使おうとしたらcli からのデプロイでドハマりしたメモ
【Azure】(Syncing triggers...)で関数アプリが同期できない

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?