41 lines
979 B
Python
41 lines
979 B
Python
self.description = "Hook with NeedsTargets"
|
|
|
|
self.add_hook("hook",
|
|
"""
|
|
[Trigger]
|
|
Type = Package
|
|
Operation = Install
|
|
Target = foo
|
|
|
|
# duplicate trigger to check that duplicate targets are removed
|
|
[Trigger]
|
|
Type = Package
|
|
Operation = Install
|
|
Target = foo
|
|
|
|
[Trigger]
|
|
Type = File
|
|
Operation = Install
|
|
# matches files in 'file/' but not 'file/' itself
|
|
Target = file/?*
|
|
|
|
[Action]
|
|
When = PreTransaction
|
|
Exec = bin/sh -c 'while read -r tgt; do printf "%s\\n" "$tgt"; done > var/log/hook-output'
|
|
NeedsTargets
|
|
""");
|
|
|
|
p1 = pmpkg("foo")
|
|
p1.files = ["file/foo"]
|
|
self.addpkg(p1)
|
|
|
|
p2 = pmpkg("bar")
|
|
p2.files = ["file/bar"]
|
|
self.addpkg(p2)
|
|
|
|
self.args = "-U %s %s" % (p1.filename(), p2.filename())
|
|
|
|
self.addrule("PACMAN_RETCODE=0")
|
|
self.addrule("PKG_EXIST=foo")
|
|
self.addrule("FILE_CONTENTS=var/log/hook-output|file/bar\nfile/foo\nfoo\n")
|