AWS Lamda (C#)でデバッグ時に環境変数を使う

2021年8月2日月曜日

AWS C#

t f B! P L

C# と VSCode で AWS Lamda 開発を行う時に、API キーなどの環境変数をデバッグ環境とデプロイ環境で設定する方法を紹介する。

環境

  • 開発ツール:VSCode
  • デバッグツール:AWS .NET Core 3.1 Mock Lambda Test Tool
  • SDK:Amazon.Lambda.Core 2.0.0

デバッグ時の環境変数

ローカルでデバッグする時の環境変数は launch.json ファイルに記述する。

envタグを作り、そこに "環境変数名": "値"の形式で環境変数を複数宣言できる。

{
  "version": "0.2.0",
  "configurations": [
      {
          "name": "AWS Lamda Test",
          "type": "coreclr",
          "request": "launch",
          "preLaunchTask": "build",
          "program": "~/.dotnet/tools/dotnet-lambda-test-tool-3.1",
          "args": [],
          "cwd": "${workspaceFolder}\\src\\${workspaceFolderBasename}\\bin\\Debug\\netcoreapp3.1",
          "console": "internalConsole",
          "stopAtEntry": false,
          "internalConsoleOptions": "openOnSessionStart",
          "env": {
              "SEND_API_KEY": "<値>",
              "DATABASE_NAME": "<値>"
          }
      }
  ]
}

デプロイ環境の環境変数

デプロイ時(AWS上で動かす時)の環境変数は、AWSの管理コンソールから設定する。

コンソールで対象となる Lamda の関数を開き、[設定] → [環境変数] → [編集]の順に選択する。

キー(環境変数名)と値を入力し [保存] をクリックすると、対象の Lamda の実行時に設定した環境変数が読み取れる。

まとめ

C# + VSCode + AWS Lamda の開発で、デバッグ環境とデプロイ環境でそれぞれ環境変数を宣言する方法を見てきました。特にデバッグ環境では launch.json に環境変数を宣言することを忘れそうなので、メモしておこう。

スポンサーリンク

QooQ