in 1-app-deploy/ride-controller/initDB/app.js [36:86]
function sendResponse (event, context, responseStatus, responseData) {
return new Promise((resolve, reject) => {
console.log('Sending response ' + responseStatus)
const responseBody = JSON.stringify({
Status: responseStatus,
Reason: 'See the details in CloudWatch Log Stream: ' + context.logStreamName,
PhysicalResourceId: context.logStreamName,
StackId: event.StackId,
RequestId: event.RequestId,
LogicalResourceId: event.LogicalResourceId,
Data: responseData
})
console.log('RESPONSE BODY:\n', responseBody)
const https = require('https')
const url = require('url')
const parsedUrl = url.parse(event.ResponseURL)
const options = {
hostname: parsedUrl.hostname,
port: 443,
path: parsedUrl.path,
method: 'PUT',
headers: {
'content-type': '',
'content-length': responseBody.length
}
}
console.log('SENDING RESPONSE...\n')
const request = https.request(options, function (response) {
console.log('STATUS: ' + response.statusCode)
console.log('HEADERS: ' + JSON.stringify(response.headers))
// Tell AWS Lambda that the function execution is done
resolve()
})
request.on('error', function (error) {
console.log('sendResponse Error:' + error)
// Tell AWS Lambda that the function execution is done
reject()
})
// write data to request body
request.write(responseBody)
request.end()
})
}