Figured it out with the push in the right direction from @helloV.
At the top of the python file put import os
Inside your function handler put the following:
configPath = os.environ['LAMBDA_TASK_ROOT'] + "/config.json"
print("Looking for config.json at " + configPath)
configContents = open(configPath).read()
configJson = json.loads(configContents)
environment = configJson['environment']
print("Environment: " + environment)
That bit right there, line by line, does the following:
- Get the path where the config.json file is stored
- Print that path for viewing in CloudWatch logs
- Open the file stored at that path, read the contents
- Load the contents to a json object for easy navigating
- Grab the value of one of the variables stored in the json
- Print that for viewing in the CloudWatch logs
Here is what the config.json looks like:
{
"environment":"dev"
}
EDIT
AWS lambda now supports use of environmental variables directly in the console UI. So if your use case is the same as mine (i.e. for a config file) you no longer need a config file.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…