Description of problem: We just saw the CEE introduction to the self-upgrade of foreman-maintain and it appears that it's rather difficult to detect that a self-upgrade happened, and that a 2nd call is necessary, making automation difficult. Version-Release number of selected component (if applicable): 6.8.z How reproducible: Always Steps to Reproduce: 1. create a playbook which automates the upgrade of Satellite 2. how do you decide that you need to call foreman-maintain twice Actual results: return code is 0 and the message isn't very easy to parse and not promised to be stable. Expected results: either a specific return code which can be checked and/or a "stable" parsable output (one that won't change with each version, specific enough, etc), so that one can easily detect if a re-run is necessary. Additional info: Amit and Mike told me to open this BZ so I do it :-)
As per /usr/include/sysexits.h which recommends user-defined exit codes may be between 64-78, an exit code of 75 may be returned indicating the user/script may retry the command.
Moving this bug to POST for triage into Satellite since the upstream issue https://projects.theforeman.org/issues/30471 has been resolved.
Verified: Verified with: - foreman-maintain v0.6.9 Test steps: - Run 'foreman-maintain upgrade check/run' Observation: - now self upgrade returns status code 75 which means 'Temporary failure and user intervention is required'.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Satellite 6.8 Satellite Maintenance Release), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:4365