Skip to main content

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

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

If you need to get the latest OpenAPI SDK, you can run ./scripts/generate-python-api-client.sh.

Project details


Download files

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

Source Distribution

tower-0.3.5.tar.gz (115.8 kB view details)

Uploaded Source

Built Distributions

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

tower-0.3.5-py3-none-win_arm64.whl (3.0 MB view details)

Uploaded Python 3Windows ARM64

tower-0.3.5-py3-none-win_amd64.whl (3.1 MB view details)

Uploaded Python 3Windows x86-64

tower-0.3.5-py3-none-win32.whl (2.9 MB view details)

Uploaded Python 3Windows x86

tower-0.3.5-py3-none-musllinux_1_2_x86_64.whl (5.8 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

tower-0.3.5-py3-none-musllinux_1_2_i686.whl (5.7 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

tower-0.3.5-py3-none-musllinux_1_2_armv7l.whl (5.3 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

tower-0.3.5-py3-none-musllinux_1_2_aarch64.whl (6.1 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

tower-0.3.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

tower-0.3.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (5.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

tower-0.3.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.9 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

tower-0.3.5-py3-none-macosx_11_0_arm64.whl (3.4 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

tower-0.3.5-py3-none-macosx_10_12_x86_64.whl (3.5 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

tower-0.3.5-py3-none-linux_armv6l.whl (5.4 MB view details)

Uploaded Python 3

File details

Details for the file tower-0.3.5.tar.gz.

File metadata

  • Download URL: tower-0.3.5.tar.gz
  • Upload date:
  • Size: 115.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.6.13

File hashes

Hashes for tower-0.3.5.tar.gz
Algorithm Hash digest
SHA256 b0284286af16c007a1672be38d08e88131c5a04f64f130b7490ae97207b823b4
MD5 abe13130953c2ce78d883cd885b6cddc
BLAKE2b-256 4d8b7f43dfdd41e354dfc4ea8a094b1259514ff1f8c3f77c2be04116d866e6d2

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-win_arm64.whl.

File metadata

  • Download URL: tower-0.3.5-py3-none-win_arm64.whl
  • Upload date:
  • Size: 3.0 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.6.13

File hashes

Hashes for tower-0.3.5-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 c958b1341de41eb26130b3bd30dd5d341db31a3b52a410b72fca060bc37e4b30
MD5 2e3afdb219ffff4e65166d55528e3fad
BLAKE2b-256 b81a8b6c6cf9835e1963c5cdaff4adba8efa278df22b53f6febf7e9593290b24

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-win_amd64.whl.

File metadata

  • Download URL: tower-0.3.5-py3-none-win_amd64.whl
  • Upload date:
  • Size: 3.1 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.6.13

File hashes

Hashes for tower-0.3.5-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 3779ee4170eeda8f2a777a7076bf18a7714abedc069439cb386a63126fac4954
MD5 79a27c3d6d1e07063ce1f67da1a7f125
BLAKE2b-256 a1a560f6835a128a1e98f373530301b318c5071b32d0ba556531504fffa000b5

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-win32.whl.

File metadata

  • Download URL: tower-0.3.5-py3-none-win32.whl
  • Upload date:
  • Size: 2.9 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.6.13

File hashes

Hashes for tower-0.3.5-py3-none-win32.whl
Algorithm Hash digest
SHA256 30671ac6437d931d7def43e38814bfc6954b780afd82d2f8ff7cf8484c427e5f
MD5 31179699427060aae2608f2381e2dd99
BLAKE2b-256 069bc4302a84f6c17f12950576bd03d583c5c3da44a96714e0156826abad49b6

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tower-0.3.5-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7d8b813c02a128b348b9f39e850516d5b7b10bba799d761bd6ccf169d6859f16
MD5 1aad0865567c5c5d502252efaf810e49
BLAKE2b-256 fab2f232632d9c03264bd105ebe8cdd096c9cd454715093f567344fd04677859

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for tower-0.3.5-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 3556a4ade35cefcded47c05518b411c400937227a8a3e05d890894d8ed17b062
MD5 4eb351783ba5d45b861b6897420d3cc2
BLAKE2b-256 facd6c69178ad325fba38234beff0ba2156cf2cc6e6f275530bb1ca2b1faad53

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for tower-0.3.5-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 d7507db41fa7fe90a8a34936bd85fc2f36b2ce3e7c81b7bc75ee2abccc7192bf
MD5 37d2ec05279ad6b17dcff43cb6be4203
BLAKE2b-256 fb394ecef524d4d8b0ae295fc0078cc6a11ddf65f19dfae268eaaf33eebe9144

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tower-0.3.5-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4bad411fa2ae478587b05873f2a66d487588e26fd10bf11b0d208ed871ba7334
MD5 e891fd9238f5d3165e0cb7ff7b8ab919
BLAKE2b-256 c4e9ed496fc723151cdaa6563ff68662898fd9f771134ec13e20b9d85db5b3ae

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tower-0.3.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7deff797755c50533367d1456a95001ce8603efb91e3dc8cbeb49c68c3bd1908
MD5 6e36edc5d9dd99edbb5b026d1c3af7c2
BLAKE2b-256 72942f073761bfdf350dfe8fcebc6950b7d7bbfd8358b1be651858c8c85bd719

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for tower-0.3.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 ae0a4a6f53db3b246e51b247219411d6281e05c1279eae2f1215e8d6663a691d
MD5 bb0fbef61192e01ba1ce005aabfe2cbc
BLAKE2b-256 fcbd1083b8cfec4798280237b70d63cebe2f8236dc1c30746750d4cdc06472ef

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tower-0.3.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3194d1c7cdfbf67290619b53726277a88343123dea1e7d76b2bb740cd01d19ef
MD5 aca50991985648ca71ddbdf9369558ba
BLAKE2b-256 6d8023bb2a79e3f399063576fa6baaa1887b4d0f10a0035563d45ec9121e8434

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tower-0.3.5-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d35b766b673833a0c12a87300d60ce353a97c69680f940459515905c6055d3a7
MD5 8fc8b0ab0b9c52bbc0e5fa13f8e33bae
BLAKE2b-256 fae39cc12792d699f4b656af9269e73a3caa9932a3cf3bf8af1551b77be20c7b

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for tower-0.3.5-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 476e2841717eed75dc68b48369c2b9b097f1845a47316a7a0b221989559b0b36
MD5 7442418bd1c353b267baa68cc6dae6ee
BLAKE2b-256 9900a8efc9522497be20057660c4fa622260dcb171ba28d3deb685a198554ec7

See more details on using hashes here.

File details

Details for the file tower-0.3.5-py3-none-linux_armv6l.whl.

File metadata

File hashes

Hashes for tower-0.3.5-py3-none-linux_armv6l.whl
Algorithm Hash digest
SHA256 901d37ccaf347a3e89181310071112268c135ef97e9bc29974daaa0f91d94d56
MD5 eea7465f1a3b8f50b1de62518f587c5b
BLAKE2b-256 613b46ad3a69c14e5791fbc06815b1484779c7eff01997178ca8ad1544e1fe3e

See more details on using hashes here.

Supported by

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