Skip to main content

dvc-yadisk

Yandex Disk remote storage plugin for DVC (Data Version Control).

Installation

# Using uv
uv add dvc-yadisk

# Using pip
pip install dvc-yadisk

After installation, enable the plugin:

# Run the enable script to register the plugin with DVC
dvc-yadisk-enable

This creates a sitecustomize.py file in your Python environment that loads the plugin automatically when DVC starts.

Configuration

1. Get Yandex Disk OAuth Token

  1. Go to Yandex Poginon
  2. Create a token
  3. Copy the token

2. Configure DVC Remote

# Add a Yandex Disk remote
dvc remote add -d myremote yadisk://my-dvc-data

# Set the OAuth token (use --local to avoid committing token to git)
dvc remote modify --local myremote token YOUR_OAUTH_TOKEN

Or use environment variable:

export YADISK_TOKEN=YOUR_OAUTH_TOKEN

3. Use DVC as Normal

# Track data
dvc add data/

# Push to Yandex Disk
dvc push

# Pull from Yandex Disk
dvc pull

Configuration Options

Option Environment Variable Description
token YADISK_TOKEN OAuth access token (required)

Example Usage

from dvc_yadisk import YaDiskFileSystem

# Create filesystem instance
fs = YaDiskFileSystem(token="your_oauth_token")

# List files
files = fs.ls("my-folder")

# Check if file exists
exists = fs.exists("my-folder/data.csv")

# Read file
data = fs.cat_file("my-folder/data.csv")

# Write file
fs.pipe_file("my-folder/output.txt", b"Hello, World!")

Async Usage

import asyncio
from dvc_yadisk import get_async_filesystem

async def main():
    AsyncFS = get_async_filesystem()
    fs = AsyncFS(token="your_oauth_token")

    # List files
    files = await fs.ls("my-folder")

    # Read file
    data = await fs.cat_file("my-folder/data.csv")

asyncio.run(main())

Limitations

  • Maximum file size: 1GB (50GB for Yandex 360 subscribers)
  • Upload URLs are valid for 30 minutes
  • API rate limits apply

Development

# Clone repository
git clone https://github.com/Suro4ek/dvc-yadisk.git
cd dvc-yadisk

# Install with dev dependencies
uv sync --dev

# Run tests
uv run pytest

# Run tests with coverage
uv run pytest --cov=dvc_yadisk

# Type checking
uv run mypy src/dvc_yadisk

# Linting
uv run ruff check src/dvc_yadisk

License

Apache License 2.0

Metadata

Release files for dvc-yadisk 0.1.8

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

Source distribution (sdist)

Source distribution for dvc-yadisk 0.1.8
File Size Uploaded
dvc_yadisk-0.1.8.tar.gz 197.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dvc-yadisk 0.1.8
File Interpreter ABI Platform
dvc_yadisk-0.1.8-py3-none-any.whl Python 3 none any Details

Total release size: 211.8 kB

Release files / dvc_yadisk-0.1.8.tar.gz

Download URL dvc_yadisk-0.1.8.tar.gz
Size 197.8 kB
Tags Source
SHA-256 checksum
How to use checksums
518c877f50895bd1fe53ad83c57d930c8a7a2807465be0f7965e1b581447d2eb
BLAKE2b-256 checksum
How to use checksums
48474b02c7c0afbb125af5fa15772b97194a334c0388f296854127aab54bfc43
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Jan 10, 2026.

Transparency log

Release files / dvc_yadisk-0.1.8-py3-none-any.whl

Download URL dvc_yadisk-0.1.8-py3-none-any.whl
Size 14.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
237de8125c1e98fed1ea676e77403893858d82f36a5542820383ae72ec53c795
BLAKE2b-256 checksum
How to use checksums
5a34a646a0cd7ea27416521470bcf95473dda86986fd4a4cc5e7850aaba2d2d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Jan 10, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.8 This release

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

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