Tower CLI and runtime environment for Tower.
Project description
Tower CLI
The Tower CLI is one of the main ways to interact with the Tower environment. You can do basically everything you need inside the Tower CLI, including run your code locally or remotely in the Tower cloud.
Installing the Tower CLI
The main way to install the CLI is using the pip package manager.
$ pip install -U tower
You can also download the CLI directly from one of our releases.
Using the Tower CLI
There are two big components in the Tower CLI reposiory: The CLI itself and the runtime environment for the Tower cloud. We host the runtime in this repository and pull it in to our internal code because we want to ensure that the environments behave exactly the same locally and in our cloud!
Using the CLI
It's pretty straight forward! But here's what it looks like right now.
$ tower
Tower is a compute platform for modern data projects
Usage: tower [OPTIONS] <COMMAND>
Commands:
login Create a session with Tower
apps Interact with the apps that you own
secrets Interact with the secrets in your Tower account
deploy Deploy your latest code to Tower
run Run your code in Tower or locally
version Print the current version of Tower
help Print this message or the help of the given subcommand(s)
Options:
-h, --help Print help
Optional Features
Tower supports several optional features that can be installed as needed:
AI/LLM Support
pip install "tower[ai]"
Provides integration with language models through:
tower.llms: Access to language model functionality
Apache Iceberg Support
pip install "tower[iceberg]"
Provides Apache Iceberg table support:
tower.create_table: Create Iceberg tablestower.load_table: Load data from Iceberg tables
Install All Optional Features
pip install "tower[all]"
Check Available Features
You can check which features are available in your installation:
import tower
import pprint
# Print information about all features
pprint.pprint(tower.get_available_features())
# Check if a specific feature is enabled
print(tower.is_feature_enabled("ai"))
About the runtime environment
The tower-runtime crate has the Rust library that makes
up the runtime environment itself. All the interfaces are defined in the main
crate, and the local package contains the invokation logic for invoking tower
packages locally.
To learn more about tower packages, see the tower-package crate.
Contributing
We welcome contributions to the Tower CLI and runtime environment! Please see the CONTRIBUTING.md file for more information.
Code of Conduct
All contributions must abide by our code of conduct. Please see CODE_OF_CONDUCT.md for more information.
Development
Here are a few handy tips and common workflows when developing the Tower CLI.
Python SDK development
We use uv for all development. You can spawn a REPL in context using uv very
easily. Then you can import tower and you're off to the races!
uv run python
To run tests:
uv sync --locked --all-extras --dev
uv run pytest tests
If you need to get the latest OpenAPI SDK, you can run
./scripts/generate-python-api-client.sh.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tower-0.3.15.tar.gz.
File metadata
- Download URL: tower-0.3.15.tar.gz
- Upload date:
- Size: 159.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
426e884c5af1c0030d0d8240679a40be774c603c0ff477472a2cd39fbbfdc522
|
|
| MD5 |
2b92e06715b034c58b1749c3cec2b0ec
|
|
| BLAKE2b-256 |
bcd233375f39416610c89eab428f79e05bca699376cfa600d2d984634c2fddb8
|
File details
Details for the file tower-0.3.15-py3-none-win_arm64.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-win_arm64.whl
- Upload date:
- Size: 3.3 MB
- Tags: Python 3, Windows ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1e4b4d550e1d46f8ca363e40a1c4397b8cfda72a7ec67e84dfe7d80e4785251
|
|
| MD5 |
a99a1b461ec76378779eeb09e6f17f14
|
|
| BLAKE2b-256 |
1744696721604f743ce85ee8fd60ea83205924add10c81ef9478ef30478df763
|
File details
Details for the file tower-0.3.15-py3-none-win_amd64.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-win_amd64.whl
- Upload date:
- Size: 3.4 MB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
425da26cb20a6ed51496cd2cf23e7cb1fe7649ef2afee5d54ecebd86dd126563
|
|
| MD5 |
f42bba90f799d1aeecbddc53db302959
|
|
| BLAKE2b-256 |
303772bb83b481f0a6f307fa4097dda6bca5d170996e9b5ef5c4336b8b922e27
|
File details
Details for the file tower-0.3.15-py3-none-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 6.3 MB
- Tags: Python 3, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
93eed9c71c013217dca2db841b6bc99c6a88e42c16382424375d445c965fa89d
|
|
| MD5 |
c91e781be73074704cc596d5354de807
|
|
| BLAKE2b-256 |
7c625bf28c3e5612a6a643d84de4ab81c7928a7d5c9761c1d950591c8290d289
|
File details
Details for the file tower-0.3.15-py3-none-musllinux_1_2_i686.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-musllinux_1_2_i686.whl
- Upload date:
- Size: 6.3 MB
- Tags: Python 3, musllinux: musl 1.2+ i686
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d3f71d3916a843f30fff92b6f3130e67bd2671a916146491408a537e69cb1930
|
|
| MD5 |
eeea8be8d7c70c8844dc8bdffdaf0d1c
|
|
| BLAKE2b-256 |
a9b420596f4596e700aeb0adacf097d1479cbfac257866189be8a458246d9be8
|
File details
Details for the file tower-0.3.15-py3-none-musllinux_1_2_armv7l.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-musllinux_1_2_armv7l.whl
- Upload date:
- Size: 5.8 MB
- Tags: Python 3, musllinux: musl 1.2+ ARMv7l
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
790d19ef48368d84372f63edc9f66de872735360e6fab091ca7f112fdeb636b4
|
|
| MD5 |
27e7cbf635878acede4061bcbf667144
|
|
| BLAKE2b-256 |
d6009f76b592732968b67f1e4e7562efa8e225b94b0600d384b358df3833753a
|
File details
Details for the file tower-0.3.15-py3-none-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 6.5 MB
- Tags: Python 3, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7f02c31188dfed8d64bb74f233c77fd86ba7c8303ab8bc3c03299f36048030b0
|
|
| MD5 |
9d88320b5e2ded743a1ba374ad008663
|
|
| BLAKE2b-256 |
d18e299494d2b7c7923b25ee815b5d9af2fb78c5b2854610ce0cd8254db9d787
|
File details
Details for the file tower-0.3.15-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 6.2 MB
- Tags: Python 3, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
59a42f404972257a96596105255aec988232d4f173b1da1c73541ddc5892328a
|
|
| MD5 |
c8214fe0253bb8904b3d540b22df346b
|
|
| BLAKE2b-256 |
e3e9e8ba84cad8faeccbd121e8ff528a32c2ed0ce379ebaf5c304a3cfe189403
|
File details
Details for the file tower-0.3.15-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
- Upload date:
- Size: 5.7 MB
- Tags: Python 3, manylinux: glibc 2.17+ ARMv7l
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f5eb7ded51c0c109f154df8b137d2ae1a3e418577b92b04e197178465e5b0634
|
|
| MD5 |
9bfdaa0a643dc700ef0a8a0f2088b735
|
|
| BLAKE2b-256 |
ef77c6449c7a98d21f9cabfffcd182b9d4ec3703c398870a788a42b2e8fccb61
|
File details
Details for the file tower-0.3.15-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 6.4 MB
- Tags: Python 3, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e93590029572b1fb03e7351c780be7788e45f8e8b564a8c8ea2b4426c1dd95d5
|
|
| MD5 |
6fe2fd5456d8209282b12f5ca87e1cea
|
|
| BLAKE2b-256 |
87e04b22cf8b898a6062cc10a685028b2738237cb4534c38c9009ab5171d9e3f
|
File details
Details for the file tower-0.3.15-py3-none-macosx_11_0_arm64.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.7 MB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d0050fdfed95588efd363184ceb43fb33de03d6abe619b2058aa7e296773d121
|
|
| MD5 |
f62b982ca7d4db04f403c2e40a985396
|
|
| BLAKE2b-256 |
40cfca885dfc1b4ee0d4b82e257d485e724454f3835a1096cf5e34b9d0f6a1d7
|
File details
Details for the file tower-0.3.15-py3-none-macosx_10_12_x86_64.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-macosx_10_12_x86_64.whl
- Upload date:
- Size: 3.8 MB
- Tags: Python 3, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cf43689e9d9ea34475735a754c91161684d14ac767ae4d76de4006bec5bf65c4
|
|
| MD5 |
cbd790201fd2969bb1b19395c0bda9ee
|
|
| BLAKE2b-256 |
66d2a92fb4cb3f3a07aaa2413608fffc60dd1f3f73f39427ef46df714754fd97
|
File details
Details for the file tower-0.3.15-py3-none-linux_armv6l.whl.
File metadata
- Download URL: tower-0.3.15-py3-none-linux_armv6l.whl
- Upload date:
- Size: 5.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
72cd1d40b6c057dfb3ad07b2b153766602074d15cdea4b1f03d9a3d7a7a9cac2
|
|
| MD5 |
99af22980c8297b9898df356d75f355b
|
|
| BLAKE2b-256 |
a92419c886f1ef4d2964fabe668072d5e08e26e3f0b545cbb4d3a8adb06cbd53
|