2단계: Lambda 함수 업데이트 - AWS CodeDeploy

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

2단계: Lambda 함수 업데이트

이 주제에서는 myDateTimeFunction.js 파일을 업데이트합니다. 다음 단계에서는 이 파일을 사용하여 업데이트된 함수를 배포합니다. 이렇게 CodeDeploy 하면 Lambda 함수의 현재 버전에서 업데이트된 버전으로 프로덕션 트래픽을 전환하여 배포가 트리거됩니다.

Lambda 함수를 업데이트하려면
  1. myDateTimeFunction.js을(를) 엽니다.

  2. switch 블록에 있는 time이라는 case의 시작과 끝에서 두 개의 주석 마커("/*" 및 "*/")와 설명 텍스트를 제거합니다.

    주석 처리가 해제된 코드를 사용하면 새 파라미터인 time을 함수에 전달할 수 있습니다. time을 업데이트된 함수에 전달하면 이 함수는 현재 hour, minutesecond를 반환합니다.

  3. myDateTimeFunction.js을(를) 저장합니다. 이 템플릿은 다음과 같습니다.

    'use strict'; exports.handler = function(event, context, callback) { if (event.body) { event = JSON.parse(event.body); } var sc; // Status code var result = ""; // Response payload switch(event.option) { case "date": switch(event.period) { case "yesterday": result = setDateResult("yesterday"); sc = 200; break; case "today": result = setDateResult(); sc = 200; break; case "tomorrow": result = setDateResult("tomorrow"); sc = 200; break; default: result = { "error": "Must specify 'yesterday', 'today', or 'tomorrow'." }; sc = 400; break; } break; case "time": var d = new Date(); var h = d.getHours(); var mi = d.getMinutes(); var s = d.getSeconds(); result = { "hour": h, "minute": mi, "second": s }; sc = 200; break; default: result = { "error": "Must specify 'date' or 'time'." }; sc = 400; break; } const response = { statusCode: sc, headers: { "Content-type": "application/json" }, body: JSON.stringify( result ) }; callback(null, response); function setDateResult(option) { var d = new Date(); // Today var mo; // Month var da; // Day var y; // Year switch(option) { case "yesterday": d.setDate(d.getDate() - 1); break; case "tomorrow": d.setDate(d.getDate() + 1); default: break; } mo = d.getMonth() + 1; // Months are zero offset (0-11) da = d.getDate(); y = d.getFullYear(); result = { "month": mo, "day": da, "year": y }; return result; } };