mirror of
https://github.com/valitydev/salt.git
synced 2024-11-08 09:23:56 +00:00
Merge pull request #3482 from techhat/pacman
Adding file_list and file_dict to pacman.py
This commit is contained in:
commit
b9ed0c58a2
@ -377,3 +377,55 @@ def compare(pkg1='', oper='==', pkg2=''):
|
|||||||
salt '*' pkg.compare pkg1='0.2.4-0' oper='<' pkg2='0.2.4.1-0'
|
salt '*' pkg.compare pkg1='0.2.4-0' oper='<' pkg2='0.2.4.1-0'
|
||||||
'''
|
'''
|
||||||
return __salt__['pkg_resource.compare'](pkg1=pkg1, oper=oper, pkg2=pkg2)
|
return __salt__['pkg_resource.compare'](pkg1=pkg1, oper=oper, pkg2=pkg2)
|
||||||
|
|
||||||
|
|
||||||
|
def file_list(*packages):
|
||||||
|
'''
|
||||||
|
List the files that belong to a package. Not specifying any packages will
|
||||||
|
return a list of _every_ file on the system's rpm database (not generally
|
||||||
|
recommended).
|
||||||
|
|
||||||
|
CLI Examples::
|
||||||
|
|
||||||
|
salt '*' pkg.file_list httpd
|
||||||
|
salt '*' pkg.file_list httpd postfix
|
||||||
|
salt '*' pkg.file_list
|
||||||
|
'''
|
||||||
|
errors = []
|
||||||
|
ret = []
|
||||||
|
cmd = 'pacman -Ql {0}'.format(' '.join(packages))
|
||||||
|
for line in __salt__['cmd.run'](cmd).splitlines():
|
||||||
|
if line.startswith('error'):
|
||||||
|
errors.append(line)
|
||||||
|
else:
|
||||||
|
comps = line.split()
|
||||||
|
ret.append(' '.join(comps[1:]))
|
||||||
|
return {'errors': errors, 'files': ret}
|
||||||
|
|
||||||
|
|
||||||
|
def file_dict(*packages):
|
||||||
|
'''
|
||||||
|
List the files that belong to a package, grouped by package. Not
|
||||||
|
specifying any packages will return a list of _every_ file on the system's
|
||||||
|
rpm database (not generally recommended).
|
||||||
|
|
||||||
|
CLI Examples::
|
||||||
|
|
||||||
|
salt '*' pkg.file_list httpd
|
||||||
|
salt '*' pkg.file_list httpd postfix
|
||||||
|
salt '*' pkg.file_list
|
||||||
|
'''
|
||||||
|
errors = []
|
||||||
|
ret = {}
|
||||||
|
cmd = 'pacman -Ql {0}'.format(' '.join(packages))
|
||||||
|
for line in __salt__['cmd.run'](cmd).splitlines():
|
||||||
|
if line.startswith('error'):
|
||||||
|
errors.append(line)
|
||||||
|
else:
|
||||||
|
comps = line.split()
|
||||||
|
if not comps[0] in ret:
|
||||||
|
ret[comps[0]] = []
|
||||||
|
ret[comps[0]].append((' '.join(comps[1:])))
|
||||||
|
return {'errors': errors, 'packages': ret}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user