[yum-cvs] yum cli.py, 1.267, 1.268 shell.py, 1.38, 1.39 yumcommands.py, 1.3, 1.4
James Bowes
jbowes at linux.duke.edu
Wed May 2 23:19:34 UTC 2007
Update of /home/groups/yum/cvs/yum
In directory login1.linux.duke.edu:/tmp/cvs-serv16918
Modified Files:
cli.py shell.py yumcommands.py
Log Message:
Add repolist command.
This is just the 'repo list' yum shell command. 'repo list' now calls the
repolist command instead.
Index: cli.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/cli.py,v
retrieving revision 1.267
retrieving revision 1.268
diff -u -r1.267 -r1.268
--- cli.py 26 Apr 2007 23:22:38 -0000 1.267
+++ cli.py 2 May 2007 23:19:32 -0000 1.268
@@ -80,6 +80,7 @@
self.registerCommand(yumcommands.ResolveDepCommand())
self.registerCommand(yumcommands.ShellCommand())
self.registerCommand(yumcommands.DepListCommand())
+ self.registerCommand(yumcommands.RepoListCommand())
def registerCommand(self, command):
for name in command.getNames():
Index: shell.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/shell.py,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- shell.py 7 Mar 2007 22:07:58 -0000 1.38
+++ shell.py 2 May 2007 23:19:32 -0000 1.39
@@ -241,20 +241,20 @@
def do_repo(self, line):
(cmd, args, line) = self.parseline(line)
if cmd in ['list', None]:
- format_string = "%-20.20s %-40.40s %s"
- if self.base.repos.repos.values():
- self.verbose_logger.log(logginglevels.INFO_2, format_string,
- 'repo id', 'repo name', 'status')
- repos = self.base.repos.repos.values()
- repos.sort()
- for repo in repos:
- if repo in self.base.repos.listEnabled() and args in ('', 'enabled'):
- self.verbose_logger.log(logginglevels.INFO_2, format_string,
- repo, repo.name, 'enabled')
- elif args in ('', 'disabled'):
- self.verbose_logger.log(logginglevels.INFO_2, format_string,
- repo, repo.name, 'disabled')
-
+ # Munge things to run the repolist command
+ cmds = self._shlex_split(args)
+ if not cmds:
+ cmds = ['all']
+ cmds.insert(0, 'repolist')
+ self.base.cmds = cmds
+
+ try:
+ self.base.parseCommands()
+ except Errors.YumBaseError:
+ pass
+ else:
+ self.base.doCommands()
+
elif cmd == 'enable':
repos = self._shlex_split(args)
for repo in repos:
Index: yumcommands.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yumcommands.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- yumcommands.py 22 Jan 2007 04:33:22 -0000 1.3
+++ yumcommands.py 2 May 2007 23:19:32 -0000 1.4
@@ -414,3 +414,40 @@
return 1, [str(e)]
+class RepoListCommand:
+ usage = 'repolist [all|enabled|disabled]'
+
+ def getNames(self):
+ return ('repolist',)
+
+ def getUsage(self):
+ return usage
+
+ def doCheck(self, base, basecmd, extcmds):
+ if len(extcmds) == 0:
+ return
+ elif len(extcmds) > 1 or extcmds[0] not in ('all', 'disabled',
+ 'enabled'):
+ raise cli.CliError
+
+ def doCommand(self, base, basecmd, extcmds):
+ if len(extcmds) == 1:
+ arg = extcmds[0]
+ else:
+ arg = 'enabled'
+
+ format_string = "%-20.20s %-40.40s %s"
+ if base.repos.repos.values():
+ base.verbose_logger.log(logginglevels.INFO_2, format_string,
+ 'repo id', 'repo name', 'status')
+ repos = base.repos.repos.values()
+ repos.sort()
+ for repo in repos:
+ if repo in base.repos.listEnabled() and arg in ('all', 'enabled'):
+ base.verbose_logger.log(logginglevels.INFO_2, format_string,
+ repo, repo.name, 'enabled')
+ elif arg in ('all', 'disabled'):
+ base.verbose_logger.log(logginglevels.INFO_2, format_string,
+ repo, repo.name, 'disabled')
+
+ return 0, []
More information about the Yum-cvs-commits
mailing list