ほりひログ

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

node.js

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

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

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 ではまだ使…

puppeteer を Azure Web Apps で動かす試み 2022

Microsoft Azure Tech Advent Calendar 、9 日目の記事。 以前書いた puppeteer を Docker コンテナーを使わずに Azure Web Apps で動かすネタ、3 年もたてばさすがにうまくいかないらしい。 だいぶ変わってそう (@n0bisuke さんが奮闘中) なので、 2022 年…

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

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

Web App に Node.js アプリをデプロイする GitHub Actions を速くする

Web App の [デプロイ センター] ブレードで、ソースコード等が置いてある GitHub レポジトリを選択すると、その Web App にデプロイするための GitHub Actions ワークフローを作成してくれる。 Node.js アプリの場合、既定では下記の yaml ファイルが GitHu…

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

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

Azure Web PubSub Public Preview

Azure Web PubSub がパブリック プレビューになりました。 docs.microsoft.com azure.github.io Azure Web PubSub って何? Azure 上で WebSocket サーバーをホスティングして、Web アプリケーションでの pub/sub が簡単にできるようにする PaaS サービスで…

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 って…

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

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

LINE Bot の Message をシンプルに扱いたい

はじめに 最近、LINE Bot で何か作れないか考えては、Echo ボットから先に進まない毎日です。 で、Echo ボットながらも、あーでもない、こーでもない、といろいろやっていると、 イベントタイプやステートの振り分けで、ネストが深くなりがちなる Webhook に…

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

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

puppeteer を Azure Web Apps で動かす試み

はじめに 久々の投稿が、半年前のこれの焼き増しで、 結論から言うと、アプローチまで同じです。 きっかけ ありませんでした。なので調べました。 調査 と言っても、ライブラリーの動作確認を Web Apps 側でやっていないでしょうが、GitHub や StackOverFlow…

node-fetch で、GETしたコンテンツをそのまま他所にPOSTする

当たり前すぎるのか、探し方が悪いのか、サンプルが見当たらなかったので、メモとして。 HTTP GET 等で取得したコンテンツを、他の URL に POST する際に、ローカルでファイル化しない方法がないか探してました。 で、行きついたのが下記のコード。 node-fet…