Run Python jobs on the cloud using DISCO
Project description
Dis.co Python SDK
This package lets you run jobs on Dis.co platform from a Python program.
Using the SDK, you can create computing jobs, run them on Dis.co, and get their results to your local machine. It is possible to offload any kind of Python program to be run on Dis.co.
Prerequisites
-
An Dis.co account.
-
Python version 3.6 and up.
-
Dis.co Python SDK installed:
$ pip install disco
Example
import disco
import pathlib
disco.set_credentials('john@example.com', 'my_password', save_to_config=True)
my_file_id = disco.upload_file('my_file.py', pathlib.Path('/home/bob/my_file.py'))
job = disco.Job.create(my_file_id)
job.start()
(task_result,) = job.get_results(block=True)
task_result.write_files('/home/bob/my_result')
The code above uploads the file /home/bob/my_file.py
, runs it on Dis.co cloud, waits for the job to finish,
and writes the results to /home/bob/my_result
.
When the job has been created, you can see it listed in list_jobs()
:
>>> import disco
>>> disco.Job.list_jobs())
[{'id': '5d650d25179854000d72b8cc', 'archived': False, 'name': 'd08e3e029bfc412ebc316e21f1a7dae0', 'status': 'Done', 'taskStates': ['Success']}]
This functions returns an instance of Job
, which gives access to many useful operations on a job
(see the API documentation).
Environment variables
The disco
package supports these environment variables:
DISCO_BASE_URL
- base URL of the Dis.co server. Default:https://app.dis.co
DISCO_EMAIL
- user's email to for authenticating with the Dis.co server.DISCO_PASSWORD
- password for authenticating with the Dis.co server.DISCO_LIVE_TESTS
- set true to run our live tests.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.