Python SDK for the Driftstone API.
Project description
Driftstone - Python
Python SDK for the Driftstone repository API.
Install
pip install driftstone
Quick Start
from driftstone import Driftstone
client = Driftstone(api_key="your-api-key")
repo = client.repos.create(
"hello-world",
)
upload = client.repos.create_upload(
"hello-world",
storage_dir="ver-1234abcd",
files=[{"name": "README.md", "hash": "64-character-sha256-or-client-hash"}],
)
# Upload each file to the returned signed URL with PUT and
# Content-Type: application/octet-stream.
for upload_url in upload.upload_urls:
print(upload_url.name, upload_url.url)
client.repos.complete_upload("hello-world", upload.upload_id)
download = client.repos.create_download(
"hello-world",
type="main",
files=[{"path": "ver-1234abcd/README.md"}],
)
for download_url in download.download_urls:
print(download_url.path, download_url.url)
branch = client.repos.create_branch(
"hello-world",
"feature-readme",
storage_dir="state-123",
transforms={"README.md": "# Example Repo\nUpdated content.\n"},
)
print(repo.id, branch.name)
Using A Context Manager
from driftstone import Driftstone
with Driftstone(api_key="your-api-key") as client:
repo = client.repos.get("hello-world")
branches = client.repos.list_branches(repo.slug)
print(repo.name, [branch.name for branch in branches])
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.
Source Distribution
driftstone-1.0.1.tar.gz
(7.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file driftstone-1.0.1.tar.gz.
File metadata
- Download URL: driftstone-1.0.1.tar.gz
- Upload date:
- Size: 7.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5edee4f3f0c482aabcbc16cd9ab31a81aa6ce7d0d073f6546b1db17bad89f121
|
|
| MD5 |
41e9d2f0352b5c5298591bf6778ca26a
|
|
| BLAKE2b-256 |
8ccfcbedd11e016e940a7529c55f72fd42a32071aa0b90654b46585360ce9d61
|
File details
Details for the file driftstone-1.0.1-py3-none-any.whl.
File metadata
- Download URL: driftstone-1.0.1-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
687828e6e477fdce408cf34fe9875021f2f049473da1a82fbb6240dc595a4f5a
|
|
| MD5 |
aaf66b1dadf2a69eb106667acd47e06b
|
|
| BLAKE2b-256 |
f70e7416aedc7af90e1e5b3cb197c9480f3f33009ace9c9809b49e770b9cc824
|