We are getting a similar message when for several ...
# prefect-cloud
a
We are getting a similar message when for several flows. This is a process that has worked for us for months. Some of the failing flows don't even exist in prefect cloud at all, so the complaint about a conflict is confusing. How can I troubleshoot?
Copy code
A flow named 'pkt-anomaly-detection' and defined at '/builds/datateer/clients/pkt/pipeline/orchestration/pipeline_anomaly_detection.py:15' conflicts with another flow. Consider specifying a unique `name` parameter in the flow definition:
n
hi @Adam Roderick - is this a failure or just a warning? do you have more of the trace?
a
Normally this script results in just a new version of the deployment
n
the error isnt the name conflict though, thats just a warning
Copy code
File "/builds/datateer/clients/dtr/pipeline/./datateer-prefect/datateer_prefect/release/infrastructure.py", line 108, in main
    run_shell_command(["prefect", "--no-prompt", "deploy"])
  File "/usr/local/lib/python3.9/site-packages/datateer_prefect/tasks/util.py", line 125, in run_shell_command
    raise ChildProcessError(os.linesep.join(errors)[:1000]) from None
ChildProcessError: Traceback (most recent call last):
raise self._exception
TypeError: 'NoneType' object is not iterable
An exception occurred.
this is the error
a
so that warning is not a problem?
n
no its not, its just saying that a flow with that name has been defined as some point in the past, you should be able to safely ignore that it seems like
errors
here is
NoneType
Copy code
raise ChildProcessError(os.linesep.join(errors)[:1000]) from None
where
.join
wants it to be iterable
Copy code
TypeError: 'NoneType' object is not iterable
a
Got it--I misread that it was a warning. Thank you @Nate
n
no problem!
a
The script is working for some flows but not others
It seems
prefect deploy
errors unless the
--name
argument is provided
n
im not sure what you've got in here
Copy code
datateer-prefect/datateer_prefect/release/infrastructure.py
so I'm likely missing relevant context but in general yeah you need to tell
prefect deploy
which deployment you're referring to, unless you add
--all
at the end to deploy all flows in your
prefect.yaml
a
Is that new?
n
nope,
prefect deploy
either requires a
path/to/file.py:decorated_function
or
--name defined-in-prefect-yaml
what did you upgrade from? not recently new anyways 🙂
a
Previously we ran a subprocess
prefect --no-prompt deploy
without specifying
--name
or
--all
Yeah good point, we've been on 2.x for a while but not sure the specific version atm
Specifying --name seems to have done the trick. Thanks for the help
n
glad to hear! sure thing