Когда я создаю лямбда-слой AWS, все содержимое / модули моего zip-файла переходят на /opt/
при запуске лямбда-AWS. Это легко становится громоздким и разочаровывающим, потому что я должен использовать абсолютный импорт для всех моих лямбд. Пример:
import json
import os
import importlib.util
spec = importlib.util.spec_from_file_location("dynamodb_layer.customer", "/opt/dynamodb_layer/customer.py")
module = importlib.util.module_from_spec(spec)
spec.loader.exec_module(module)
def fetch(event, context):
CustomerManager = module.CustomerManager
customer_manager = CustomerManager()
body = customer_manager.list_customers(event["queryStringParameters"]["acquirer"])
response = {
"statusCode": 200,
"headers": {
"Access-Control-Allow-Origin": "*"
},
"body": json.dumps(body)
}
return response
Так что мне было интересно, возможно ли добавить эти / opt / paths в переменную окружения PATH заранее через serverless.yml? Таким образом, я мог бы просто from dynamodb_layer.customer import CustomerManager
вместо этого чудовищного уродства.