Hi! We're in the midst of just migrating to self h...
# prefect-community
z
Hi! We're in the midst of just migrating to self hosting prefect 2 (
2.7.8
) and I'm having some trouble with a 'permission denied' error when my pod (run via
KubernetesJob
) tries to run my deployment (using s3 storage block) The short version of the error is:
Copy code
Flow could not be retrieved from deployment.
Traceback (most recent call last):
...
File "/opt/env/lib/python3.9/site-packages/s3fs/core.py", line 1141, in _get_file
    with open(lpath, "wb") as f0:
PermissionError: [Errno 13] Permission denied: '/workdir/./src/hvac/__init__.py'
I can get it to go away if I give that
rw
permissions for every user before it gets uploaded to s3, but it seems strange that I should have to do this, so I feel like I must be missing something... Any help is appreciated, but also I'm just looking to understand better what prefect is actually doing when it spins up my pod. I understand that it downloads code from the storage block (S3 in my case), but I'm fuzzy on a few details: • What determines where the code gets downloaded to on the pod? Is it the
.path
of the Deployment? • Why does prefect need to attempt to write to the file in my error? My Deployment's
.entrypoint
is a completely different file (containing only my simple test flow) which has no outside dependencies beyond prefect. My understanding was that other files would only be read if they were imported in the entrypoint file? • What user on the pod is executing this code that is downloading from Storage, retrieving the flow, etc? Thanks for any info you can give!