This application provides a WebDAV that supports multi-tenancy. It is based on StoRM-WebDAV. We have added a manager level that accepts requests, authenticates the user, identifies the local username of the user, starts a StoRM-WebDAV server for that local user with a randomly assigned port to listen on, and forwards the user's request to that port. The StoRM-WebDAV server will then handle the request in the usual way. If the StoRM-WebDAV server is inactive for 10 minutes, it will be shut down by the manager. If another request comes in for a different user, the manager will start another StoRM-WebDAV server for that user in the same way.
Software requirements for installing Teapot can be found in requirements.txt.
To install Teapot, first build the rpm package from source by running
./rpm/teapot-rpm.sh
, then install it.
Please refer to CONFIGURATION.md for information on how to configure Teapot.
To start Teapot, run python3 /usr/share/teapot/teapot.py
.
Functional tests can be found in /robot
. To execute them, run e.g.
robot teapot-tests.robot
.
The current version of Teapot is 0.5.0.
Paul Millar, Dijana Vrbanec, Tim Wetzel
Teapot is a WebDAV solution that supports multi-tenancy. It is based on StoRM-WebDAV.