lambda-cicd-workshop

フェーズ6: Lambda関数をAWS CLIでデプロイ

このフェーズでは、LambdaデプロイのGitHub Actions化に向けて、AWS CLIでローカル環境からAWSへLambda関数をデプロイします。前のフェーズで aws login による認証は済んでいる前提です。

CLIでLambda関数をデプロイする

手順1: ソースコードを変更する

デプロイの変化を確認できるよう、src/index.py のメッセージを変更します。

def handler(event, context):
    return {"statusCode": 200, "body": "hello, deploy!"}

手順2: コードをZipにまとめる

cd src
zip lambda.zip index.py

手順3: Lambda関数のコードを更新する

aws lambda update-function-code \
  --function-name hello-world \
  --zip-file fileb://lambda.zip \
  --profile cli-profile

手順4: コンソールでテスト実行する

AWSコンソールでLambda関数を開き、テスト実行してください。以下のレスポンスが返り、コードの変更が反映されていることを確認できます。

{"statusCode": 200, "body": "hello, deploy!"}

このフェーズのポイント

Zip版Lambda関数のデプロイでは2つの操作を行います。

  1. Lambda関数のソースコードをzipにまとめる
  2. Lambda関数のコードをAPIで更新

参考リンク

次のステップ

次のフェーズでは、この手動デプロイをGitHub Actionsで自動化します。ただし、GitHubに aws login をさせるわけにはいきません(ブラウザでログインする人間がいないので)。そこで登場するのがOIDCです。

フェーズ7: OIDC に進みましょう。