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 .

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>=2.0.0b26 - The Flyte SDK v2
  • 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

Metadata

Release files for flyteplugins-union 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for flyteplugins-union 0.4.0
File Size Uploaded
flyteplugins_union-0.4.0.tar.gz 159.7 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for flyteplugins-union 0.4.0
File
flyteplugins_union-0.4.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
flyteplugins_union-0.4.0-py3-none-manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
flyteplugins_union-0.4.0-py3-none-manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
flyteplugins_union-0.4.0-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
flyteplugins_union-0.4.0-py3-none-macosx_10_15_x86_64.whl Python 3 none macOS 10.15+ x86-64 Details

Total release size: 170.4 MB

Release files / flyteplugins_union-0.4.0.tar.gz

Download URL flyteplugins_union-0.4.0.tar.gz
Size 159.7 kB
Tags Source
SHA-256 checksum
How to use checksums
f8d247b4830cf69ad3c0c310b20b438d4402a204186525657c8e0e9ee3d2a9b4
BLAKE2b-256 checksum
How to use checksums
c9b3dcd63cd6883700b502bb8a2b8223fdb8c919e5a12cd4c96c660e4c142ce5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / flyteplugins_union-0.4.0-py3-none-win_amd64.whl

Download URL flyteplugins_union-0.4.0-py3-none-win_amd64.whl
Size 34.6 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
8f287832bb3e65638f6b64df8c836912c2e59ecc5232df13d20b996e762635ff
BLAKE2b-256 checksum
How to use checksums
3608610012c91de491dc72ba0d22bdab6cecd789d01b77fd0669cb034ed19425
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / flyteplugins_union-0.4.0-py3-none-manylinux2014_x86_64.whl

Download URL flyteplugins_union-0.4.0-py3-none-manylinux2014_x86_64.whl
Size 34.3 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
a37a91b6af19f1c23fa11d80b73cf81223ee4e236715691fdb6a12bd663a115a
BLAKE2b-256 checksum
How to use checksums
a45514ea44269a96a69b4102d36c0822e2df50f95cf9d65a6ccb0767e54938fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / flyteplugins_union-0.4.0-py3-none-manylinux2014_aarch64.whl

Download URL flyteplugins_union-0.4.0-py3-none-manylinux2014_aarch64.whl
Size 31.5 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
721ce5598dc20871f24118e488cd1ae9ee479e939196a9c37eb98e37aea4147d
BLAKE2b-256 checksum
How to use checksums
9c91a0d8063718e8f2721c34bd4d20bb2be063587030305ce023f4c73a50efc1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / flyteplugins_union-0.4.0-py3-none-macosx_11_0_arm64.whl

Download URL flyteplugins_union-0.4.0-py3-none-macosx_11_0_arm64.whl
Size 34.0 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2409ce115d3fae12c22ec3dba30cf94f8e18e1ce44741c874e7553956b653729
BLAKE2b-256 checksum
How to use checksums
f8fddf6711c0361d09889223733a3b79f953eacf552ff59b0275965dc2d8232f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / flyteplugins_union-0.4.0-py3-none-macosx_10_15_x86_64.whl

Download URL flyteplugins_union-0.4.0-py3-none-macosx_10_15_x86_64.whl
Size 35.9 MB
Tags Python 3 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
fef71e538789ca823eb45aef293d791201399b004ded4a10b0db9d852302ecd3
BLAKE2b-256 checksum
How to use checksums
79df7d0159a6380d97ee8d99a2b70a4af6fa97fa08419de8a498dd3cf7dd1e45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Release history Release notifications | RSS feed

0.16.0

6 release files

0.15.5

1 release file

0.15.0

6 release files

0.14.1

6 release files

0.14.0

6 release files

0.13.0

6 release files

0.12.1

6 release files

0.12.0

6 release files

0.11.0

6 release files

0.10.9

6 release files

0.10.8

6 release files

0.10.7

6 release files

0.10.6

6 release files

0.10.5

6 release files

0.10.4

6 release files

0.10.3

6 release files

0.9.0

6 release files

0.8.3

6 release files

0.8.2

6 release files

0.8.1

6 release files

0.8.0

6 release files

0.7.2

6 release files

0.7.1

6 release files

0.7.0

6 release files

0.5.2

6 release files

0.5.1

6 release files

0.5.0

6 release files

0.4.3

6 release files

0.4.2

6 release files

0.4.1

6 release files

This release

0.4.0 This release

6 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page