Skip to main content

A Python 3 tool to harness the google cloud to run shell scripts

Project description

Turbine

A Python 3 tool to harness the google cloud to run shell scripts. In particular, if you have

  1. a docker image and
  2. many independent, idempotent tasks for that image written as shell scripts,

Turbine allows you to run those tasks on many VMs in parallel on GCE. See this jupyter notebook for detailed usage.

Turbine is a lot like

  • Google Cloud Run except you don't need to hit an HTTP endpoint and it supports large machine types and accelerators;
  • Google Cloud Functions except it supports large machine types and accelerators; and
  • Batch on GKE except I understand it, it is significantly lighter-weight than Kubernetes, and it provides a path for TPU access.

Installation

Turbine consists of two components:

  1. A controller on the local machine to setup cloud components, enter tasks, and provision VMs.
  2. A small shim to run inside of the docker image and retrieve tasks.

For most users, the recommended method to install the controller is via pip:

pip install turbine

To attach turbine to a docker image, simply install turbine on the image via pip:

RUN pip install turbine

Note that the ENTRYPOINT of the docker image will be overwritten when used by the Turbine controller.

Dependencies:

  • google-cloud-pubsub
  • google-cloud-storage
  • google-cloud-logging
  • google-api-python-client

See requirements.txt for detailed version information, if needed.

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

turbine-1.3.3.tar.gz (11.6 kB view details)

Uploaded Source

File details

Details for the file turbine-1.3.3.tar.gz.

File metadata

  • Download URL: turbine-1.3.3.tar.gz
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.9

File hashes

Hashes for turbine-1.3.3.tar.gz
Algorithm Hash digest
SHA256 86e6195db35edcbf731903e3a825faec9d1c82a215f9cec16553d9cc092c6376
MD5 24b50eb388bce79348bb5348f2a349a6
BLAKE2b-256 99d06032fbfa2487c58db4cde131b9b1050c37cae9075df0869a709ff8c36ccd

See more details on using hashes here.

Supported by

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