mirror of
https://gerrit.googlesource.com/git-repo
synced 2024-12-21 07:16:21 +00:00
RepoHook: set __file__ when running the hook
A common design pattern is to use __file__ to find the location of the active python module to assist in output or loading of related assets. The current hook systems runs the pre-upload.py hook in a context w/out that set leading to runtime errors: $ repo upload --cbr . ERROR: Traceback (most recent call last): File ".../repo/project.py", line 481, in _ExecuteHook self._script_fullpath, 'exec'), context) File ".../repohooks/pre-upload.py", line 32, in <module> path = os.path.dirname(os.path.realpath(__file__)) NameError: name '__file__' is not defined Define this variable in this context so code can safely use it. Change-Id: If6331312445fa61d9351b59f83abcc1c99ae6748
This commit is contained in:
parent
203153e7bb
commit
4aa4b211c6
@ -475,7 +475,7 @@ class RepoHook(object):
|
|||||||
|
|
||||||
# Exec, storing global context in the context dict. We catch exceptions
|
# Exec, storing global context in the context dict. We catch exceptions
|
||||||
# and convert to a HookError w/ just the failing traceback.
|
# and convert to a HookError w/ just the failing traceback.
|
||||||
context = {}
|
context = {'__file__': self._script_fullpath}
|
||||||
try:
|
try:
|
||||||
exec(compile(open(self._script_fullpath).read(),
|
exec(compile(open(self._script_fullpath).read(),
|
||||||
self._script_fullpath, 'exec'), context)
|
self._script_fullpath, 'exec'), context)
|
||||||
|
Loading…
Reference in New Issue
Block a user