https://prefect.io logo
Title
m

Mars

08/11/2022, 4:58 PM
Hi, I’m trying to deploy a trivial flow in Prefect 2.0 using S3 and the RemoteFileSystem storage block. The block is properly registered with Orion. For some reason
prefect deployment build
gives me a deployment YAML, but is no longer producing the manifest JSON file. It’s only producing the deployment YAML. How can I debug this? Here is the build command used:
prefect deployment build myflow.py:myflow -n myflow-deployment -t dev -ib kubernetes-job/k8dev -sb remote-file-system/dev
j

Jeff Hale

08/11/2022, 5:00 PM
In 2.0.4 the manifest.json is no longer used. The information now comes directly from the deployment YAML. We simplified deployment process by just using the single file. 🙂
m

Mars

08/11/2022, 5:06 PM
Ah, so my local orion and agent are running the image
prefecthq/prefect:2.0.3-python3.10
. I guess that explains why my local k8s cluster started throwing this when I ran
prefect deployment apply
prefect.exceptions.PrefectHTTPStatusError: Client error '422 Unprocessable Entity' for url '<http://localhost:4200/api/deployments/>'
Response: {'exception_message': 'Invalid request received.', 'exception_detail': [{'loc': ['body', 'manifest_path'], 'msg': 'none is not an allowed value', ...
👍 1
Does prefect have any guarantee of compatibility between clients and servers? The project bumped the minor version, normally reserved for bugfixes. I didn’t have that pinned on the client side. But it appears to have broken the client/server contract for
deployment apply
.
j

Jeff Hale

08/11/2022, 6:02 PM
I talked to the engineering team and learned that we only guarantee compatibility of equal versions for self-hosted servers, but we generally strive for compatibility between different versions.
m

Mars

08/11/2022, 6:20 PM
how about on the cloud side? I run self-hosted during development, but cloud during production.
j

Jeff Hale

08/11/2022, 8:11 PM
We intend to have backwards compatibility between the current Cloud version and a number of previous Prefect releases. The team is thinking about the issue and how to communicate if/when there are breaking changes.