blob: a413553a17bd180559b943456343efc73392b88b [file] [log] [blame]
# Copyright 2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
doc = """WebRSync plug-in module for portage.
Performs a http download of a portage snapshot, verifies and
unpacks it to the repo location."""
__doc__ = doc[:]
import os
from portage.sync.config_checks import CheckSyncConfig
DEFAULT_CLASS = "WebRsync"
AVAILABLE_CLASSES = [ "WebRsync", "PyWebsync"]
options = {"1": "WebRsync", "2": "PyWebsync"}
config_class = DEFAULT_CLASS
try:
test_param = os.environ["TESTIT"]
if test_param in options:
config_class = options[test_param]
except KeyError:
pass
module_spec = {
'name': 'webrsync',
'description': doc,
'provides':{
'webrsync-module': {
'name': "webrsync",
'sourcefile': "webrsync",
'class': config_class,
'description': doc,
'functions': ['sync', 'new', 'exists'],
'func_desc': {
'sync': 'Performs an archived http download of the ' +
'repository, then unpacks it. Optionally it performs a ' +
'gpg verification of the downloaded file(s)',
'new': 'Creates the new repository at the specified location',
'exists': 'Returns a boolean of whether the specified dir ' +
'exists and is a valid repository',
},
'validate_config': CheckSyncConfig,
'module_specific_options': (
'sync-webrsync-delta',
'sync-webrsync-keep-snapshots',
'sync-webrsync-verify-signature',
),
},
}
}