From c97c9a117bea6bacbbeb1069e6a0b8da0ca19897 Mon Sep 17 00:00:00 2001 From: Onno Zweers Date: Mon, 20 Oct 2025 22:06:33 +0200 Subject: [PATCH 1/9] Implement --upload * Implement --upload, including --verify-checksum * Improve debug messages in get-webdav-door * New function exists() tells whether a path exists in dCache (file/dir) --- ada/ada | 181 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 178 insertions(+), 3 deletions(-) diff --git a/ada/ada b/ada/ada index 4b7c13a..3d7fd3a 100755 --- a/ada/ada +++ b/ada/ada @@ -122,6 +122,25 @@ usage() { Please note, that dCache storage systems usually don't have an undelete option. + --upload /localpath/file /remotepath/[file] [--verify-checksum] + Upload a file from the local system to dCache. + With --verify-checksum, Ada computes the local file's + MD5 checksum and sends it along with the upload. + If the uploaded file's checksum does not match, + dCache aborts the transfer and removes the corrupt file. + This ensures data integrity during transfer. + + Ada will try several ways to discover a WebDAV door + to use for the transfer. + If that fails, you can specify the door explicitly by + prepending it to the remote path, for example: + https://webdav.example.org/remotepath/remotefile + + --download /remotepath/file /localpath/[file] [--verify-checksum] + Download a file from dCache. + With --verify-checksum, Ada will verify the file's checksum + after download, and show an error message if it doesn't match. + --setlabel