UNPKG

cdk-iot-greengrass-fleet-provisioning

Version:

CDK Construct for AWS IoT Greengrass Fleet Provisioning (with AWS IoT Certificates)

46 lines 6.79 kB
"use strict"; 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=