Isabl CLI
Terms of Use: Academic Research
isabl_cli is a command line client and SDK for the Isabl Platform infrastructure.
🧬 Isabl Platform
-
Isabl is a platform for the integration, management, and processing of individual-centric multimodal data. Welcome to the Isabl Documentation!
-
Isabl is a plug-and-play data science framework designed to support the processing of multimodal patient-centric data. Have questions? Ask here.
-
Isabl has been developed by the Elli Papaemmanuil's Lab at Memorial Sloan Kettering Cancer Center, and it's currently used by multiple scientific groups and contributors.
-
Learn more: Isabl documentation.
📓 Publication
Medina-Martínez, J.S., Arango-Ossa, J.E., Levine, M.F. et al. Isabl Platform, a digital biobank for processing multimodal patient data. BMC Bioinformatics 21, 549 (2020).
https://doi.org/10.1186/s12859-020-03879-7
Installation
pip install isabl_cli
Development Setup
Prerequisites
- Python 3.6 or higher
- Docker and Docker Compose (for running integration tests)
- Git (for cloning the API repository during tests)
Setup Steps
-
Clone the repository:
git clone https://github.com/papaemmelab/isabl_cli.git cd isabl_cli
-
Install the package in editable mode with test dependencies:
pip install -e .[test]
This installs the package in development mode along with all testing dependencies (pytest, coverage, black, etc.).
-
Verify the installation:
isabl --help
Testing
The test suite can be run in two ways:
Running Tests via Script (Recommended)
The test script (./tests/test-with-compose.sh) automatically clones the isabl_api repository, starts the API and database through Docker containers, then executes the test suite using pytest with coverage reporting.
Run the full test suite:
./tests/test-with-compose.sh
To skip the build step (faster for subsequent runs):
./tests/test-with-compose.sh --skip-build
Note: The test script requires the API to be running. It will clone the isabl_api repository into a sibling api directory if it doesn't exist.
Running Tests Directly
If you have a local Isabl API instance running (e.g., via docker compose up -d in the isabl_api repository), you can run pytest commands directly:
# Set required environment variables
export ISABL_CLIENT_ID=test-cli-client
export ISABL_API_URL=http://localhost:8000/api/v1/
# Run tests with coverage
pytest --cov=isabl_cli tests/
This allows for faster iteration during development without rebuilding containers.
Running Specific Tests
You can run specific test files or test functions:
# Run a specific test file
pytest tests/test_api.py
# Run a specific test function
pytest tests/test_api.py::test_function_name
# Run with verbose output
pytest -v tests/
Usage
# Set up your environment variables
export ISABL_API_URL="http://<your-isabl-instance>/api/v1/"
export CLIENT_ID="<your-client-id>"
# Authenticate and cache credentials
isabl login
# See all available commands
isabl --help
CI/CD Setup
The GitHub Actions workflow requires the following secrets to be configured in the repository settings:
Required Secrets
GH_PAT: GitHub Personal Access Token for authenticating with GitHub (used to clone theisabl_apirepository during tests)DOCKER_USERNAME: Docker Hub username for the papaemmelab organizationDOCKER_PASSWORD: Docker Hub password or access token for the papaemmelab organizationCODECOV_TOKEN: Codecov token for the papaemmelab/isabl_cli repository
Configure these secrets in your GitHub repository under Settings → Secrets and variables → Actions.
Contributing
Contributions are welcome and greatly appreciated, check our contributing guidelines!
License
isabl is free for academic and research use. For commercial use, please contact us.
Credits
Isabl was created at Elli Papaemmanuil's lab.
Metadata
Release files for isabl-cli 2.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| isabl_cli-2.0.2.tar.gz | 80.2 kB | With provenance | Details for isabl_cli-2.0.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| isabl_cli-2.0.2-py3-none-any.whl | Python 3 | none | any | Details for isabl_cli-2.0.2-py3-none-any.whl |
Total release size: 172.0 kB
Release files / isabl_cli-2.0.2.tar.gz
| Download URL | isabl_cli-2.0.2.tar.gz |
|---|---|
| Size | 80.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c396d635a3cfa32a525d5f7eeab51e54656d3de12837ca1485adb6a57a93f246
|
|
BLAKE2b-256 checksum How to use checksums |
e9ed70b76adecc7b134037a7e6f8ff0ceec513bf7b8a383c80412d54a0160794
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 24, 2026.
Transparency logRelease files / isabl_cli-2.0.2-py3-none-any.whl
| Download URL | isabl_cli-2.0.2-py3-none-any.whl |
|---|---|
| Size | 91.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c8fc72484f20117be45e8d500fefddfd70d9f4a78aa0dbe91531dd489f28104d
|
|
BLAKE2b-256 checksum How to use checksums |
8d498ed06c184a3b0c5bc4631c9e7ca206730bf142ac7f1e5aa1a47b5eadab6f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 24, 2026.
Transparency logSecurity for isabl-cli 2.0.2
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.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for isabl_cli-2.0.2.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 24, 2026.
Transparency logA 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.