Skip to main content

(This project is in public-beta status)

Fuga ['fu:ga]

pypi CircleCI Documentation Status

Fuga is a toolset (and API wrappers) for Google Cloud Composer (Airflow), which allows Composer users to develop/deploy workflows easier and in more organized way.

Quickstart

Install Requirements

Note: pyenv always provides an entrypoint for both python2/3 and throw an error when one doesn't actually exists, which makes gcloud cli crashes at its runtime. To prevent this, use something like pyenv global 3.x.x 2.x.x to provide both python2/3 or alias python2=python to let your system choose where to route the command.

Install fuga (cli)

$ # (on your own machine)
$ pip install fuga

Install fuga templates

Fuga powers cookiecutter to offer various templates/boilerplates for fuga experiments. You need to install it to your environment before using fuga.

$ git clone git@github.com:reproio/fuga-cookiecutter-experiment-default.git \
  ~/.cookiecutters/fuga-cookiecutter-experiment-default
$ git clone git@github.com:reproio/fuga-cookiecutter-pod-operator-default.git \
  ~/.cookiecutters/fuga-cookiecutter-pod-operator-default

Create Cloud Composer Environment

Creating new Cloud Composer Environment is not supported by the tool at the moment.

Install fuga to Composer Environment

You need to install fuga to Compooser Environment if you want to use fuga airflow utilities.

Initialize Fuga environment

Fuga needs to know which GCP project and GCS bucket to use with it. fuga environment init command with let you choose one or create new for each.

$ fuga environment init
# follow instructions

Create your experiment

$ fuga experiment new my_experiment
...

Deploy your experiment

$ cd my_experiment
$ fuga experiment deploy
...

(optional) Create your implementation for KubernetesPodOperator

If you want to use an operator with external dependency which is not able to be resolved using just PyPI packages, (e.g. MeCab) you may need to use KuberenetesPodOperator.

Fuga supports generating a scaffold for KuberenetesPodOperator and deploy(and rollback(WIP)) it on Google Cloud Container Registry.

$ cd my_experiment
$ fuga pod-operator new my_pod_operator
...
$ fuga pod-operator deploy my_pod_operator
...

Metadata

Release files for fuga 0.1.7

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

Built distribution (wheel)

Table of built distributions (wheels) for fuga 0.1.7
File Interpreter ABI Platform Actions
fuga-0.1.7-py2.py3-none-any.whl Python 3, Python 2 none any Details for fuga-0.1.7-py2.py3-none-any.whl

Release files / fuga-0.1.7-py2.py3-none-any.whl

Download URL fuga-0.1.7-py2.py3-none-any.whl
Size 20.9 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
ed4ce9735f8c75f334e94731afc6b6e14278117612c1525f8ab40a38f20809e4
BLAKE2b-256 checksum
How to use checksums
586c3d4e1cbf7017b6de800a0c7a3b413b9c4778b15e5acf2ddf1022e91c2f60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.20.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.2

Security for fuga 0.1.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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