cdk-iot-greengrass-fleet-provisioning
Version:
CDK Construct for AWS IoT Greengrass Fleet Provisioning (with AWS IoT Certificates)
46 lines • 6.79 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.handler = void 0;
const greengrass_fleet_provisioning_1 = require("./greengrass-fleet-provisioning");
const handler = async (event, context, _callback) => {
const response = {
StackId: event.StackId,
RequestId: event.RequestId,
LogicalResourceId: event.LogicalResourceId,
PhysicalResourceId: context.logGroupName,
Status: 'SUCCESS',
};
console.log(`RequestType : ${event.RequestType}`);
try {
if (event.RequestType === 'Create') {
response.Data = await (0, greengrass_fleet_provisioning_1.createResource)(event.ResourceProperties);
response.PhysicalResourceId = response.Data.certificateId;
}
else if (event.RequestType === 'Delete') {
response.Data = await (0, greengrass_fleet_provisioning_1.deleteResource)(event.ResourceProperties, event.PhysicalResourceId);
response.PhysicalResourceId = event.PhysicalResourceId;
}
else if (event.RequestType === 'Update') {
response.PhysicalResourceId = event.PhysicalResourceId;
// response.Data = await deleteResource(event.ResourceProperties);
// response.Data = await createResource(event.ResourceProperties);
}
else {
throw new Error('Received invalid request type');
}
}
catch (err) {
console.error(`catching error : ${err}`);
const reason = err.message;
response.Status = 'FAILED';
response.Reason = reason;
throw new Error(`Received an exception with the following message: ${reason}`);
// @ts-ignore
response.PhysicalResourceId = event.PhysicalResourceId || LogicalResourceId;
}
console.log('Response:');
console.log(`${JSON.stringify(response)}`);
return response;
};
exports.handler = handler;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZnVuY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXguZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBT0EsbUZBQWlGO0FBRzFFLE1BQU0sT0FBTyxHQUFHLEtBQUssRUFDMUIsS0FBaUQsRUFDakQsT0FBZ0IsRUFDaEIsU0FBbUIsRUFDaUIsRUFBRTtJQUN0QyxNQUFNLFFBQVEsR0FBOEI7UUFDMUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1FBQ3RCLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztRQUMxQixpQkFBaUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCO1FBQzFDLGtCQUFrQixFQUFFLE9BQU8sQ0FBQyxZQUFZO1FBQ3hDLE1BQU0sRUFBRSxTQUFTO0tBQ2xCLENBQUM7SUFFRixPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUVsRCxJQUFJLENBQUM7UUFDSCxJQUFJLEtBQUssQ0FBQyxXQUFXLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDbkMsUUFBUSxDQUFDLElBQUksR0FBRyxNQUFNLElBQUEsOENBQWMsRUFBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUMvRCxRQUFRLENBQUMsa0JBQWtCLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDNUQsQ0FBQzthQUFNLElBQUksS0FBSyxDQUFDLFdBQVcsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUMxQyxRQUFRLENBQUMsSUFBSSxHQUFHLE1BQU0sSUFBQSw4Q0FBYyxFQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUN6RixRQUFRLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDO1FBQ3pELENBQUM7YUFBTSxJQUFJLEtBQUssQ0FBQyxXQUFXLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDMUMsUUFBUSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQztZQUN2RCxrRUFBa0U7WUFDbEUsa0VBQWtFO1FBQ3BFLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQ25ELENBQUM7SUFDSCxDQUFDO0lBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLE9BQU8sQ0FBQyxLQUFLLENBQUMsb0JBQW9CLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDekMsTUFBTSxNQUFNLEdBQUksR0FBd0IsQ0FBQyxPQUFPLENBQUM7UUFDakQsUUFBUSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUM7UUFDM0IsUUFBUSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxREFBcUQsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUMvRSxhQUFhO1FBQ2IsUUFBUSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxrQkFBa0IsSUFBSSxpQkFBaUIsQ0FBQztJQUM5RSxDQUFDO0lBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN6QixPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDM0MsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyxDQUFDO0FBekNXLFFBQUEsT0FBTyxXQXlDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlRXhjZXB0aW9uIH0gZnJvbSAnQHNtaXRoeS9zbWl0aHktY2xpZW50JztcbmltcG9ydCB7XG4gIENka0N1c3RvbVJlc291cmNlRXZlbnQsXG4gIENka0N1c3RvbVJlc291cmNlUmVzcG9uc2UsXG4gIENvbnRleHQsXG4gIENhbGxiYWNrLFxufSBmcm9tICdhd3MtbGFtYmRhJztcbmltcG9ydCB7IGNyZWF0ZVJlc291cmNlLCBkZWxldGVSZXNvdXJjZSB9IGZyb20gJy4vZ3JlZW5ncmFzcy1mbGVldC1wcm92aXNpb25pbmcnO1xuaW1wb3J0IHsgUmVzb3VyY2VQcm9wZXJ0aWVzIH0gZnJvbSAnLi9ncmVlbmdyYXNzLWZsZWV0LXByb3Zpc2lvbmluZy90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVyID0gYXN5bmMgKFxuICBldmVudDogQ2RrQ3VzdG9tUmVzb3VyY2VFdmVudDxSZXNvdXJjZVByb3BlcnRpZXM+LFxuICBjb250ZXh0OiBDb250ZXh0LFxuICBfY2FsbGJhY2s6IENhbGxiYWNrLFxuKTogUHJvbWlzZTxDZGtDdXN0b21SZXNvdXJjZVJlc3BvbnNlPiA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlOiBDZGtDdXN0b21SZXNvdXJjZVJlc3BvbnNlID0ge1xuICAgIFN0YWNrSWQ6IGV2ZW50LlN0YWNrSWQsXG4gICAgUmVxdWVzdElkOiBldmVudC5SZXF1ZXN0SWQsXG4gICAgTG9naWNhbFJlc291cmNlSWQ6IGV2ZW50LkxvZ2ljYWxSZXNvdXJjZUlkLFxuICAgIFBoeXNpY2FsUmVzb3VyY2VJZDogY29udGV4dC5sb2dHcm91cE5hbWUsXG4gICAgU3RhdHVzOiAnU1VDQ0VTUycsXG4gIH07XG5cbiAgY29uc29sZS5sb2coYFJlcXVlc3RUeXBlIDogJHtldmVudC5SZXF1ZXN0VHlwZX1gKTtcblxuICB0cnkge1xuICAgIGlmIChldmVudC5SZXF1ZXN0VHlwZSA9PT0gJ0NyZWF0ZScpIHtcbiAgICAgIHJlc3BvbnNlLkRhdGEgPSBhd2FpdCBjcmVhdGVSZXNvdXJjZShldmVudC5SZXNvdXJjZVByb3BlcnRpZXMpO1xuICAgICAgcmVzcG9uc2UuUGh5c2ljYWxSZXNvdXJjZUlkID0gcmVzcG9uc2UuRGF0YS5jZXJ0aWZpY2F0ZUlkO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuUmVxdWVzdFR5cGUgPT09ICdEZWxldGUnKSB7XG4gICAgICByZXNwb25zZS5EYXRhID0gYXdhaXQgZGVsZXRlUmVzb3VyY2UoZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLCBldmVudC5QaHlzaWNhbFJlc291cmNlSWQpO1xuICAgICAgcmVzcG9uc2UuUGh5c2ljYWxSZXNvdXJjZUlkID0gZXZlbnQuUGh5c2ljYWxSZXNvdXJjZUlkO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuUmVxdWVzdFR5cGUgPT09ICdVcGRhdGUnKSB7XG4gICAgICByZXNwb25zZS5QaHlzaWNhbFJlc291cmNlSWQgPSBldmVudC5QaHlzaWNhbFJlc291cmNlSWQ7XG4gICAgICAvLyByZXNwb25zZS5EYXRhID0gYXdhaXQgZGVsZXRlUmVzb3VyY2UoZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzKTtcbiAgICAgIC8vIHJlc3BvbnNlLkRhdGEgPSBhd2FpdCBjcmVhdGVSZXNvdXJjZShldmVudC5SZXNvdXJjZVByb3BlcnRpZXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1JlY2VpdmVkIGludmFsaWQgcmVxdWVzdCB0eXBlJyk7XG4gICAgfVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBjb25zb2xlLmVycm9yKGBjYXRjaGluZyBlcnJvciA6ICR7ZXJyfWApO1xuICAgIGNvbnN0IHJlYXNvbiA9IChlcnIgYXMgU2VydmljZUV4Y2VwdGlvbikubWVzc2FnZTtcbiAgICByZXNwb25zZS5TdGF0dXMgPSAnRkFJTEVEJztcbiAgICByZXNwb25zZS5SZWFzb24gPSByZWFzb247XG4gICAgdGhyb3cgbmV3IEVycm9yKGBSZWNlaXZlZCBhbiBleGNlcHRpb24gd2l0aCB0aGUgZm9sbG93aW5nIG1lc3NhZ2U6ICR7cmVhc29ufWApO1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICByZXNwb25zZS5QaHlzaWNhbFJlc291cmNlSWQgPSBldmVudC5QaHlzaWNhbFJlc291cmNlSWQgfHwgTG9naWNhbFJlc291cmNlSWQ7XG4gIH1cbiAgY29uc29sZS5sb2coJ1Jlc3BvbnNlOicpO1xuICBjb25zb2xlLmxvZyhgJHtKU09OLnN0cmluZ2lmeShyZXNwb25zZSl9YCk7XG4gIHJldHVybiByZXNwb25zZTtcbn07XG4iXX0=