Skip to main content

poseidon: tame the digital ocean

Python library for managing your Digital Ocean account

Latest PyPI version Number of PyPI downloads

The DigitalOcean API allows you to manage Droplets and resources within the DigitalOcean cloud in a simple, programmatic way using conventional HTTP requests. The endpoints are intuitive and powerful, allowing you to easily make calls to retrieve information or to execute actions.

This library starts with a python wrapper for the API and aims to build tools to make it easier to manage, provision, and deploy to Digital Ocean.

Highlights

  • Full featured: API wrapper covering the published DigitalOcean API v2

  • Tested: integration test coverage against most of the API

  • SSH integration: integrates paramiko library so you can SSH in and issue commands

  • Deployment conveniences: methods like apt, pip, and git for easier deployment

Example

Deploy a new Flask app from github

import poseidon as P
client = P.connect()
ssh_key_id = client.keys.list()[0]['id']
droplet = client.droplets.create('example.changshe.io', 'sfo1', '512mb',
                              'ubuntu-14-04-x64', ssh_keys=[ssh_key_id])
domain = client.domains.create('example.changshe.io', droplet.ip_address)
records = client.domains.records(domain['name'])
records.create('A', data=droplet.ip_address)
ssh = droplet.connect()
ssh.apt('git python-pip')
ssh.git(username='changhiskhan', repo='hello_world')
ssh.chdir('hello_world')
ssh.pip_r('requirements.txt')
ssh.nohup('python app.py') # DNS takes a while to propagate
print ssh.ps()

Metadata

Release files for poseidon 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for poseidon 0.3.1
File Size Uploaded
poseidon-0.3.1.tar.gz 11.6 kB Details

Release files / poseidon-0.3.1.tar.gz

Download URL poseidon-0.3.1.tar.gz
Size 11.6 kB
Tags Source
SHA-256 checksum
How to use checksums
a567c5b5ab6cd23857754b734b014cafee2053c31ca5171615f0752188e600d5
BLAKE2b-256 checksum
How to use checksums
6af32d69dd0cfedb83e1865e9940dde829bc61071562f62334e23927a974a68d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.3.1 This release

1 release file

0.3.0

1 release file

0.2.0

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page