I am building a site using Gatsby & Netlify with Netlify Build. The site uses Netlify Functions to interact with Google Sheets via Google’s API.
Google’s API requires me to configure an environment variable (called GOOGLE_APPLICATION_CREDENTIALS) that has the path to the json credentials file provided by Google, which I’ve done using Netlify’s dashboard.
Setting this environment variable as something like “./myFunctionsFolder/myFunctionName/my_credentials_file.json” works well locally with Netlify Dev, but fails in production. The function call in production outputs an error message saying that the file does not exist:
Error: The file at ./myFunctionsFolder/myFunctionName/my_credentials_file.json does not exist, or it is not a file. ENOENT: no such file or directory, lstat ‘/var/task/functions’.
Is there a way to resolve this difference between dev vs. production while keeping the credential file private?
(if needed - Google’s node js API: https://github.com/googleapis/google-api-nodejs-client#service-to-service-authentication)