Dud uses rclone to synchronize the local Dud cache (.dud/cache) with a remote storage provider. To share data, you must configure a remote in a project-specific rclone configuration file and then point Dud to that remote.
1. Configure Rclone
When you run dud init, Dud creates .dud/rclone.conf. You can use the rclone config command with the --config flag to set up a remote interactively, or manually edit the file.
Example of a local filesystem remote in .dud/rclone.conf:
[fake_remote]
type = local
2. Configure Dud Remote
Use the dud config set command to tell Dud which rclone remote to use. The value must follow the rclone remote path syntax (e.g., remote_name:path/to/cache).
dud config set remote fake_remote:/tmp/dud/cache
3. Push and Fetch Data
dud push: Iterates through all stages, looks up committed artifacts by checksum, and uses rclone to upload them to the remote cache.dud fetch: The inverse of push; it looks up artifacts from stage files and copies them from the remote cache to your local .dud/cache.
# Set the remote
dud config set remote fake_remote:/tmp/dud/cache
# Upload data to remote
dud push
# Download data from remote
dud fetch