aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authori.Dark_Templar <darktemplar@dark-templar-archives.net>2018-05-26 18:28:53 +0300
committerBrian Dolbec <dolsen@gentoo.org>2018-05-26 08:40:31 -0700
commitd0f37a2cb9734439c2d69f74c16ffb0489a30280 (patch)
tree8ddfd36138253f1cfefcf4df57e6d634c74e8794
parentmain.py: Remove obsolete 'SYNC' option (diff)
downloadmirrorselect-d0f37a2cb9734439c2d69f74c16ffb0489a30280.tar.gz
mirrorselect-d0f37a2cb9734439c2d69f74c16ffb0489a30280.tar.bz2
mirrorselect-d0f37a2cb9734439c2d69f74c16ffb0489a30280.zip
Mirrorselect: add 'exclude' option to allow excluding hosts from mirrors list.
-rw-r--r--mirrorselect.83
-rwxr-xr-xmirrorselect/main.py7
2 files changed, 10 insertions, 0 deletions
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