Sign up to take part
Registered users can ask their own questions, contribute to discussions, and be part of the Community!
Registered users can ask their own questions, contribute to discussions, and be part of the Community!
I've built a python API endpoint that uses a certain code environment.
In the resources folder of that code environment is a file.
If I run the API code in a notebook using that code env, I'm able to access that file. But when I run Test queries in the API Designer, the file cannot be found. The code used is the same in both instances.
It seems when you run Test Queries, a temporary API node is created which the queries are then run against. However the file from the code env resource directory seems to not be copied to that temp instance.
What am I doing wrong?
I store the path to the resource directory in an environment variable in the code env using a resource script, which stores the relative path. I have "Run resources initialization script on API node." checked.
# Set data cache directory
set_env_path("CERT_CACHE", "certificate")
# Grant everyone read access to files in folder
grant_permissions(os.getenv("CERT_CACHE"))
When I read that variable from a notebook using the code env by running os.getenv("CERT_CACHE") it reads
/var/dss_data/code-envs/resources/python/Python37_nn_api/certificate/
and when I run Test Queries in the API Designer it reads as
/var/dss_data/tmp/apinode-devserver/services/FRMAPI/gens/FRMAPI5250601358624916284/endpoint-frm_api/python-env-live/resources/certificate/
Operating system used: Windows
I managed to find a workaround.
Still interested to know if it's possible for APIs to "inherit" files in the code env resource directory if they were manually added.