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.0.tar.gz (227.6 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.0-py3-none-win_amd64.whl (34.7 MB view details)

Uploaded Python 3Windows x86-64

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

Uploaded Python 3macOS 11.0+ ARM64

flyteplugins_union-0.8.0-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.0.tar.gz.

File metadata

  • Download URL: flyteplugins_union-0.8.0.tar.gz
  • Upload date:
  • Size: 227.6 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.0.tar.gz
Algorithm Hash digest
SHA256 a0c43edeb8d1da5454b91db9507aa69ad94256c86679139ff5eb970f90a2f167
MD5 25c8e48b7703d421cba80701d37211e6
BLAKE2b-256 2bbafaaabf804490832747b129edd62552609f28f4f589cf0a6dbbacef1b9e30

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for flyteplugins_union-0.8.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 7cea139cd2ff39fdc38f565d8b7e2d78aec1c678493ab6344e6f4415cb2d91e6
MD5 d91d40e8f8f2d9a2d023fc88e6b18a77
BLAKE2b-256 a943869dbbcb492ae27649e0277c977db94a81d831b8b4ebb47a6643b50d1743

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for flyteplugins_union-0.8.0-py3-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 13f7be9b63b5baf7f5bf0c5bd21a462f32d9d01b4f73e8b7fddd6da90c0745ff
MD5 781074bd5c1f038b45594fed577cd019
BLAKE2b-256 d3296af723555353101cf204ebe6d4ef9ce88b5b6f19f2743edff2bc1b7f64dc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for flyteplugins_union-0.8.0-py3-none-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 91e788e7a7225c5368604a723db4c43fb7ebe6a700a0143bdffbff997a3bd86a
MD5 4d25e532a3d270d091fbb96693204fcc
BLAKE2b-256 2d67e8e055f852e8e288e8cabd88c60f29a9fa31636f027d64cafaef0f702c72

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for flyteplugins_union-0.8.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9cb4432a40b9330f7c3fe2934134b94514dd7a90720da49313b45920de4fe180
MD5 e497f2def02190ea78cfada3ef0850c6
BLAKE2b-256 6acda077f167b4aa63ba67e307dbf9870efe93ab95d1c3d0d88a2d6b5115e754

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for flyteplugins_union-0.8.0-py3-none-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 d15d74f3f6ca69669eda74ecfd72db6c2fffd9bb122138b8f61f1d651ebcb338
MD5 1d64cf6915496fc24a7e6e80e0a25ae3
BLAKE2b-256 265bb4dbb490dbd7dd2df6475452a3801ba7913db6d8138156320790c5a685eb

See more details on using hashes here.

Release history Release notifications | RSS feed

0.8.1

6 files

This release

0.8.0 This release

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