hey there, I'm trying to migrate a deployment that...
# prefect-getting-started
s
hey there, I'm trying to migrate a deployment that's in an S3 block to following the master branch of a GitLab repo. I have the
prefect.yaml
in place and and when I run
prefect deploy
I get the interactive menu in the terminal to choose from and when I do I get an error saying
prefect: error: unrecognized arguments: deploy
. I have
prefect=2.19.4
. Any ideas at what could be going on?
n
hi @Santiago Toso - can you show the output of
prefect version
? instead of
prefect --version
s
hi @Nate that message was for version
2.19.4
but I now downgraded to
2.19.3
and I'm dealing with a different error (see below). Also, the server is on version
2.14.10
Copy code
prefect.exceptions.PrefectHTTPStatusError: Client error '422 Unprocessable Entity' for url '<https://prefect-us-east-1.dsar-prod.ridewithvia.com/api/deployments/>'
Response: {'exception_message': 'Invalid request received.', 'exception_detail': [{'loc': ['body', 'schedules'], 'msg': 'extra fields not permitted', 'type': 'value_error.extra'}], 'request_body': {'infra_overrides': {'image': '<http://235623703621.dkr.ecr.us-east-1.amazonaws.com/via-ds-amm-bus-dwell-times-preprocessing:latest|235623703621.dkr.ecr.us-east-1.amazonaws.com/via-ds-amm-bus-dwell-times-preprocessing:latest>', 'cpu_request': 2, 'memory_request': 5, 'cpu_limit': 4, 'memory_limit': 64}, 'name': 'preprocess-dwell-times', 'flow_id': '67527922-d792-4514-9164-6c2851446aa7', 'schedules': [], 'enforce_parameter_schema': True, 'parameter_openapi_schema': {'title': 'Parameters', 'type': 'object', 'properties': {'agency_name': {'position': 0, 'title': 'agency_name', 'type': 'string'}, 'start_date': {'position': 1, 'title': 'start_date', 'type': 'string'}, 'end_date': {'position': 2, 'title': 'end_date', 'type': 'string'}, 'speed_mlflow_run_id': {'position': 3, 'title': 'speed_mlflow_run_id', 'type': 'string'}, 'speed_mlflow_artifact_path': {'default': 'RandomForestRegressor', 'position': 4, 'title': 'speed_mlflow_artifact_path', 'type': 'string'}}, 'required': ['agency_name', 'start_date', 'end_date', 'speed_mlflow_run_id']}, 'parameters': {'agency_name': 'Generic', 'speed_mlflow_run_id': 'your_run_id', 'start_date': 'YYYY-MM-DD', 'end_date': 'YYYY-MM-DD', 'speed_mlflow_artifact_path': 'RandomForestRegressor'}, 'tags': ['<mailto:santiago.toso@ridewithvia.com|santiago.toso@ridewithvia.com>', 'prod-santiago', 'kubernetes', 'preprocessing-dwell-times'], 'pull_steps': [{'prefect.deployments.steps.git_clone': {'repository': '<https://git.ridewithvia.dev/data-science/lateness-prediction/via-ds-amm-fixed-route-lateness-prediction/dwell_times_preprocessing.git>', 'branch': 'master', 'credentials': '{{ prefect.blocks.gitlab-credentials.santiago-gitlab }}'}}], 'manifest_path': None, 'work_queue_name': None, 'work_pool_name': 'via-ds-cluster', 'storage_document_id': None, 'infrastructure_document_id': None, 'schedule': None, 'description': 'Flow to preprocess dwell times', 'path': None, 'version': None, 'entrypoint': 'dwell_times_preprocessing.py:preprocess_dwell_times'}}
For more information check: <https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/422>
An exception occurred.
I managed to solve the problem. Coming back here to give context: this seemed to happen because my prefect env version was
2.19.4
and my server's version was
2.14.10
downgrading to the server's version turned into a new error
Copy code
raise InvalidURL(e, request=request)
requests.exceptions.InvalidURL: Not supported URL scheme http+docker
It seems this one had something to do with
requests=2.32.3
. After downgrading to
requests=2.31.0
it worked.
n
> raise InvalidURL(e, request=request) > requests.exceptions.InvalidURL: Not supported URL scheme http+docker this one is an issue with
docker < 7.0
(solved in newer prefect by allowing new
docker
) and this one > [{'loc': ['body', 'schedules'], 'msg': 'extra fields not permitted', 'type': 'value_error.extra'}] seems like it is because your new client is sending a
schedules
param to
POST /deployments
, but that server is too old to know what that is
thanks for giving context!
s
thanks @Nate, this is very helpful!