Hi everyone! I'm trying to run the workflow remote...
# ask-the-community
s
Hi everyone! I'm trying to run the workflow remotely as described in the Flyte Fundamentals docs, but I get an OpenSSL version error:
E0328 20:15:47.445709000 140704578418304 <http://ssl_transport_security.cc:1495]|ssl_transport_security.cc:1495]> Handshake failed with fatal error SSL_ERROR_SSL: error:100000f7:SSL routines:OPENSSL_internal:WRONG_VERSION_NUMBER.
I'm using Python 3.9, grpcio & grpc-status 1.48.2, pyOpenSSL 23.0.0 and against a local flyte-sandbox (latest version) Can anyone help? I'm trying to get this working as a proof-of-concept for wider use in my compnay and need to demonstrate that this works
n
hi Samuel, can you do a which
pip list
of your environment?
s
Wow, thanks for the quick reply! Here's the list: Package Version ----------------------------- ----------- aiobotocore 1.2.2 aiohttp 3.7.4.post0 aioitertools 0.7.1 allure-pytest 2.8.36 allure-python-commons 2.8.36 anyio 3.6.1 appdirs 1.4.4 appnope 0.1.3 argon2-cffi 21.3.0 argon2-cffi-bindings 21.2.0 arrow 1.2.3 asttokens 2.0.8 async-timeout 3.0.1 attrs 20.3.0 aws-saml 1.0.0 backcall 0.2.0 beautifulsoup4 4.9.3 binaryornot 0.4.4 bleach 5.0.1 boto3 1.16.21 botocore 1.19.52 bs4 0.0.1 cachetools 5.3.0 certifi 2020.11.8 cffi 1.14.5 chardet 3.0.4 charset-normalizer 3.1.0 click 7.1.2 cloudpickle 2.2.1 contourpy 1.0.7 cookiecutter 2.1.1 croniter 1.3.8 cryptography 39.0.2 cycler 0.11.0 dataclasses-json 0.5.7 debugpy 1.6.3 decorator 5.1.1 defusedxml 0.7.1 Deprecated 1.2.13 diskcache 5.4.0 distlib 0.3.1 dnslib 0.9.14 dnspython 1.16.0 docker 6.0.1 docker-image-py 0.1.12 docopt 0.6.2 docstring-parser 0.15 elastic-transport 8.4.0 elasticsearch 8.4.3 element 0.1 entrypoints 0.4 executing 1.1.1 fastjsonschema 2.16.2 filelock 3.0.12 flyteidl 1.3.14 flytekit 1.4.2 flytekitplugins-deck-standard 1.4.2 fonttools 4.39.3 fsspec 0.8.7 gitdb 4.0.10 GitPython 3.1.31 glob2 0.7 google-auth 2.16.3 googleapis-common-protos 1.59.0 grpcio 1.48.2 grpcio-status 1.48.2 htmlmin 0.1.12 idna 2.10 ImageHash 4.3.1 importlib-metadata 5.0.0 iniconfig 1.1.1 ipykernel 6.16.0 ipython 8.5.0 ipython-genutils 0.2.0 ipywidgets 8.0.2 jaraco.classes 3.2.3 jedi 0.18.1 Jinja2 3.0.1 jinja2-time 0.2.0 jmespath 0.10.0 joblib 1.2.0 jsonschema 4.16.0 jupyter 1.0.0 jupyter_client 7.4.2 jupyter-console 6.4.4 jupyter-core 4.11.1 jupyter-server 1.21.0 jupyterlab-pygments 0.2.2 jupyterlab-widgets 3.0.3 keyring 23.13.1 kiwisolver 1.4.4 kubernetes 26.1.0 localstack 0.12.5 localstack-client 1.10 localstack-ext 0.12.4.10 lovely-pytest-docker 0.2.0 Mako 1.1.4 Markdown 3.4.3 MarkupSafe 2.0.1 marshmallow 3.19.0 marshmallow-enum 1.5.1 marshmallow-jsonschema 0.13.0 matplotlib 3.6.3 matplotlib-inline 0.1.6 mistune 2.0.4 mock 4.0.3 more-itertools 8.8.0 moto 2.0.10 multidict 5.1.0 multimethod 1.9.1 mypy-extensions 1.0.0 natsort 8.3.1 nbclassic 0.4.5 nbclient 0.7.0 nbconvert 7.2.1 nbformat 5.7.0 nest-asyncio 1.5.6 networkx 3.0 notebook 6.5.1 notebook_shim 0.2.0 numpy 1.23.5 oauthlib 3.2.2 openslide-python 1.1.2 packaging 23.0 pandas 1.5.3 pandas-profiling 3.6.6 pandocfilters 1.5.0 parse 1.19.0 parse-type 0.5.2 parso 0.8.3 patsy 0.5.3 pexpect 4.8.0 phik 0.12.3 pickleshare 0.7.5 Pillow 8.1.2 pip 22.2.2 pipenv 2020.11.15 plotly 5.13.1 pluggy 0.13.1 progressbar 2.5 prometheus-client 0.15.0 prompt-toolkit 3.0.31 protobuf 4.22.1 protoc-gen-swagger 0.1.0 psutil 5.9.2 ptyprocess 0.7.0 pure-eval 0.2.2 py 1.10.0 pyaes 1.6.1 pyarrow 10.0.1 pyasn1 0.4.8 pyasn1-modules 0.2.8 pycparser 2.20 pydantic 1.10.7 Pygments 2.7.2 PyInquirer 1.0.3 pyOpenSSL 23.0.0 pyparsing 2.4.7 pyrsistent 0.18.1 pytest 6.2.2 pytest-bdd 4.0.2 python-dateutil 2.8.2 python-json-logger 2.0.7 python-slugify 8.0.1 pytimeparse 1.1.8 pytz 2021.1 PyWavelets 1.4.1 PyYAML 6.0 pyzmq 24.0.1 qtconsole 5.3.2 QtPy 2.2.1 regex 2020.11.13 requests 2.28.2 requests-oauthlib 1.3.1 responses 0.13.3 retry 0.9.2 rsa 4.9 s3fs 0.5.2 s3transfer 0.3.3 scipy 1.9.3 seaborn 0.12.2 selenium 3.141.0 Send2Trash 1.8.0 setuptools 65.4.1 six 1.15.0 smmap 5.0.0 sniffio 1.3.0 sortedcontainers 2.4.0 soupsieve 2.0.1 stack-data 0.5.1 statsd 3.3.0 statsmodels 0.13.5 tangled-up-in-unicode 0.2.0 tenacity 8.2.2 terminado 0.16.0 text-unidecode 1.3 tinycss2 1.2.1 toml 0.10.2 tornado 6.2 tqdm 4.64.1 traitlets 5.4.0 typeguard 2.13.3 typing_extensions 4.5.0 typing-inspect 0.8.0 urllib3 1.26.2 virtualenv 20.4.2 virtualenv-clone 0.5.4 visions 0.7.5 wcwidth 0.2.5 webencodings 0.5.1 websocket-client 0.58.0 Werkzeug 2.0.1 wheel 0.37.1 widgetsnbextension 4.0.3 wrapt 1.12.1 xmltodict 0.12.0 yarl 1.6.3 ydata-profiling 4.1.2 zipp 3.9.0
d
Hi @Samuel Bentley and welcome to the Flyte community can you share the contents of your
$HOME/.flyte/config.yaml
file?
s
Hi @David Espejo (he/him), the file doesn't exist
cat: /Users/ksqr180/.flyte/config.yaml: No such file or directory
The code I'm using uses Config.auto()
Copy code
remote = FlyteRemote(config=Config.auto())
flyte_wf = remote.fetch_workflow(name="<http://workflows.example.wf|workflows.example.wf>")
execution = remote.execute(flyte_wf, inputs={"name": "Kermit"})
Although, there is a config-sandbox.yaml file:
Copy code
admin:
  # For GRPC endpoints you might want to use dns:///flyte.myexample.com
  endpoint: localhost:30080
  authType: Pkce
  insecure: true
