-
Bug
-
Resolution: Done
-
Normal
-
None
-
None
-
None
-
1
-
False
-
-
False
-
?
-
rhos-ops-day1day2-upgrades
-
None
-
-
-
-
RHOS Upgrades 2025 Sprint 21
-
1
-
Moderate
To Reproduce Steps to reproduce the behavior:
- Provide `edpm_bootstrap_command` with multiple commands, where one of the commands fails but the last one succeeds.
- The bootstrap as a whole is considered successful and the `edpm.bootstrap.hash` fact is written to prevent re-executing the same command.
Expected behavior
If one command in the `edpm_bootstrap_command` fails, i'd expect the bootstrap as a whole to fail. If there are commands that can fail expectedly, they should be suffixed with `|| true`.I believe we should unconditionally prepend `set -e` to edpm_bootstrap_command when we execute it, to ensure any failed command somewhere in the middle of the bootstrap snippet fails the whole bootstrap.- From discussion: we should keep the same behavior as `ansible.builtin.shell` but recommend using set -e in the documentation examples.
- Our upstream bootstrap commands already have `set -euxo pipefail` but it's not included in the downstream snippets.
Bug impact
- This came to bite us at a customer. Will link the relevant conversation in a private comment.
Known workaround
- Include `set -e` at the beginning when setting the value for `edpm_bootstrap_command` variable.
- clones
-
OSPRH-25577 edpm_boostrap_command ignores failures except for the last command
-
- Closed
-
- is duplicated by
-
OSPRH-27288 [uni][adoption][FR5 content] verification to start VM fails
-
- Closed
-
- links to