Bernhard Stadlbauer
05/03/2022, 7:37 AM@dataclass_json
@dataclass
class Foo:
bar: int
baz: float
@workflow
def my_wf(foo: Foo):
...
Is it possible to introspect the fields of the STRUCT
or is this checked at runtime?Kevin Su
05/03/2022, 9:08 AMSTRUCT
Bernhard Stadlbauer
05/03/2022, 9:19 AMflytectl
or FlyteRemote
to get the values and types of the struct? In the example above, what I would be interested in is to determine that Foo
has two inputs bar: int
and baz: float
by inspecting the Workflow (or LaunchPlan) my_wf
Kevin Su
05/03/2022, 2:14 PMfrom flytekit.configuration import Config
from flytekit.remote import FlyteRemote
remote = FlyteRemote(Config.auto(), default_project="flytesnacks", default_domain="development")
exec = remote.fetch_execution(name="f67cb4cc7ad6b46a6b80")
print(exec.inputs.get("foo").x)
print(type(exec.inputs.get("foo").y))
print(exec.inputs.variable_map) # Get JsonSchema of foo
Bernhard Stadlbauer
05/10/2022, 8:54 AMKevin Su
05/10/2022, 11:36 PMfetch_launch_plan
.
lp = remote.fetch_launch_plan(name="<http://raw_container.workflows.example.wf|raw_container.workflows.example.wf>")