🙅♂️
python -c "import lambda_function; lambda_handler(None, None)"
🙆♂️
python -c "import lambda_function; lambda_function.lambda_handler(None, None)"
検索して上位に出てくる方法では上手くいかない。
前提と詳細
ファイル名 lambda_function.pyの中に次のような関数が定義されているとする。
これはシンプルなAWS Lambda関数の実装を想定している。
def lambda_handler(event, context): return { 'isBase64Encoded': False, 'statusCode': 200, 'headers': {}, 'body': '{"result":"ok"}', }
この関数をシェルから実行するためには次のようにする。
python -c "import lambda_function; lambda_function.lambda_handler(None, None)"
検索して上位に出てくる次の呼び出し方ではエラーになる。
# 注意!ダメな方法 $python -c "import lambda_function; lambda_handler(None, None)" Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'lambda_handler' is not defined