do not execute pip when not needed

This commit is contained in:
2025-04-28 14:29:22 +02:00
parent b3cd338a1e
commit 13210d987e

View File

@ -173,6 +173,7 @@ def frappy(cfg=None, port=None, requirements='', **kwds):
if not cfg:
return None
req = pip_requirements['l_samenv']
if requirements:
req[cfg] = '\n'.join(requirements.split(','))
if port:
cfg = '-p %s %s' % (port, cfg)
@ -229,6 +230,8 @@ def display(**opts):
def pip():
for user, requirements in pip_requirements.items():
if not requirements:
continue
if user == 'root':
tmpname = '/root/pip_requirements.tmp'
pipcmd = ['sudo pip3 install -r', tmpname]
@ -238,14 +241,13 @@ def pip():
filename = tmpname.replace('.tmp', '.txt')
content = ''.join('# --- for %s ---\n%s\n' % kv for kv in requirements.items())
if content:
if write_when_new(filename, content, True):
if write_when_new(filename, content, user=='root'):
if doit:
os.rename(filename, tmpname)
if os.system(' '.join(pipcmd)) == 0:
os.rename(tmpname, filename)
else:
os.remove(tmpname)
# unix_cmd(pipcmd, doit, stdout=None)
show.dirty = True