svr4pkg: assume command worked only on known-to-be-good returncodes
This commit is contained in:
parent
1780512ef5
commit
d744777425
1 changed files with 13 additions and 3 deletions
|
@ -209,15 +209,25 @@ def main():
|
||||||
(rc, out, err) = package_uninstall(module, name, src, category)
|
(rc, out, err) = package_uninstall(module, name, src, category)
|
||||||
out = out[:75]
|
out = out[:75]
|
||||||
|
|
||||||
# Success, Warning, Interruption, Reboot all, Reboot this return codes
|
# Returncodes as per pkgadd(1m)
|
||||||
|
# 0 Successful completion
|
||||||
|
# 1 Fatal error.
|
||||||
|
# 2 Warning.
|
||||||
|
# 3 Interruption.
|
||||||
|
# 4 Administration.
|
||||||
|
# 5 Administration. Interaction is required. Do not use pkgadd -n.
|
||||||
|
# 10 Reboot after installation of all packages.
|
||||||
|
# 20 Reboot after installation of this package.
|
||||||
|
# 99 (observed) pkgadd: ERROR: could not process datastream from </tmp/pkgutil.pkg>
|
||||||
if rc in (0, 2, 3, 10, 20):
|
if rc in (0, 2, 3, 10, 20):
|
||||||
result['changed'] = True
|
result['changed'] = True
|
||||||
# no install nor uninstall, or failed
|
# no install nor uninstall, or failed
|
||||||
else:
|
else:
|
||||||
result['changed'] = False
|
result['changed'] = False
|
||||||
|
|
||||||
# Fatal error, Administration, Administration Interaction return codes
|
# Only return failed=False when the returncode is known to be good as there may be more
|
||||||
if rc in (1, 4 , 5):
|
# undocumented failure return codes
|
||||||
|
if rc not in (0, 2, 10, 20):
|
||||||
result['failed'] = True
|
result['failed'] = True
|
||||||
else:
|
else:
|
||||||
result['failed'] = False
|
result['failed'] = False
|
||||||
|
|
Loading…
Reference in a new issue