remote: add WebDAV dependency (#4690)

This adds the dependency for WebDAV and enables calls like `import-url
remote://some-webdav/data`

Related to #4374
This commit is contained in:
Frederik Schubert
2020-10-10 00:07:34 +03:00
committed by GitHub
parent 8b28a268e8
commit 0e257adc63
4 changed files with 27 additions and 0 deletions
+6
View File
@@ -11,6 +11,8 @@ from dvc.dependency.local import LocalDependency
from dvc.dependency.param import ParamsDependency
from dvc.dependency.s3 import S3Dependency
from dvc.dependency.ssh import SSHDependency
from dvc.dependency.webdav import WebDAVDependency
from dvc.dependency.webdavs import WebDAVSDependency
from dvc.output.base import BaseOutput
from dvc.scheme import Schemes
@@ -25,6 +27,8 @@ DEPS = [
HTTPSDependency,
S3Dependency,
SSHDependency,
WebDAVDependency,
WebDAVSDependency
# NOTE: LocalDependency is the default choice
]
@@ -37,6 +41,8 @@ DEP_MAP = {
Schemes.HDFS: HDFSDependency,
Schemes.HTTP: HTTPDependency,
Schemes.HTTPS: HTTPSDependency,
Schemes.WEBDAV: WebDAVDependency,
Schemes.WEBDAVS: WebDAVSDependency,
}
+8
View File
@@ -0,0 +1,8 @@
from dvc.dependency.base import BaseDependency
from dvc.output.base import BaseOutput
from ..tree.webdav import WebDAVTree
class WebDAVDependency(BaseDependency, BaseOutput):
TREE_CLS = WebDAVTree
+6
View File
@@ -0,0 +1,6 @@
from ..tree.webdavs import WebDAVSTree
from .webdav import WebDAVDependency
class WebDAVSDependency(WebDAVDependency):
TREE_CLS = WebDAVSTree
+7
View File
@@ -0,0 +1,7 @@
from dvc.dependency.webdav import WebDAVDependency
from tests.unit.dependency.test_local import TestLocalDependency
class TestWebDAVDependency(TestLocalDependency):
def _get_cls(self):
return WebDAVDependency