Facing an issue with registering the workflow via ...
# flyte-support
p
Facing an issue with registering the workflow via FlyteRemote. This issue only appears with flytekit versions
> 1.11
Trace:
Copy code
(Pdb) remote.register_workflow(main_workflow, serialization_settings=settings, version=pipeline_version)
*** flytekit.exceptions.user.FlyteInvalidInputException: USER:BadInputToAPI: error=None, cause=<_InactiveRpcError of RPC that terminated with:
        status = StatusCode.INVALID_ARGUMENT
        details = "failed to compile workflow for [resource_type:WORKFLOW project:"default" domain:"development" name:"some_wf.workflow.pipeline" version:"miha-flytekit-bugfix-ff46438-dirty-A7NQV"] with err failed to compile workflow with err Collected Errors: 3
        Error 0: Code: TaskReferenceNotFound, Node Id: start-node, Description: Referenced Task [resource_type:TASK name:"some_wf.workflow.create_config" version:"miha-flytekit-bugfix-ff46438-dirty-A7NQV"] not found.
However, I can see that all the tasks are successfully registered:
Copy code
❯ flytectl get tasks -p default -d development --filter.fieldSelector "version=miha-flytekit-bugfix-ff46438-dirty-A7NQV"
 ------------------------------------------ --------------------------------- ------------- --------------------------- --------------------------- -------------- ------------------- ----------------------------- 
| VERSION                                  | NAME                            | TYPE        | INPUTS                    | OUTPUTS                   | DISCOVERABLE | DISCOVERY VERSION | CREATED AT                  |
 ------------------------------------------ --------------------------------- ------------- --------------------------- --------------------------- -------------- ------------------- ----------------------------- 
| miha-flytekit-bugfix-ff46438-dirty-A7NQV | some_wf.workflow.train_task     | python-task | cfg: trainer config       | o0: uri of the model      |              | 1.0               | 2024-08-01T08:06:46.567848Z |
 ------------------------------------------ --------------------------------- ------------- --------------------------- --------------------------- -------------- ------------------- ----------------------------- 
| miha-flytekit-bugfix-ff46438-dirty-A7NQV | some_wf.workflow.create_config  | python-task | cfg: [description]. De... | o0: [description]         |              | 1.0               | 2024-08-01T08:06:46.511291Z |
|                                          |                                 |             |                           | o1: [description]         |              |                   |                             |
 ------------------------------------------ --------------------------------- ------------- --------------------------- --------------------------- -------------- ------------------- ----------------------------- 
| miha-flytekit-bugfix-ff46438-dirty-A7NQV | some_wf.workflow.evaluator_task | python-task | cfg: evaluator config     | o0: result of the eval... |              | 1.0               | 2024-08-01T08:06:46.453174Z |
|                                          |                                 |             | model_uri: uri of the ... |                           |              |                   |                             |
 ------------------------------------------ --------------------------------- ------------- --------------------------- --------------------------- -------------- ------------------- -----------------------------
1
Alright I figured it out, there was a missmatch in
serialization_settings
, as the
domain
and
project
were not specified. I'd take it there were changes in the FlyteRemote API lately for this to happen cc @sparse-dream-26689 maybe this helps you?
gratitude thank you 1
1
a
I'd take it there were changes in the FlyteRemote API lately for this to happen
you mean for
flytekit <= 1.11
you didn't have to specify `domain`and
project
and it worked?
p
yep
To be a bit more specific, they were specified as in passed to FlyteRemote at instantiation, but that was the only place. Now they need to be explicitly passed to
remote.register_workflow()
as well (through
serialization_settings
arg)