DaviX

Last updated
Davix
Developer CERN
Stable release
0.8.10 / February 13, 2025;10 months ago (2025-02-13)
Repository github.com/cern-fts/davix
Written in C++
Operating system Linux, macOS, Windows
Type WebDAV client
License GNU Lesser General Public License [1]
Website davix.web.cern.ch/davix/docs/devel/

Davix is an open-source client for WebDAV and Amazon S3 available for Microsoft Windows, Apple MacOSX and Linux. Davix is written in C++ and provide several command-line tools and a C++ shared library. [2] [3]

Contents

Davix is a tool for remote I/O, file transfer and file management based on the HTTP protocol.

Davix is used at CERN by several projects, including the ROOT data analysis framework, [4] [5] the File Transfer Services (FTS), [6] the European Middleware Initiative gfal2 library [7] [8] or the dynamic storage federation project. [9]

Feature support

Davix supports:

Examples of Davix command line use

to upload a file to a WebDAV repository

$davix-putlocal_filedavs://example.com/folder1/remote_file 

to download a file from a S3 bucket with AWS authentication

$davix-get--s3secretkeyA--s3accesskeyBs3://bucket1.s3-instance.com/long/path/remote_filelocal_file 

To list a WebDAV repository over https

$davix-lsdavs://example.com/folder1/folder2/ 

To list an S3 bucket with AWS authentication

$davix-ls--s3secretkeyA--s3accesskeyBs3://bucket1.s3-instance.com/ 

To create a subdirectory over WebDAV

$davix-mkdirdavs://example.com/folder1/folder2/folder4 

Execute an HTTP PUT request to a RESTful webservice with the content "hello"

$davix-http-XPUT—data"hello"http://example.com/rest/api/service 

Platforms

Linux

Davix is available on several linux distributions via the Fedora, RedHat EPEL, [10] Debian [11] and Ubuntu [12] software repositories.

The European Middleware Initiative [13] and the European Grid Infrastructure [14] distribute it through their project repositories.

macOS

The Homebrew distribution channel distributes sources and binaries for Davix. [15]

Windows

Cygwin compatible binaries are available for Windows.

See also

References

  1. https://raw.githubusercontent.com/cern-it-sdc-id/davix/master/LICENSE [ bare URL plain text file ]
  2. Devresse, A.; Furano, F. (2014). "Efficient HTTP Based I/O on Very Large Datasets for High Performance Computing with the Libdavix Library". Big Data Benchmarks, Performance Optimization, and Emerging Hardware. Lecture Notes in Computer Science. Vol. 8807. p. 194. arXiv: 1410.4168 . doi:10.1007/978-3-319-13021-7_15. ISBN   978-3-319-13020-0. S2CID   7644795. "libdavix/Davix"
  3. Furano, F.; Devresse, A.; Keeble, O.; Hellmich, M.; Ayllón, A. Á. (2014). "Towards an HTTP Ecosystem for HEP Data Access". Journal of Physics: Conference Series. 513 (3) 032034. Bibcode:2014JPhCS.513c2034F. doi: 10.1088/1742-6596/513/3/032034 . "Http Ecosystem for HEP: Davix"
  4. ROOT and Davix https://dmc.web.cern.ch/projects/davix/root-and-davix-tutorial Archived 2015-01-31 at the Wayback Machine
  5. ROOT Davix integration https://root.cern.ch/drupal/content/root-version-v5-34-00-patch-release-notes
  6. Ayllon, A. A.; Salichos, M.; Simon, M. K.; Keeble, O. (2014). "FTS3: New Data Movement Service for WLCG". Journal of Physics: Conference Series. 513 (3) 032081. Bibcode:2014JPhCS.513c2081A. doi: 10.1088/1742-6596/513/3/032081 . "File Transfer Service"
  7. GridPP usage recommendations https://www.gridpp.ac.uk/wiki/DPM_Fuse
  8. Nilsen, J. K.; Cameron, D.; Devresse, A.; Molnar, Z.; Nagy, Z.; Salichos, M. (2012). "EMI datalib - joining the best of ARC and g Lite data libraries". Journal of Physics: Conference Series. 396 (5) 052057. Bibcode:2012JPhCS.396e2057N. doi: 10.1088/1742-6596/396/5/052057 . EMI datalib
  9. Furano, F.; Brito Da Rocha, R.; Devresse, A.; Keeble, O.; Álvarez Ayllón, A.; Fuhrmann, P. (2012). "Dynamic federations: Storage aggregation using open tools and protocols". Journal of Physics: Conference Series. 396 (3) 032042. Bibcode:2012JPhCS.396c2042F. doi: 10.1088/1742-6596/396/3/032042 . DynaFed
  10. Fedora EPEL pkgdb https://admin.fedoraproject.org/pkgdb/package/davix/ Archived 2015-02-02 at the Wayback Machine
  11. Debian pkg davix https://packages.debian.org/search?keywords=davix
  12. Ubuntu pkg repo davix https://launchpad.net/ubuntu/+source/davix
  13. EMI release http://www.eu-emi.eu/releases/emi-3-monte-bianco/updates/-/asset_publisher/5Na8/content/update-16-12-05-2014-v-3-7-4-1 Archived 2015-02-02 at the Wayback Machine
  14. UMD repositories http://repository.egi.eu/2014/11/10/davix-0-3-6/ Archived 2015-02-02 at the Wayback Machine
  15. Davix homebrew http://brewformulas.org/Davix