---
 cli.py        |    9 +++++++++
 docs/yum.8    |    6 ++++++
 yum/config.py |    2 ++
 yum/repos.py  |    2 ++
 4 files changed, 19 insertions(+), 0 deletions(-)

diff --git a/cli.py b/cli.py
index cf2c369..3334e49 100755
--- a/cli.py
+++ b/cli.py
@@ -566,6 +566,9 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
                     errstring += '  %s: %s\n' % (key, error)
             raise yum.Errors.YumBaseError, errstring
 
+        if self.conf.dlonly:
+            return 0
+
         # Check GPG signatures
         if self.gpgsigcheck(downloadpkgs) != 0:
             return -1
@@ -2084,6 +2087,8 @@ class YumOptionParser(OptionParser):
                 self.base.conf.assumeyes = 1
             if opts.assumeno:
                 self.base.conf.assumeno  = 1
+            self.base.conf.dlonly = opts.dlonly
+            self.base.conf.dldir = opts.dldir
 
             #  Treat users like root as much as possible:
             if not self.base.setCacheDir():
@@ -2305,6 +2310,10 @@ class YumOptionParser(OptionParser):
                 help=_("control whether color is used"))
         group.add_option("", "--releasever", dest="releasever", default=None, 
                 help=_("set value of $releasever in yum config and repo 
files"))
+        group.add_option("--downloadonly", dest="dlonly", action="store_true",
+                help=_("don't update, just download"))
+        group.add_option("--downloaddir", dest="dldir", default=None,
+                help=_("specifies an alternate directory to store packages"))
         group.add_option("", "--setopt", dest="setopts", default=[],
                 action="append", help=_("set arbitrary config and repo 
options"))
 
diff --git a/docs/yum.8 b/docs/yum.8
index dab01f6..65ff448 100644
--- a/docs/yum.8
+++ b/docs/yum.8
@@ -586,6 +586,12 @@ configuration to stop this).
 This option makes yum go slower, checking for things that shouldn't be possible
 making it more tolerant of external errors.
 .br
+.IP "\fB\-\-downloadonly\fP"
+Don't update, just download.
+.br
+.IP "\fB\-\-downloaddir=directory\fP"
+Specifies an alternate directory to store packages.
+.br
 .IP "\fB\-\-setopt=option=value\fP"
 Set any config option in yum config or repo files. For options in the global 
 config just use: \-\-setopt=option=value for repo options use: 
\-\-setopt=repoid.option=value
diff --git a/yum/config.py b/yum/config.py
index 74be397..bce9d49 100644
--- a/yum/config.py
+++ b/yum/config.py
@@ -865,6 +865,8 @@ class YumConf(StartupConf):
                                              'default' 
:'single-user-commands'})
 
     recheck_installed_requires = BoolOption(False)
+    dlonly = BoolOption(False)
+    dldir = Option()
 
     _reposlist = []
 
diff --git a/yum/repos.py b/yum/repos.py
index 6d4c20e..92ca6e8 100644
--- a/yum/repos.py
+++ b/yum/repos.py
@@ -129,6 +129,8 @@ class RepoStorage:
             # so nothing else touches us
             if not repo.enabled:
                 self.disableRepo(repo.id)
+            elif self.ayum.conf.dldir:
+                repo.pkgdir = self.ayum.conf.dldir
                 
         self._setup = True
         self.retrieveAllMD()
-- 
1.7.4.4

_______________________________________________
Yum-devel mailing list
[email protected]
http://lists.baseurl.org/mailman/listinfo/yum-devel

Reply via email to