Silly question, perhaps, but is the new prefect v3...
# ask-community
s
Silly question, perhaps, but is the new prefect v3 usable with the current prefect cloud?
1
d
Not a silly question! Prefect Cloud supports Prefect v 2.x and 3.x
s
Thx! Will give it a try!
d
Awesome! Let us know what you think 😄
r
@Dylan are we sure about 3.x, we updated ut everything is broken
we updated the docker image to the newest 3.0.0rc9-python3.10 in our ecs workpool deployment to prefect cloud, we have issue then all previous working deployment stops working either having issues: Flow run infrastructure exited with non-zero status code: Exited with non 0 code. (Error Code: 1) This may be caused by attempting to run an image with a misspecified platform or architecture. OR just hanging there “Downloading flow code from storage at ‘.’ - is this some problem we are aware and any ideas? (edited)
d
Hey Rupin, I'm sorry to hear you're encountering some friction while upgrading. First, gentle reminder that tagging other users is against our code of conduct. If you need dedicated or immediate support you can reach out to us at sales@prefect.io or you can book time with an engineer. I haven't seen that issue before. To be clear, did you upgrade the Prefect version on your worker before attempting to run a flow/deployment on 3.0.0rc9? If not, I would try that first since the version of the worker must be greater than the version of the flow/deployment. If your worker is what's erroring, I encourage you to open an issue with a minimum reproducible example and we will attempt to reproduce your issue.
r
ah did not see the code of conduct, what do u mean by did you upgrade the Prefect version on your worker? The worker is pulling ECR upgraded with 3.0.0rc9
you mean the work pool need completely redo? hmmm- do you know in that case all existing deployment ID will change, as we expose API even triger for the deployment? - btw thank you for the help
d
So there are a few components here that have prefect versions: • The Prefect Worker, version usually determined by docker image as you described above • The Flow Run or deployment/flow instance, determined by a variety of factors depending on how its run
You shouldn't need to redefine the work pool (the object in the database), but you will need to redeploy the worker (the deployed infrastructure, running on ECS)
Can you share a reproducible example?
r
if that is the case, does not work we did flow.deploy() fresh that still the problem remains. I was think you are talking about prefect work-pool create --type ecs:push need redo
d
You shouldn't need to recreate the work pool from the CLI
r
To be clear - you will need to redeploy the worker (the deployed infrastructure, running on ECS) - u mean construct_etl.deploy(XXX) need redo
d
Can you share a little bit more about how you have your worker & deployment set up?
We do ECS based worker and workpool
d
But you shouldn't need to call
prefect work-pool create --type ecs my-ecs-pool
again, just provide the same work pool name to your worker
(Sorry for blowing up your thread Sean, you can turn off notifications for replies if you haven't already via the three-dot menu on the message in Slack)
r
I might misunderstood something, I though everything is automatically provisioned, we literally just do prefect work-pool create --type ecs:push --provision-infra prefect-ecs-fargate-work-pool-example, and provision everything, and then deploy via flow.deploy(), we never need touch any worker config
d
Can you share your ecs service config?
r
Could u provide some context on the config u talk about?
that is all we need to do
Push work pools are a special type of work pool that allows Prefect Cloud to submit flow runs for execution to serverless computing infrastructure without running a worker. - that is why I get so confused you ask me worker related
d
Ahh okay that makes sense. You can try reprovisioning: https://docs-3.prefect.io/3.0rc/deploy/dynamic-infra/push-runs-serverless#provision-infrastructure-for-an-existing-push-work-pool If that doesn't work I think you may need to write up a GitHub issue with a minimum reproducible example and we can triage and address from there
r
Dp u know if I reprovision the existing deployment ID will change? this is very important for us, as we use in many external API calls, if that is the case I will just revert
d
No this shouldn't impact your deployment at all
r
wonderful, thank u so much for detailed explain
d
Of course!