Skip to content

Triggering a DeployedFlow from a flow with a deploy-time Config broke in >=2.19.7 #2717

@chrschorn

Description

@chrschorn

Hey there,

this is a bit of a weird one: when running a flow that uses a deploy-time Config that triggers another flow using DeployedFlow, we get this error:

<flow TriggerFoo step start> failed:
    Flow failed:
    Options were not properly set -- this is an internal error.

This does not happen on 2.19.6 and below. In 2.19.7 and above the issue is present.

Steps to reproduce below:

# trigger_foo.py
from metaflow import DeployedFlow, kubernetes, project, step, Config, FlowSpec

@project(name="test")
class TriggerFoo(FlowSpec):
    config = Config("config", default_value={"hello": "world"})

    @kubernetes()  # I needed an image that has requirements to run `from_argo_workflows` etc.
    @step
    def start(self):
        flow = DeployedFlow.from_argo_workflows(identifier="test.prod.foo")
        flow.trigger()

        self.next(self.end)

    @kubernetes()
    @step
    def end(self):
        pass


if __name__ == "__main__":
    TriggerFoo()
# foo.py
from metaflow import FlowSpec, kubernetes, project, step

@project(name="test")
class Foo(FlowSpec):

    @kubernetes()
    @step
    def start(self):
        self.next(self.end)

    @kubernetes()
    @step
    def end(self):
        pass


if __name__ == "__main__":
    Foo()
python foo.py --production argo-workflows create
python trigger_foo.py --production argo-workflows create
python trigger_foo.py --production argo-workflows trigger

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions