Changeset View
Changeset View
Standalone View
Standalone View
swh/loader/git/tasks.py
# Copyright (C) 2015-2017 The Software Heritage developers | # Copyright (C) 2015-2017 The Software Heritage developers | ||||
# See the AUTHORS file at the top-level directory of this distribution | # See the AUTHORS file at the top-level directory of this distribution | ||||
# License: GNU General Public License version 3, or any later version | # License: GNU General Public License version 3, or any later version | ||||
# See top-level LICENSE file for more information | # See top-level LICENSE file for more information | ||||
import dateutil.parser | import dateutil.parser | ||||
from swh.scheduler.task import Task | from swh.scheduler.task import Task | ||||
from .loader import GitLoader, GitLoaderFromArchive | from .loader import GitLoader, GitLoaderFromArchive | ||||
from .updater import BulkUpdater | from .updater import BulkUpdater | ||||
from .reader import GitSha1RemoteReaderAndSendToQueue | |||||
# TODO: rename to LoadRemoteGitRepository | # TODO: rename to LoadRemoteGitRepository | ||||
class UpdateGitRepository(Task): | class UpdateGitRepository(Task): | ||||
"""Import a git repository from a remote location""" | """Import a git repository from a remote location""" | ||||
task_queue = 'swh_loader_git' | task_queue = 'swh_loader_git' | ||||
def run_task(self, repo_url, base_url=None): | def run_task(self, repo_url, base_url=None): | ||||
Show All 28 Lines | def run_task(self, origin_url, archive_path, date): | ||||
3. Clean up the temporary folder | 3. Clean up the temporary folder | ||||
""" | """ | ||||
loader = GitLoaderFromArchive() | loader = GitLoaderFromArchive() | ||||
loader.log = self.log | loader.log = self.log | ||||
return loader.load( | return loader.load( | ||||
origin_url, archive_path, dateutil.parser.parse(date)) | origin_url, archive_path, dateutil.parser.parse(date)) | ||||
class ReaderGitRepository(Task): | |||||
task_queue = 'swh_reader_git' | |||||
def run_task(self, repo_url, base_url=None): | |||||
"""Read a git repository from a remote location and send sha1 to | |||||
archival. | |||||
""" | |||||
loader = GitSha1RemoteReaderAndSendToQueue() | |||||
loader.log = self.log | |||||
return loader.load(repo_url) |