tree: 45f30958e4c888f5da51854e677035149bdd6f7f [path history] [tgz]
  1. airavata/
  2. airavata_auth/
  3. airavata_experiments/
  4. airavata_jupyter_magic/
  5. airavata_sdk/
  6. docs/
  7. .gitignore
  8. __init__.py
  9. LICENSE
  10. Makefile
  11. mkdocs.yml
  12. pyproject.toml
  13. README.md
dev-tools/airavata-python-sdk/README.md

Apache Airavata Python SDK

The Apache Airavata Python SDK for third party clients to integrate with Airavata middleware

Folder Structure

  • airavata Includes thrift stubs generated by a thrift compiler. Mainly contains data model and functions. You may need to import data model packages to integrate with clients.
  • airavata_sdk
    • clients Includes integration clients, which you want to import and integrate with your code to access airavata middleware.
    • samples Includes set of sample implementation of integration clients to demonastrate the integration with airavata middleware
    • transport Includes connection handling classes and connection pool implementations
  • airavata_experiments Python APIs to run experiments from anywhere. Handles uploading data, running experiments, tracking progress, and fetching data from past runs.
  • airavata_jupyter_magic Jupyter Plugin providing magic annotations (%) to shift notebook runtimes between resources (local/remote).

Before Integration

  • Create a virtual environment
    python3 -m venv venv
    
  • Activate the virtual environment
    source venv/bin/activate
    
  • Install dependencies
    pip install -e .
    
  • Create a INI file containing server configuration details. For more information refer to default settings file settings.ini

Generating Distribution Archives (Optional)

You can generate a *.tar.gz distribution and install to any external project.

  • Make sure you have the latest versions of build and setuptools installed
    python3 -m pip install --upgrade build setuptools
    
  • Now run this command from the same directory where pyproject.toml is located
    python3 -m build .
    
  • This command should output a lot of text and once completed should generate two files in the dist directory
    dist/
        airavata_python_sdk-2.0.0-py2.py3-none-any.whl
        airavata-python-sdk-2.0.0.tar.gz
    

Now, you should be able to install those packages into your project.