Skip to main content

Union Flyte Plugin

Proprietary extensions and features for Flyte, providing Union-specific functionality.

Installation

uv pip install flyteplugins-union

For development:

uv pip install -e .

Flyte compatibility

flyteplugins-union builds on flyte SDK internals that can change between flyte minor releases, so each release pins flyte to a single minor line. Install a flyteplugins-union release built for your flyte minor:

flyteplugins-union Requires flyte
0.8.0+ >=2.6.3,<2.7.0
0.7.2 >=2.5.20,<2.7.0
0.5.0 – 0.7.1 >=2.5.7,<2.6.0
0.4.3 >=2.5.0,<2.6.0
0.4.0 – 0.4.2 >=2.3.0,<2.5.0
0.3.0 >=2.1.0,<2.5.0

See COMPATIBILITY.md for the rationale and how the pin tracks new flyte releases.

Features

API Key Management

Create and manage API keys for headless authentication with Union.

Create an API Key

flyte create api-key admin --name my-api-key

This will create OAuth application credentials and output an API key that can be used for headless authentication.

Example output:

Client ID: serverless-1-myorg-my-api-key
The following API key will only be shown once. Be sure to keep it safe!
Configure your headless CLI by setting the following environment variable:

export FLYTE_API_KEY="<base64-encoded-credentials>"

Using the API Key

Set the generated API key as an environment variable:

export FLYTE_API_KEY="<your-api-key>"

Then use the Flyte CLI as normal - it will authenticate using the API key instead of prompting for interactive login.

Architecture

The Union SDK is structured as follows:

  • flyteplugins/union/internal/ - Proprietary protobuf definitions and generated code
  • flyteplugins/union/cli/ - CLI command plugins that extend the Flyte CLI
  • flyteplugins/union/utils/ - Shared utility functions
  • flyteplugins/union/remote/ - Union-specific remote objects

Plugin System

The SDK registers CLI plugins via entry points in pyproject.toml:

[project.entry-points."flyte.plugins.cli.commands"]
"create.api-key" = "flyteplugins.union.cli.api_key:create_api_key"
"delete.api-key" = "flyteplugins.union.cli.api_key:delete_api_key"
"get.api-key" = "flyteplugins.union.cli.api_key:get_api_key"

This makes Union commands available seamlessly through the Flyte CLI.

Dependencies

  • flyte - The Flyte SDK v2 (pinned to a single minor; see Flyte compatibility)
  • rich-click>=1.8.0 - For CLI formatting

Development

To add a new CLI plugin:

  1. Create a new file in src/flyteplugins/union/cli/
  2. Define your click commands
  3. Register the entry point in pyproject.toml
  4. Shared resources (protobufs, utilities) are available in flyteplugins.union.internal.* and flyteplugins.union.utils.*

Iterating

Commands to rebuild and reinstall this plugin (into the flyte-sdk venv presumably). From this folder:

python -m build --wheel

From your flyte-sdk venv:

uv pip install --prerelease=allow --force-reinstall --no-deps --no-index --find-links /Users/ytong/go/src/github.com/unionai/flyteplugins-union/dist flyteplugins-union

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flyteplugins_union-0.8.1.tar.gz (229.8 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

flyteplugins_union-0.8.1-py3-none-win_amd64.whl (34.7 MB view details)

Uploaded Python 3Windows x86-64

flyteplugins_union-0.8.1-py3-none-macosx_11_0_arm64.whl (34.1 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

flyteplugins_union-0.8.1-py3-none-macosx_10_15_x86_64.whl (36.0 MB view details)

Uploaded Python 3macOS 10.15+ x86-64

File details

Details for the file flyteplugins_union-0.8.1.tar.gz.

File metadata

  • Download URL: flyteplugins_union-0.8.1.tar.gz
  • Upload date:
  • Size: 229.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for flyteplugins_union-0.8.1.tar.gz
Algorithm Hash digest
SHA256 510af2fbec70ce77d585b753e80a4784f07094bae8fb6741cd3d49fdbf254a19
MD5 0c77a247245db513d1c58d6fae6e9679
BLAKE2b-256 c60054f870f362e82e5caa9346f0d3f75ad2cb72b2d092dfffb802d02fac42e8

See more details on using hashes here.

File details

Details for the file flyteplugins_union-0.8.1-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for flyteplugins_union-0.8.1-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 72f56e686fae278ebab51b72ff4878d75cb23872fd4f11e2e210e3aa12ca557f
MD5 ef31931ef9a198ba7d3c7fa3505078d4
BLAKE2b-256 1587edad03b6a146978ff4e838ec26d4216ff0b2ce1db741773e550803caa53d

See more details on using hashes here.

File details

Details for the file flyteplugins_union-0.8.1-py3-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for flyteplugins_union-0.8.1-py3-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 468be5b6140305329cec1bc9da2eed76cfc70b6848e6e03e51a63a417a4265c3
MD5 f6cf6e6abbfff447d5fff6e947e8bc6b
BLAKE2b-256 2c9eb6e71c5a38c50160f83d0292a57048f9da6744f1156fe12dab07d303106c

See more details on using hashes here.

File details

Details for the file flyteplugins_union-0.8.1-py3-none-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for flyteplugins_union-0.8.1-py3-none-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4c17bd29df73b64b5e4dd120d82e431ce9fed120a956b0f27f3994c0833ac5ec
MD5 72658d4ba3f49068ab8c0e97d8e1bef1
BLAKE2b-256 0a7ab87a78dde2577d76dc775e19268535772955bcc0f78d44737344693643f7

See more details on using hashes here.

File details

Details for the file flyteplugins_union-0.8.1-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for flyteplugins_union-0.8.1-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3022793b9a02ac9b70066e983bec7a4530884c1f1502eadccb5b58fb3da50476
MD5 2a968ee66c5fed2ecd234c4c5631e480
BLAKE2b-256 69b0d1fcaafdf473ca9e44618fe43e01514bd991f16998551d5638bf7e841846

See more details on using hashes here.

File details

Details for the file flyteplugins_union-0.8.1-py3-none-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for flyteplugins_union-0.8.1-py3-none-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 a011e3aa6bc26812da7ce1afb330174f0606f59dbbc9c4c4785b8efdeb54e898
MD5 38d4e622303c88eea714523784bf9e18
BLAKE2b-256 730534ae255ea07aadc738641a5af6bfe45ed7ac5456b025622b0bbcf9bbfee1

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.8.1 This release

6 files

0.8.0

6 files

0.7.2

6 files

0.7.1

6 files

0.7.0

6 files

0.5.2

6 files

0.5.1

6 files

0.5.0

6 files

0.4.3

6 files

0.4.2

6 files

0.4.1

6 files

0.4.0

6 files

0.3.0

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page