foreman_maintain 0.0.6 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +75 -3
  3. data/config/foreman_maintain.yml.example +6 -0
  4. data/config/foreman_maintain.yml.packaging +6 -0
  5. data/definitions/checks/disk_speed_minimal.rb +1 -1
  6. data/definitions/checks/foreman_proxy/verify_dhcp_config_syntax.rb +17 -0
  7. data/definitions/checks/system_registration.rb +1 -1
  8. data/definitions/features/downstream.rb +31 -0
  9. data/definitions/features/foreman_1_7_x.rb +33 -0
  10. data/definitions/features/foreman_proxy.rb +72 -0
  11. data/definitions/features/sync_plans.rb +14 -20
  12. data/definitions/features/upstream.rb +4 -0
  13. data/definitions/procedures/foreman_tasks/delete.rb +2 -1
  14. data/definitions/procedures/hammer_setup.rb +4 -4
  15. data/definitions/procedures/installer/upgrade.rb +19 -0
  16. data/definitions/procedures/maintenance_mode/disable.rb +13 -0
  17. data/definitions/procedures/maintenance_mode/enable.rb +13 -0
  18. data/definitions/procedures/packages/install.rb +20 -0
  19. data/definitions/procedures/packages/update.rb +20 -0
  20. data/definitions/procedures/repositories/setup.rb +18 -0
  21. data/definitions/procedures/sync_plans/disable.rb +4 -0
  22. data/definitions/procedures/sync_plans/enable.rb +5 -0
  23. data/definitions/scenarios/upgrade_to_satellite_6_2.rb +77 -0
  24. data/lib/foreman_maintain.rb +5 -2
  25. data/lib/foreman_maintain/check.rb +11 -4
  26. data/lib/foreman_maintain/cli.rb +23 -0
  27. data/lib/foreman_maintain/cli/advanced/procedure/abstract_by_tag_command.rb +38 -0
  28. data/lib/foreman_maintain/cli/advanced/procedure/abstract_procedure_command.rb +17 -0
  29. data/lib/foreman_maintain/cli/advanced/procedure/by_tag_command.rb +32 -0
  30. data/lib/foreman_maintain/cli/advanced/procedure/run_command.rb +17 -0
  31. data/lib/foreman_maintain/cli/advanced/procedure_command.rb +11 -0
  32. data/lib/foreman_maintain/cli/advanced_command.rb +9 -0
  33. data/lib/foreman_maintain/cli/base.rb +52 -7
  34. data/lib/foreman_maintain/cli/health_command.rb +0 -12
  35. data/lib/foreman_maintain/cli/transform_clamp_options.rb +66 -0
  36. data/lib/foreman_maintain/cli/upgrade_command.rb +45 -33
  37. data/lib/foreman_maintain/concerns/metadata.rb +28 -2
  38. data/lib/foreman_maintain/concerns/scenario_metadata.rb +44 -0
  39. data/lib/foreman_maintain/concerns/system_helpers.rb +27 -5
  40. data/lib/foreman_maintain/config.rb +10 -5
  41. data/lib/foreman_maintain/core_ext.rb +5 -1
  42. data/lib/foreman_maintain/csv_parser.rb +81 -0
  43. data/lib/foreman_maintain/dependency_graph.rb +10 -48
  44. data/lib/foreman_maintain/error.rb +4 -0
  45. data/lib/foreman_maintain/executable.rb +64 -13
  46. data/lib/foreman_maintain/param.rb +1 -0
  47. data/lib/foreman_maintain/reporter.rb +84 -3
  48. data/lib/foreman_maintain/reporter/cli_reporter.rb +57 -21
  49. data/lib/foreman_maintain/runner.rb +80 -21
  50. data/lib/foreman_maintain/runner/execution.rb +29 -4
  51. data/lib/foreman_maintain/runner/stored_execution.rb +23 -0
  52. data/lib/foreman_maintain/scenario.rb +90 -7
  53. data/lib/foreman_maintain/upgrade_runner.rb +194 -0
  54. data/lib/foreman_maintain/utils.rb +1 -0
  55. data/lib/foreman_maintain/utils/curl_response.rb +21 -0
  56. data/lib/foreman_maintain/version.rb +1 -1
  57. metadata +24 -14
  58. data/definitions/checks/sync_plans/with_disabled_status.rb +0 -18
  59. data/definitions/checks/sync_plans/with_enabled_status.rb +0 -19
  60. data/definitions/procedures/install_package.rb +0 -17
  61. data/definitions/scenarios/pre_upgrade_check_foreman_1_14.rb +0 -13
  62. data/definitions/scenarios/pre_upgrade_check_satellite_6_0_z.rb +0 -14
  63. data/definitions/scenarios/pre_upgrade_check_satellite_6_1.rb +0 -14
  64. data/definitions/scenarios/pre_upgrade_check_satellite_6_1_z.rb +0 -14
  65. data/definitions/scenarios/pre_upgrade_check_satellite_6_2.rb +0 -14
  66. data/definitions/scenarios/pre_upgrade_check_satellite_6_2_z.rb +0 -14
  67. data/definitions/scenarios/pre_upgrade_check_satellite_6_3.rb +0 -14
  68. data/lib/foreman_maintain/object_cache.rb +0 -34
