Library for easily authoring, testing, deploying, and interacting with Flyte tasks, workflows, and launch plans.
Flytekit is designed for minimal footprint, and thus some features must be installed as extras.
This is the lightest-weight SDK install. This installation includes everything you need to interact with Flyte.
Modules include:
- The full Flyte IDL and an additional model layer for easier extension of the data model.
- gRPC client for communicating with the platform.
- Implementations for authoring and extending all Flyte entities (including tasks, workflows, and launch plans).
Tools include:
- flyte-cli (Command-Line Interface for Interacting with the Flyte Platform)
- pyflyte (Command-Line tool for easing the registration of Flyte entities)
pip install flytekit
If @spark_task
is to be used, one should install the spark
plugin.
pip install flytekit[spark]
If Types.Schema()
is to be used for computations involving large dataframes, one should install the schema
extension.
pip install flytekit[schema]
If @sidecar_task
is to be used, one should install the sidecar
plugin.
pip install flytekit[sidecar]
To install all or multiple available plugins, one can specify them individually:
pip install flytekit[sidecar,spark,schema]
Or install them with the all
directive.
pip install flytekit[all]
Flytekit is Python 2.7+ compatible, so when feasible, it is recommended to test with both Python 2 and 3.
virtualenv ~/.virtualenvs/flytekit
source ~/.virtualenvs/flytekit/bin/activate
python -m pip install -r requirements.txt
python -m pip install -U .[all]
source ~/.virtualenvs/flytekit/bin/activate
python -m pytest tests/flytekit/unit
shellcheck **/*.sh