【1 人アドベントカレンダー 2020】第 12 日目
だいぶアドベントカレンダーの趣旨からは外れてしまいますが、今年も 1 人アドベントカレンダー実施することにしました。
25 日まで毎日更新頑張ります!
qiita.com
今日の項目内容
Visual Studio で Azure 関数を開発、テスト、デプロイする
- Visual Studio を使用してローカルで簡単な Azure 関数を作成してテストする
- 演習 - Visual Studio を使用し、ローカルで簡単な Azure 関数を作成してテストする
- 簡単な Azure 関数を発行する
- 演習 - 簡単な Azure 関数を発行する
- 演習 - Azure 関数の単体テストを行う
学習内容まとめ
Visual Studio を使用してローカルで簡単な Azure 関数を作成してテストする
Azure 関数は静的クラスとして実装される。
このクラスでは、クラスのエントリポイントとして機能する Run
という静的な非同期メソッドが提供される。
以下の例のように、メソッドに渡すパラメータでトリガーのコンテキストを指定する。
public static class Function1 { [FunctionName("Function1")] public static async Task<IActionResult> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req, ILogger log) { log.LogInformation("C# HTTP trigger function processed a request."); string name = req.Query["name"]; string requestBody = await new StreamReader(req.Body).ReadToEndAsync(); dynamic data = JsonConvert.DeserializeObject(requestBody); name = name ?? data?.name; return name != null ? (ActionResult)new OkObjectResult($"Hello, {name}") : new BadRequestObjectResult("Please pass a name on the query string or in the request body"); } }
演習 - Visual Studio を使用し、ローカルで簡単な Azure 関数を作成してテストする
簡単な Azure 関数を発行する
Azure Functions を利用すると、App Service の継続的インテグレーションを使用して、関数アプリを簡単にデプロイできる。
Functions は BitBucket, Dropbox, GitHub, Azure DevOps と統合されている。
これにより、統合されたサービスのいずれかを使用して行われる関数コードの更新により Azure へのデプロイがトリガーされるワークフローが可能になる。
演習 - 簡単な Azure 関数を発行する
サンドボックスを用いて演習を行う。
演習 - Azure 関数の単体テストを行う
本日の内容は以上です。