From f6b31c718f189010b64359c631575d5ea1b22fdc Mon Sep 17 00:00:00 2001 From: "Eric D. Helms" Date: Mon, 25 Sep 2023 13:33:34 -0400 Subject: [PATCH] Add final upgrade step to check if reboot needed --- .../procedures/packages/check_for_reboot.rb | 16 ++++++++++++++++ definitions/scenarios/upgrade_to_capsule_6_15.rb | 1 + .../scenarios/upgrade_to_capsule_6_15_z.rb | 1 + .../scenarios/upgrade_to_satellite_6_15.rb | 1 + .../scenarios/upgrade_to_satellite_6_15_z.rb | 1 + 5 files changed, 20 insertions(+) create mode 100644 definitions/procedures/packages/check_for_reboot.rb diff --git a/definitions/procedures/packages/check_for_reboot.rb b/definitions/procedures/packages/check_for_reboot.rb new file mode 100644 index 000000000..22f133358 --- /dev/null +++ b/definitions/procedures/packages/check_for_reboot.rb @@ -0,0 +1,16 @@ +module Procedures::Packages + class CheckForReboot < ForemanMaintain::Procedure + metadata do + description 'Check if system needs reboot' + end + + def run + status, output = execute_with_status('dnf needs-restarting --reboothint') + if status == 1 + set_status(:warning, output) + else + set_status(:success, output) + end + end + end +end diff --git a/definitions/scenarios/upgrade_to_capsule_6_15.rb b/definitions/scenarios/upgrade_to_capsule_6_15.rb index 66bb9bd8b..faa31f95a 100644 --- a/definitions/scenarios/upgrade_to_capsule_6_15.rb +++ b/definitions/scenarios/upgrade_to_capsule_6_15.rb @@ -87,6 +87,7 @@ class PostUpgradeChecks < Abstract def compose add_steps(find_checks(:default)) add_steps(find_checks(:post_upgrade)) + add_step(Procedures::Packages::CheckForReboot) end end end diff --git a/definitions/scenarios/upgrade_to_capsule_6_15_z.rb b/definitions/scenarios/upgrade_to_capsule_6_15_z.rb index 47aa67e80..49d51cece 100644 --- a/definitions/scenarios/upgrade_to_capsule_6_15_z.rb +++ b/definitions/scenarios/upgrade_to_capsule_6_15_z.rb @@ -87,6 +87,7 @@ class PostUpgradeChecks < Abstract def compose add_steps(find_checks(:default)) add_steps(find_checks(:post_upgrade)) + add_step(Procedures::Packages::CheckForReboot) end end end diff --git a/definitions/scenarios/upgrade_to_satellite_6_15.rb b/definitions/scenarios/upgrade_to_satellite_6_15.rb index 513445a2d..62f37d5d3 100644 --- a/definitions/scenarios/upgrade_to_satellite_6_15.rb +++ b/definitions/scenarios/upgrade_to_satellite_6_15.rb @@ -89,6 +89,7 @@ class PostUpgradeChecks < Abstract def compose add_steps(find_checks(:default)) add_steps(find_checks(:post_upgrade)) + add_step(Procedures::Packages::CheckForReboot) end end end diff --git a/definitions/scenarios/upgrade_to_satellite_6_15_z.rb b/definitions/scenarios/upgrade_to_satellite_6_15_z.rb index bf4fcbb96..3c74e94be 100644 --- a/definitions/scenarios/upgrade_to_satellite_6_15_z.rb +++ b/definitions/scenarios/upgrade_to_satellite_6_15_z.rb @@ -88,6 +88,7 @@ class PostUpgradeChecks < Abstract def compose add_steps(find_checks(:default)) add_steps(find_checks(:post_upgrade)) + add_step(Procedures::Packages::CheckForReboot) end end end