[equo] add "equo repo list"

This commit is contained in:
Fabio Erculiani
2012-05-09 02:30:08 +02:00
parent d40f164128
commit 2ff89e56d4
4 changed files with 55 additions and 23 deletions
+1
View File
@@ -78,6 +78,7 @@ help_opts = [
(2, 'disable', 3, _('disable given repository')),
(2, 'add <string>', 2, _('add repository (pass repository string)')),
(2, 'remove <id>', 2, _('remove repository')),
(2, 'list', 3, _('list active repositories')),
(2, 'mirrorsort <id>', 2, _('reorder mirrors basing on response time')),
(2, 'merge [sources] <dest>', 1, _('merge content of source repos to dest [for developers]')),
(3, '--conflicts', 1, _('also remove dependency conflicts during merge')),
+46 -22
View File
@@ -21,7 +21,7 @@ import copy
from entropy.const import etpConst, etpUi, const_debug_write
from entropy.output import red, darkred, blue, brown, bold, darkgreen, green, \
print_info, print_warning, print_error, purple, teal
print_info, print_warning, print_error, purple, teal, print_generic
from entropy.core.settings.base import SystemSettings as SysSet
from entropy.misc import ParallelTask
from entropy.i18n import _
@@ -88,28 +88,29 @@ def repositories(options):
return 1
myopts = options[1:]
if not myopts:
rc = -10
opts_len = len(myopts)
try:
repo_opt = myopts[0]
except IndexError:
repo_opt = None
if repo_opt == "enable" and opts_len:
rc = _enable_repositories(entropy_client, myopts)
elif repo_opt == "disable" and opts_len:
rc = _disable_repositories(entropy_client, myopts)
elif repo_opt == "add" and opts_len:
rc = _add_repository(entropy_client, myopts)
elif repo_opt == "remove" and opts_len:
rc = _remove_repository(entropy_client, myopts)
elif repo_opt == "list":
rc = _list_repository(entropy_client)
elif repo_opt == "mirrorsort" and opts_len:
rc = _mirror_sort(entropy_client, myopts)
elif repo_opt == "merge" and opts_len:
myopts = [x for x in myopts if x not in ("--conflicts",)]
rc = _merge_repository(entropy_client, myopts,
remove_conflicts = e_req_conflicts)
else:
repo_opt = myopts.pop(0)
if not myopts:
rc = -10
elif repo_opt == "enable":
rc = _enable_repositories(entropy_client, myopts)
elif repo_opt == "disable":
rc = _disable_repositories(entropy_client, myopts)
elif repo_opt == "add":
rc = _add_repository(entropy_client, myopts)
elif repo_opt == "remove":
rc = _remove_repository(entropy_client, myopts)
elif repo_opt == "mirrorsort":
rc = _mirror_sort(entropy_client, myopts)
elif repo_opt == "merge":
myopts = [x for x in myopts if x not in ("--conflicts",)]
rc = _merge_repository(entropy_client, myopts,
remove_conflicts = e_req_conflicts)
else:
rc = -10
rc = -10
elif cmd == "notice":
myopts = options[1:]
@@ -180,6 +181,29 @@ def _add_repository(entropy_client, repo_strings):
return 0
def _list_repository(entropy_client):
available_repos = SystemSettings['repositories']['available']
excluded_repos = SystemSettings['repositories']['excluded']
default_repo = SystemSettings['repositories']['default_repository']
repositories = entropy_client.repositories()
for repository in repositories:
repo_data = available_repos.get(repository)
desc = _("N/A")
if repo_data is None:
repo_data = excluded_repos.get(repository)
if repo_data is not None:
desc = repo_data.get('description', desc)
repo_str = " "
if repository == default_repo:
repo_str = purple("* ")
print_generic("%s%s\n %s" % (
repo_str, darkgreen(repository), brown(desc),))
return 0
def _remove_repository(entropy_client, repo_ids):
excluded_repos = SystemSettings['repositories']['excluded']
+4
View File
@@ -99,6 +99,10 @@ add repository (pass repository string)
remove repository
=item [2] B<list>
list active repositories
=item [2] B<mirrorsort E<lt>idE<gt>>
reorder mirrors basing on response time
+4 -1
View File
@@ -124,7 +124,7 @@
.\" ========================================================================
.\"
.IX Title "EQUO 1"
.TH EQUO 1 "2012-04-06" "perl v5.12.4" "Entropy"
.TH EQUO 1 "2012-05-09" "perl v5.12.4" "Entropy"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -202,6 +202,9 @@ add repository (pass repository string)
.IP "[2] \fBremove <id>\fR" 4
.IX Item "[2] remove <id>"
remove repository
.IP "[2] \fBlist\fR" 4
.IX Item "[2] list"
list active repositories
.IP "[2] \fBmirrorsort <id>\fR" 4
.IX Item "[2] mirrorsort <id>"
reorder mirrors basing on response time