Skip to main content

A Python client for FairCompute API

Project description

Fair Compute Python Client

Fair is a Python client for Fair Compute API. It allows to schedule jobs, monitor their status and retrieve results.

Creating Fair Account

To use FairCompute Python Client you need to have a Fair account. Please sign up at https://faircompute.com.

Launching a job

To launch a job, create a FairClient instance and call run method.

from fair import FairClient

client = FairClient('http://faircompute:8000', '<email>', '<password>')
client.run(image='alpine', command=['echo', 'hello fair compute'])

Developing Fair

This section is for developers of FairCompute Python client library.

Prerequisites

Create virtual environment and install requirements.

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Testing

By default, testing is done against client running on localhost, so you need to start the server and at least one compute node locally. To start the server locally see https://github.com/faircompute/faircompute#running-locally.

Project is using pytest for testing. To run all tests:

pytest

To run tests against remote server, set FAIRCOMPUTE_SERVER_URL, FAIRCOMPUTE_USER_EMAIL and FAIRCOMPUTE_USER_PASSWORD environment variables:

FAIRCOMPUTE_SERVER_URL=http://faircompute:8000 FAIRCOMPUTE_USER_EMAIL=<email> FAIRCOMPUTE_USER_PASSWORD=<password> pytest

Uploading to PyPI

Please follow the instructions at https://packaging.python.org/tutorials/packaging-projects/

rm -rf dist
python3 -m build
python3 -m twine upload --repository testpypi dist/*
python3 -m twine upload dist/*

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

faircompute-0.22.1.tar.gz (5.3 kB view hashes)

Uploaded Source

Built Distribution

faircompute-0.22.1-py3-none-any.whl (5.7 kB view hashes)

Uploaded Python 3

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