Skip to main content

Import Databricks notebooks as libraries/modules

Project description

Libify

Libify makes it easy to import notebooks in Databricks. Notebook imports can also be nested to create complex workflows easily. Supports Databricks Runtime Version 5.5 and above.

Installation
  1. Click the Clusters icon in the sidebar
  2. Click a cluster name (make sure the cluster is running)
  3. Click the Libraries tab
  4. Click Install New
  5. Under Library Source, choose PyPI
  6. Under Package, write libify
  7. Click Install

Capture.png

Typical Usage

After installing the package, add the following code snippets to the notebooks:

  1. In the importee notebook (the notebook to be imported), add the following cell at the end of the notebook. Make sure that dbutils.notebook.exit is not used anywhere in the notebook and that the last cell contains exactly the following snippet and nothing else:

    import libify
    libify.exporter(globals())
    
  2. In the importer notebook (the notebook that imports other notebooks), first import libify:

    import libify
    

    and then use the following code to import the notebook(s) of your choice:

    mod1 = libify.importer(globals(), '/path/to/importee1')
    mod2 = libify.importer(globals(), '/path/to/importee2')
    

    Everything defined in importee1 and importee2 would now be contained in the namespaces mod1 and mod2 respectively, and can be accessed using the dot notation, e.g.

    x = mod1.function_defined_in_importee1()
    

Databricks Community Cloud Workaround

Databricks Community Cloud (https://community.cloud.databricks.com) does not allow calling one notebook from another notebook, but notebooks can still be imported using the following workaround. However, both of the following steps will have to be run each time a cluster is created/restarted.

  1. Run step 1 from above (Typical Usage). Make a note of the output of the last cell (only the part marked below): Capture.png

  2. In the importer notebook, call libify.importer with the config parameter as the dictionary obtained from the previous step:

    import libify
    mod1 = libify.importer(globals(), config={"key": "T5gRAUduh9uSbhHIrj2c9R4UbrXUt2WiA4aYIpl3gGo=", "file": "/tmp/tmpmcoypj24"})
    

Build/Push Pipeline GitHub issues PyPI - Format PyPI version GitHub last commit GitHub tag (latest by date) visitors Downloads

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

libify-0.78.tar.gz (3.4 kB view details)

Uploaded Source

Built Distribution

libify-0.78-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file libify-0.78.tar.gz.

File metadata

  • Download URL: libify-0.78.tar.gz
  • Upload date:
  • Size: 3.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5

File hashes

Hashes for libify-0.78.tar.gz
Algorithm Hash digest
SHA256 9d6c0ad806f4c86f152611c5ade3d1d735ef8270af0ea957f5abc27d293dda8a
MD5 ac2f49b91e95eb28a595a5f806f9fd7b
BLAKE2b-256 a71b25fad1a1baec0b5f0db6083e9488c43a4662641ad56057e652c0a013c8e8

See more details on using hashes here.

File details

Details for the file libify-0.78-py3-none-any.whl.

File metadata

  • Download URL: libify-0.78-py3-none-any.whl
  • Upload date:
  • Size: 4.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5

File hashes

Hashes for libify-0.78-py3-none-any.whl
Algorithm Hash digest
SHA256 a17fd93ef2237a204c9192c3373c2ba94680438f1356099aa095697e970493e8
MD5 a4febf06a13960aac459287a1e6a066c
BLAKE2b-256 6e7de15969adc09753ecd51de784763b5c6892cbb7bf238f294fc22efb1406f8

See more details on using hashes here.

Supported by

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