ほりひログ

所属組織の製品 (Azure とか) に関連する内容が多めだけど、個人の見解であって、所属組織を代表する公式情報ではないです。

azure functions

Azure Functions/App Serviceでリモートビルドする時は、node_modulesを入れるな!

Azure Functions/App Service(以下、「Azure側」と書く。長いので。)へのデプロイで、デプロイパッケージのサイズを減らすために、リモートビルド時にnode_modulesをデプロイしない、というのは割とわかりやすい理由。 一方で、リモートビルド自体が失敗する…

Azure Functions on Azure Container Apps

Kubernetes で Azure Functions が動くなら*1 Azure Container App でも動く?と思って勢いでやってみたら、割と簡単に動いた。 リソース構成 あまり普段意識しない子リソースがいくつかあって少しごちゃごちゃしてるけど、デプロイするリソース (「MCR」以…

Azure Functions Node.js Framework v4 で作った関数を Azure 上にデプロイする

以前のエントリーで「新しいプログラミング モデル」と書いてたもの、どうやら 「Azure Functions Node.js Framework v4」というらしい。 github.com 長いので以下 V4 と書く。 Visual Studio Code の Azure Functions 拡張機能が、V4 用のテンプレートを作…

Azure Functions で Top-Level await は使えるのか? New Programming model 編

Microsoft Azure Tech Advent Calendar 2022 の 3 つ目?の 23 日目。 はじめに Azure Functions の Node.js ランタイムで新しいプログラミング モデル*1の開発が進んでいるのは以前のエントリーの通り。 uncaughtexception.hatenablog.com Azure ではまだ使…

Azure Functions Node.js の新しいプログラミング モデル

ここの issue で議論されてた新しいプログラミング モデル、情報がまとまって試せるものが出てきたのでローカル PC 環境で動かしてみた。 github.com 注意 : 2022 年 9 月現在、まだ "internal testing" phase (パブリック プレビューですらない) で議論中な…

Pre release 版 Azure Functions Runtime を動かす

以前から Pre release 版の Azure Functions Runtime を試そうとしては失敗してたが、ここにヒント(というかそのものずばり)があったので、その構築手順をまとめる。 Pre release 版? まだ Azure Functions 上にリリースされていないランタイム*1。 なの…

Azure Functions in Javascript (Node.js) で SQL binding を試した

C# だけに来てた Azure Functions の SQL binding が、Javascript/Typescript (Node.js) でも動くようになったらしい*1ので試してみた。 https://github.com/Azure/azure-functions-sql-extension/releases/tag/v.0.1.304-preview 何ができるのか Input/Outp…

オレ流 Azure RBAC のカスタム ロールの作り方 (2) ~ VNET 統合の場合

今回はですね、こちらのオレ流 Azure RBAC のカスタム ロールの作り方 (1)の手順を使って、App Service (Web Apps や Function App)の VNET 統合を Azure CLI から設定できるカスタム ロールを作ってみますよ。 VNET 統合は App Service だけでなく、VNET/Su…

Azure Functions & Node.js で async 関数の中で context.done を呼ぶのはやめた方がいいよ、という話

Azure Functions V4 が Public Preview になりました azure.microsoft.com で、このエントリーは V4 とは全く関係ないですが、Azure Functions での関数実装について、最近気になったことをいくつかのところで目にしたので書いてみました。 context オブジェ…

Azure Functions でBlob 作成をトリガーに関数を実行するパターン

先日、社内の Hack イベントに参加しました。 その中で、課題シナリオの一部に ‐ Storage Account の Blob コンテナーへの保存をトリガーに、Azure Functions の関数で処理を実行する という要件があり、改めていくつかの方式を調べて比較したので、まとめて…

Visual Studio Code で Azure Functions のデバッグができなくなった(けど直った)話

あまり需要はなさそうだけど記録用に*1。 はじめに タイトルの通り、ふと気づいたら Visual Studio Code 上で開発する Azure Functions のプロジェクトで、デバッグができなくなっていました。 症状としては、Node.js の関数プロジェクトを作りデバッグを開…

Function App から全ての接続文字列から解放してみた (かった)

Microsoft Build 2021 先週やってました。 が、App Service や Azure Functions 関連のセッションは少なかったですね。。。 アップデートとしてはこのあたりです。 GA App Service Managed Certificates Azure Static Web Apps PowerShell Durable Functions…

GitHub Codespaces を使って、Web ブラウザーだけで Static Web Apps アプリを開発/デバッグしてみる

Azure Static Web Apps ついに、一般提供を開始しました! azure.microsoft.com サポート エンジニア時代にいたチームはこの製品も担当していたので、割と早い段階 (パブリック プレビュー開始の前あたり) から知っている製品でした。 でも正直「静的ファイ…

VS code extension に初トライ!!

初めての VS code extension 開発 Hello World extension しか作ったことがなかったので、普通に使うもの(自分が、ね)を想定してチャレンジ。 主に下の教科書と公式サイトを行ったり来たりしてた感じ。 # 今年の2月からは、本業 (VS code とは関係ないけど…

Azure Functions で Top-Level await は使えるのか?

ことのいきさつ AWS Lambda が Node.js v14 をサポートしたらしいです。 そのニュースを見て、「そういえば Azure Functions はどのバージョンが動いているんだっけ?」と確認してみると、既に Node.js v14.15.4 が最新のようでした。 でも Node.js v14 って…

Bot Framework v4 を Azure Functions で使ってみる

仕事の Teams にボットでも作ろうかと思い、初めて Bot Framework SDK を使ってみました。 実は Teams のボットは Outgoing Webhook でも作れます。 しかし、Outgoing Webhook に対するボット アプリからのメッセージは、その Webhook リクエストに対するレ…

VScode の Dev Container がいい感じだった

VSCode の Dev Container 開発に必要な環境を全部コンテナーの中に押し込むことで、開発時の環境差がなくなる素敵な仕組みです (当然Dockerが必要ですが) 。 詳しい説明は公式ドキュメントで。 code.visualstudio.com 今回 (だいぶ周回遅れで) この Dev Cont…

Azure Functions (Linux) で Puppeteer が使えるようになってた

※ App Service プランでの動作について追記しました はじめに タイトルの通り、Azure Functions (Linux) で Headless Browser が動作するようになりました。 # お、Extension Bundles v2 なんてのもあった youtu.be どこかで見た話題かと思ったら、大体 1 年…

Azure App Service / Functions で OpenID Connect を試す

Azure App Service が OpenID Connect による認証を (プレビューですが) サポートしたので、試してみました。 # といっても、元ネタは、Azure Functions の PM である Anthony Chu の下記ブログに書いてある内容で、ほぼ「追試」です。 dev.to 公式ドキュメ…

Deno と Azure App Service (Functions 含む) の現状

少し前に Deno 1.2.0 がリリースされていました。 このリリースで、Windows 版のAzure App Service での動作が改善しました。 # Linux 版の App Service では、これまでのリリースでも問題ありませんでしたが。 具体的には 下記の 2 つの issue です。 ユー…

Azure Functions ⚡ 上で Deno 🦕 を使う denofunc を試してみた + おまけ

denofunc denofunc は Azure Functions の PM である Anthony Chu が OSS で公開している、Deno を Azure Functions で動かすためのユーティリティーです。 github.com カスタム ハンドラーの仕組みを使っています。 今のところ、Deno v1.0.2 での動作が確認…

Azure Functions の custom handlers で Deno を動かした

Azure Functions に custom handlers がやってきたので、(決まりに従えば) お好みのランタイムで Azure Functions が使えるようになりました。 例によって Deno で試してみたところ、ぽつぽつハマったので、まとめたいと思います。 Deno on Azure Functions …

Azure Functions に custom handlers がやってきた。

やりました! Azure Functions でオフィシャル サポート言語 (C#, Javascript, Java, Python, PowerShell, F#) 以外の言語 (以下 custom handler) が (プレビューながら) 使えるようになりました! Announcing the preview of custom handlers! You can now …

続々 Azure Functions の python 関数で OpenCV を使う

「またかよ」て言わないでください。 前回の記事の終わりに書いた残る謎、 なぜ LD_LIBRARY_PATH で指定したネイティブ ライブラリーをロードしてくれないのか これについて、記事投稿後に上げた issue が半月以上放置されていましたが、突然 Python 強いマ…

続 Azure Functions の python 関数で OpenCV を使う

振り返り 前の記事で「Azure Functions の python 関数で OpenCV を使いたい場合は、カスタム コンテナーを使いましょう」と結びましたが、カスタム コンテナーの利用には App Service プランが必要なため、お金の面で考えると、少しためらいが。 しかも従量…

Azure Functions の python 関数で、OpenCV を使う

はじめに Azure Functions で、Python&OpenCV を使うためのメモです。 # 夜中の変なテンションで書き始めたので、所々おかしい部分があるかもしれません。 いきなり結論 カスタム コンテナー を使いましょう。 苦難の道のり 今回のゴールは、 import cv2 こ…

Azure Functions の関数内で Key を取得する

はじめに 需要があるのかないのか、怪しいエントリーです。 Function App 内にある HTTP トリガー関数の実行時に、別の関数を HTTP トリガーで実行するために必要なコードを取得してみます。 # ちょっと何言っているかわからないかもしれませんが。。。 本題…