@@ -1,14 +0,0 @@
1
- class Scenarios::PreUpgradeCheckSatellite_6_1_z < ForemanMaintain::Scenario
2
- metadata do
3
- description 'checks before upgrading to Satellite 6.1.z'
4
- tags :pre_upgrade_check, :satellite_6_1_z
5
- confine do
6
- feature(:downstream) && feature(:downstream).current_version.to_s.start_with?('6.1.')
7
- end
8
- end
9
-
10
- def compose
11
- add_steps(find_checks(:default))
12
- add_steps(find_checks(:pre_upgrade))
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- class Scenarios::PreUpgradeCheckSatellite_6_2 < ForemanMaintain::Scenario
2
- metadata do
3
- description 'checks before upgrading to Satellite 6.2'
4
- tags :pre_upgrade_check, :satellite_6_2
5
- confine do
6
- feature(:downstream) && feature(:downstream).current_version.to_s.start_with?('6.1.')
7
- end
8
- end
9
-
10
- def compose
11
- add_steps(find_checks(:default))
12
- add_steps(find_checks(:pre_upgrade))
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- class Scenarios::PreUpgradeCheckSatellite_6_2_z < ForemanMaintain::Scenario
2
- metadata do
3
- description 'checks before upgrading to Satellite 6.2.z'
4
- tags :pre_upgrade_check, :satellite_6_2_z
5
- confine do
6
- feature(:downstream) && feature(:downstream).current_version.to_s.start_with?('6.2.')
7
- end
8
- end
9
-
10
- def compose
11
- add_steps(find_checks(:default))
12
- add_steps(find_checks(:pre_upgrade))
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- class Scenarios::PreUpgradeCheckSatellite_6_3 < ForemanMaintain::Scenario
2
- metadata do
3
- description 'checks before upgrading to Satellite 6.3'
4
- tags :pre_upgrade_check, :satellite_6_3
5
- confine do
6
- feature(:downstream) && feature(:downstream).current_version.to_s.start_with?('6.2.')
7
- end
8
- end
9
-
10
- def compose
11
- add_steps(find_checks(:default))
12
- add_steps(find_checks(:pre_upgrade))
13
- end
14
- end
@@ -1,34 +0,0 @@
1
- require 'singleton'
2
-
3
- module ForemanMaintain
4
- class ObjectCache
5
- include Singleton
6
-
7
- attr_reader :cache
8
-
9
- def initialize
10
- @cache = {}
11
- end
12
-
13
- def fetch(key, object = nil)
14
- hit(key) || miss(key, object)
15
- end
16
-
17
- private
18
-
19
- def add(key, object)
20
- return if key.nil? || object.nil?
21
- cache[key.to_sym] = object
22
- end
23
-
24
- def hit(key)
25
- cache.fetch(key, nil)
26
- end
27
-
28
- def miss(key, object)
29
- object ||= ForemanMaintain.detector.available_checks(:label => key).first
30
- add(key, object)
31
- hit(key)
32
- end
33
- end
34
- end