console:
  endpoint: <http://localhost:30080>
logger:
  show-source: true
d
thanks what's the output of
echo $FLYTECTL_CONFIG
?
s
It's empty
d
please run:
export FLYTECTL_CONFIG=~/.flyte/config-sandbox.yaml
what's the behavior now?
s
Definitely passed the grpc error 🙂 I think I"m doing something stupid now. This is my code
Copy code
remote = FlyteRemote(config=Config.auto())
flyte_wf = remote.fetch_workflow(project="flytesnacks", domain="development", name="<http://workflows.example.wf|workflows.example.wf>")
execution = remote.execute(flyte_wf, inputs={"name": "Kermit"})
This is the output
flytekit.exceptions.user.FlyteValueException: Value error!  Received: name. The FlyteLaunchPlan doesn't have this input key.
This is a screenshot of the Launch Plan for the workflow
d
were you able to run the previous steps? (Initialize a project, package and register workflows)
s
Yes, the CLI tool example from the docs works
pyflyte run --remote workflows/example.py wf --name "Gilgamesh"
Yes, I was doing something stupid. I've hacked the workflow to death and registered the wrong workflow to the one I was trying to execute
export FLYTECTL_CONFIG=~/.flyte/config-sandbox.yaml
⬆️This worked. Thank you SO much! What an amazing community!!!! 🙏🙌🎉
d
great to hear @Samuel Bentley! Please let us know any help you may need
s
I'm sure I'll be back 😉
154 Views