Python
AWS
cloud9
lambda
AWSCloud9

AWS Cloud9でLambdaの作成、テスト、デプロイまでの手順まとめ

はじめに

2017/11/30にリリースされたAWSCloud9環境で
Lambdaに関する以下手順をまとめました。

  • AWS Cloud9にLambda作成
  • AWS Cloud9でローカルテスト
  • AWS Lambdaへデプロイ

AWS Cloud9の環境作成方法は以下記事で行っています。
AWS Cloud9を動かしてみた

AWS Cloud9にLambda作成

  1. AWS Cloud9の右側にAWS Resourcesタブがあるのでクリック
  2. 上にあるλ+マークをクリック。
    1.PNG

  3. ファンクション名、テンプレートを決めてNext

2.PNG
3.PNG

  1. トリガーは今回はnoneを選びました。

4.PNG

  1. メモリとロールを選択。

5.PNG

  1. FinishをクリックしてLambda functionの完成です

6.PNG

  1. 各種ファイルが出来ました。
    • 左にAWS Cloud9上の環境
    • 真ん中にLambdaのソース
    • 右上にAWS Cloud9のローカルにできたファイル
    • 右下にAWS Lambda上にできたファイル

7.PNG

  1. AWS Lambdaを確認。ローカル作成と同時に初回デプロイは完了していました。

8.PNG

AWS Cloud9でローカルテスト

AWS Cloud9上でハロワを書いて実行してみます。
テスト用のJSONファイルを作成し、実行。

  • 左側環境に「lambda-payloads.json」が自動で保存されました。
  • また、Function Logsに実行結果ログが表示されました。

※2017/12/02現在はLambda+pythonの場合ブレークポイントデバッグはできません。
公式サイトではNode.jsはデバッグ出来てるようです。

Debug the Local Version of a Lambda Function or Its Related API Gateway API

You can debug local Lambda function code or its related API Gateway API in your environment using common debugging aids such as breakpoints, stepping through code, and setting watch expressions.

Note
You cannot debug the remote version of a Lambda function or its related API Gateway API in your environment. You can only invoke it.
You cannot debug local Lambda function code that uses Python.

9.PNG

AWS Lambdaへデプロイ

右側「↑」をクリック。1アクションでAWS Lambdaへデプロイ完了。

12.PNG

AWS Lambdaのダッシュボードから編集内容が反映されていることを確認。

10.PNG

まとめ

  • AWS Cloud9を使いブラウザ上でLambda開発、テスト、デプロイができました。
  • クライアント端末の環境構築がいらない分Lambda開発のハードルが下がったと思います。