サーバレス練習帳

着眼大局着手小局

Cloud9+Lambda+git hub

組み合わせて、使ってみよう。
以降、開発コードネームを(CODENAME)と書きますので、読み替えてください。

【1】Cloud9とgithubの準備

(1) Cloud9の環境を作る。
環境名 : (CODENAME)
サーバー : t2.micro
消滅 : Never (これ、一応、Cloud9のプリファレンスで後から設定変更できます。)

(2) Cloud9にgitのローカルリポジトリを作る。
こちらを参考に進めていきます。
Cloud9で作成したソースコードをGitHubに保存する手順 - Qiita

~/environment $ git init
Initialized empty Git repository in /home/ec2-user/environment/.git/
~/environment (master) $ 
~/environment (master) $ git add README.md
~/environment (master) $ git status
On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

        new file:   README.md
~/environment (master) $ git config --global user.name {name}
~/environment (master) $ git config --global user.email {email}

(3) githubリポジトリを作る。
⇒ こちらはWebからリポジトリを作れば良く、URLができるはず。

(4) リモートにgithubリポジトリを登録。
⇒ github側の名前をoriginと名付けた。

yasuda.wataru:~/environment (master) $ git remote add origin {url}

(5) さぁ、origin(guthub側)にmaster(Cloud9側)を登録しよう!

~/environment (master) $ git push origin master

よし、上手くいったっぽい。

【2】Lambdaの作成
Cloud9でLmbadaの+ボタンを押して、Lambda関数を作りましょう。
(1) LambdaとapigwをCloudFormationで作る。
app: (CODENAME)
func: tm
※次に、cmというアプリも追
加すると思う。
blueprint: empty-python
apigw: tm
apigw auth: AWS_IAM
role: automatically generating role

(2) Lambdaにコードを書く。
ちなみに、returnの中身はこんな感じじゃないとダメなんですよ。
Cloud9でAPI Gateway+Lambdaを爆速で作る ·

import json

def lambda_handler(event, context):
    # TODO implement
        return {
        'statusCode': 200,
        'headers': {
            "Access-Control-Allow-Origin": "*"
        },
        'body': json.dumps(event)
    }

(3) Lambdaを変更したらADDしてCOMMITしてPUSHしよう!

git add .
※このフォルダ以下を対象とする
git commit -m "(コミットコメント: どういう作業をしたか)"
git push