Source code for galaxy.files.sources.googledrive

try:
    from fs.googledrivefs import GoogleDriveFS
    from google.oauth2.credentials import Credentials
except ImportError:
    GoogleDriveFS = None

from typing import Optional

from . import FilesSourceOptions
from ._pyfilesystem2 import PyFilesystem2FilesSource


[docs]class GoogleDriveFilesSource(PyFilesystem2FilesSource): plugin_type = "googledrive" required_module = GoogleDriveFS required_package = "fs.googledrivefs" def _open_fs(self, user_context=None, opts: Optional[FilesSourceOptions] = None): props = self._serialization_props(user_context) credentials = Credentials(**props) handle = GoogleDriveFS(credentials) return handle
__all__ = ("GoogleDriveFilesSource",)