<#4049 [BUG] Could not find LHS for Shell Task> Is...
# flyte-github
a
#4049 [BUG] Could not find LHS for Shell Task Issue created by stephen37 Describe the bug Since Flytekit 1.9.1, it seems like there is a bug when serialising a task that is a Shell Task.
Copy code
pyflyte -c ci/cfg/flyte.config package --image flyte-project-name:xxx -f
Loading packages ['src.workflows'] under source root /code/flyte_projects/flyte-project-name
2023-09-19 13:16:38,009677 ERROR    {"asctime": "2023-09-19 13:16:38,009", "name": "flytekit", "levelname": "ERROR", "message": "Could not find LHS for <flytekit.core.python_function_task.PythonFunctionTask object at 0x11d66a910> in src.workflows.routing_profiles"}             tracker.py:163
Failed with Exception Code: SYSTEM:Unknown
Error looking for LHS in src.workflows.routing_profiles
make: *** [serialize] Error 1
When using Flytekit 1.8.1, the serialisation works as expected
Copy code
pyflyte -c ci/cfg/flyte.config package --image flyte-project-name:xxx  -f
Successfully serialized 19 flyte objects
[...]
Successfully packaged 19 flyte objects into /code/flyte_projects/flyte-project-name/flyte-package.tgz
Expected behavior Serialisation should work even when using Flytekit 1.9.1 and using Shell Task Additional context to reproduce This is the Shell Task that we have defined.
Copy code
@task
def upload_routing_profiles() -> FlyteDirectory:
    return FlyteDirectory(path=PROFILES_LOCAL_PATH, remote_directory=PROFILES_S3_PREFIX)


extract_data = ShellTask(
    name="extract_data",
    inputs=kwtypes(dir=FlyteDirectory, profiles=FlyteDirectory),
    output_locs=[
        OutputLocation(
            var="extract_data",
            var_type=FlyteDirectory,
            location="{inputs.dir}",
        )
    ],
    script="""
    set -euo
    <perform_an_action> --profile {inputs.profiles}/foo.bar {inputs.dirr}/foo.pbf
    ls -alh {inputs.dir}
    """,
)
Screenshots No response Are you sure this issue hasn't been raised already? ☑︎ Yes Have you read the Code of Conduct? ☑︎ Yes flyteorg/flyte