only upgrade on freebsd if no package require manual attention
This commit is contained in:
parent
d0cb0d1124
commit
6f19bf71ca
@ -152,26 +152,25 @@ def pkg_upgrade():
|
|||||||
log.debug('configured level {} < pkg level {}'.format(diff, pkg['upgrade_level']))
|
log.debug('configured level {} < pkg level {}'.format(diff, pkg['upgrade_level']))
|
||||||
pkg['upgrade'] = False
|
pkg['upgrade'] = False
|
||||||
|
|
||||||
upgradables = [x['pkg'] for x in upgrades if x['upgrade'] ]
|
|
||||||
if upgradables:
|
|
||||||
cmd = [ PKG_PATH, 'upgrade', '-yq' ] + upgradables
|
|
||||||
log.debug('Executing "{}"'.format(' '.join(cmd)))
|
|
||||||
proc = subprocess.Popen(
|
|
||||||
cmd,
|
|
||||||
stdout = subprocess.PIPE,
|
|
||||||
stderr = subprocess.PIPE)
|
|
||||||
out, err = proc.communicate()
|
|
||||||
out = out.decode('utf-8')
|
|
||||||
err = err.decode('utf-8')
|
|
||||||
if proc.returncode != 0 or err:
|
|
||||||
log.warning('{} failed:'.format(' '.join(cmd)))
|
|
||||||
for line in out.splitlines():
|
|
||||||
log.warning('stdout: {}'.format(line))
|
|
||||||
for line in err.splitlines():
|
|
||||||
log.warning('stderr: {}'.format(line))
|
|
||||||
|
|
||||||
for pkg in [x for x in upgrades if not x['upgrade']]:
|
for pkg in [x for x in upgrades if not x['upgrade']]:
|
||||||
log.warning('Package require manual upgrade: {} {} -> {}'.format(pkg['pkg'], pkg['version_old'], pkg['version_new']))
|
log.warning('Package require manual upgrade, no upgrades done: {} {} -> {}'.format(pkg['pkg'], pkg['version_old'], pkg['version_new']))
|
||||||
|
return False
|
||||||
|
|
||||||
|
cmd = [ PKG_PATH, 'upgrade', '-yq' ]
|
||||||
|
log.debug('Executing "{}"'.format(' '.join(cmd)))
|
||||||
|
proc = subprocess.Popen(
|
||||||
|
cmd,
|
||||||
|
stdout = subprocess.PIPE,
|
||||||
|
stderr = subprocess.PIPE)
|
||||||
|
out, err = proc.communicate()
|
||||||
|
out = out.decode('utf-8')
|
||||||
|
err = err.decode('utf-8')
|
||||||
|
if proc.returncode != 0 or err:
|
||||||
|
log.warning('{} failed:'.format(' '.join(cmd)))
|
||||||
|
for line in out.splitlines():
|
||||||
|
log.warning('stdout: {}'.format(line))
|
||||||
|
for line in err.splitlines():
|
||||||
|
log.warning('stderr: {}'.format(line))
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user