From d0f37a2cb9734439c2d69f74c16ffb0489a30280 Mon Sep 17 00:00:00 2001 From: "i.Dark_Templar" Date: Sat, 26 May 2018 18:28:53 +0300 Subject: Mirrorselect: add 'exclude' option to allow excluding hosts from mirrors list. --- mirrorselect.8 | 3 +++ mirrorselect/main.py | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/mirrorselect.8 b/mirrorselect.8 index cd7b8bb..3a1e304 100644 --- a/mirrorselect.8 +++ b/mirrorselect.8 @@ -96,6 +96,9 @@ download mirrors. If this is not specified, a default of 1 is used. .TP .BI \-t " TIMEOUT " "\fR,\fP \-timeout" " TIMEOUT " Timeout for deep mode. Defaults to 10 seconds. +.TP +.BI \-e " EXCLUDE " "\fR,\fP \-exclude" " EXCLUDE " +Exclude host from mirrors list. .SH "EXAMPLES" automatic: diff --git a/mirrorselect/main.py b/mirrorselect/main.py index 04698f3..b49461b 100755 --- a/mirrorselect/main.py +++ b/mirrorselect/main.py @@ -243,6 +243,9 @@ class MirrorSelect(object): group.add_option( "-t", "--timeout", action="store", type="int", default="10", help="Timeout for deep mode. Defaults to 10 seconds.") + group.add_option( + "-e", "--exclude", action="append", dest="exclude", + default=None, help="Exclude host from mirrors list.") @@ -302,6 +305,10 @@ class MirrorSelect(object): else: self.output.write("using url: %s\n" % MIRRORS_3_XML, 2) hosts = Extractor(MIRRORS_3_XML, options, self.output).hosts + + if options.exclude: + hosts = [x for x in hosts if x[0] not in options.exclude] + return hosts -- cgit v1.2.3-18-g5258