| # Copyright 2014-2015 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| |
| from ....sync import _SUBMODULE_PATH_MAP |
| |
| doc = """Check repos.conf settings and sync repositories.""" |
| __doc__ = doc[:] |
| |
| module_spec = { |
| 'name': 'sync', |
| 'description': doc, |
| 'provides':{ |
| 'sync-module': { |
| 'name': "sync", |
| 'sourcefile': "sync", |
| 'class': "SyncRepos", |
| 'description': doc, |
| 'functions': ['allrepos', 'auto', 'repo'], |
| 'func_desc': { |
| 'repo': { |
| "short": "-r", "long": "--repo", |
| "help": "(sync module only): -r, --repo Sync the specified repo", |
| 'status': "Syncing %s", |
| 'action': 'store', |
| 'func': 'repo', |
| }, |
| 'allrepos': { |
| "short": "-A", "long": "--allrepos", |
| "help": "(sync module only): -A, --allrepos Sync all repos that have a sync-url defined", |
| 'status': "Syncing %s", |
| 'action': 'store_true', |
| 'dest': 'allrepos', |
| 'func': 'all_repos', |
| }, |
| 'auto': { |
| "short": "-a", "long": "--auto", |
| "help": "(sync module only): -a, --auto Sync auto-sync enabled repos only", |
| 'status': "Syncing %s", |
| 'action': 'store_true', |
| 'dest': 'auto', |
| 'func': 'auto_sync', |
| }, |
| }, |
| 'opt_desc': { |
| 'sync-submodule': { |
| "long": "--sync-submodule", |
| "help": ("(sync module only): Restrict sync " |
| "to the specified submodule(s)"), |
| "choices": tuple(_SUBMODULE_PATH_MAP), |
| "action": "append", |
| "dest": "sync_submodule", |
| }, |
| } |
| } |
| } |
| } |