def handler()

in SubTemplates/IoT/Lambdas/provision_device/app.py [0:0]


def handler(event, context):
    responseData = {}
    print(event)
    try:

        result = cfnresponse.FAILED
        if event['RequestType'] == 'Create':
            certificates = createBootstrapPolicy()
            createProductionPolicy()
            iotEndpoint = getIoTEndpoint()
            print('iotendpoint')
            client = createClient(certificates, iotEndpoint)
            print('client created')
            uploadClientToS3(certificates, client)
            print('client uploaded')
            #create provisioning templates
            prodTemplateBody = createTemplateBody('artifacts/provisioningTemplate.json')
            createTemplate(prodTemplateBody, prodTemplateName, prodLambdaHookArn)
            rotateTemplateBody = createTemplateBody('artifacts/certRotationTemplate.json')
            createTemplate(rotateTemplateBody, rotateTemplateName, rotateLambdaHookArn)
            createModelBootstraps()
            result = cfnresponse.SUCCESS
        elif event['RequestType'] == 'Update':
            #create provisioning templates
            print('UPDATE FIRED!')
            createModelBootstraps()
            result = cfnresponse.SUCCESS
        else:
            clearBootstrapPolicy()
            result = cfnresponse.SUCCESS

    except Exception as e:
        print('error', e)
        result = cfnresponse.FAILED

    sys.stdout.flush()
    print(responseData)
    cfnresponse.send(event, context, result, responseData)