フォルダー構造
$ tree -a
.
├── .env
├── function_update.sh
├── index.js
└── test_local.js
maria_delete/index.js
// ---------------------------------------------------------------// maria_delete/index.js//// Jun/07/2020//// ---------------------------------------------------------------varmysql=require('mysql2/promise')// ---------------------------------------------------------------asyncfunctionmain(id_in){console.error("id_in = "+id_in)consthost=`${process.env.host}`constuser=`${process.env.user}`constpassword=`${process.env.password}`constdata_base=`${process.env.data_base}`console.error("host = "+host)console.error("user = "+user)console.error("password = "+password)console.error("data_base = "+data_base)try{varconn=awaitmysql.createConnection({host:host,user:user,password:password,database:data_base})constcommand="delete from cities where id = '"+id_in+"'"console.error(command)console.error("*** before execute ***")awaitconn.execute(command)console.error("*** after execute ***")}catch(ee){console.log(ee)console.error("*** error *** main ***")console.error(ee)return''}finally{if(conn&&conn.connection){conn.end()console.error("*** 終了 ***")}}}// ---------------------------------------------------------------console.error("*** 開始 ***")exports.handler=async(event)=>{constkey_in=event['key']console.error(key_in)console.error("***** start maria_delete PM 16:14 ***")varrvalue={}rvalue['message']='Hello from maria_delete'awaitmain(key_in)constresponse={statusCode:200,body:JSON.stringify(rvalue),}console.error("***** end maria_delete ***")returnresponse}// ---------------------------------------------------------------
test_local.js
#! /usr/bin/node
// ---------------------------------------------------------------// maria_delete/test_local.js//// Jun/07/2020//// ---------------------------------------------------------------varmaria_delete=require('./')// ---------------------------------------------------------------console.error("*** 開始 *** test_local.js ***")constkey_in=process.argv[2]constevent={"key":key_in}rvalue=maria_delete.handler(event)console.log(rvalue)console.error("*** 終了 *** test_local.js ***")// ---------------------------------------------------------------
実行スクリプト
export NODE_PATH=/usr/lib/node_modules
node -r dotenv/config ./test_local.js t3323
AWS のプログラムを更新するスクリプト
function_update.sh
FUNCTION='maria_delete'ZIP_FILE=$FUNCTION".zip"#rm-f*.zip
#
zip -r$ZIP_FILE index.js
##
aws lambda update-function-code \--function-name$FUNCTION\--zip-file fileb://$ZIP_FILE#