foreman_maintain 0.6.2 → 0.6.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -0
  3. data/definitions/checks/disk/performance.rb +16 -8
  4. data/definitions/checks/foreman/validate_external_db_version.rb +28 -0
  5. data/definitions/checks/original_assets.rb +1 -0
  6. data/definitions/features/installer.rb +9 -2
  7. data/definitions/procedures/content/prepare.rb +1 -1
  8. data/definitions/procedures/content/switchover.rb +7 -3
  9. data/definitions/procedures/restore/regenerate_missing_queues.rb +52 -0
  10. data/definitions/scenarios/content.rb +27 -0
  11. data/definitions/scenarios/packages.rb +2 -4
  12. data/definitions/scenarios/upgrade_to_capsule_6_7.rb +84 -0
  13. data/definitions/scenarios/upgrade_to_capsule_6_7_z.rb +84 -0
  14. data/definitions/scenarios/upgrade_to_capsule_6_8.rb +84 -0
  15. data/definitions/scenarios/upgrade_to_capsule_6_8_z.rb +84 -0
  16. data/definitions/scenarios/upgrade_to_satellite_6_2.rb +8 -4
  17. data/definitions/scenarios/upgrade_to_satellite_6_2_z.rb +8 -4
  18. data/definitions/scenarios/upgrade_to_satellite_6_3.rb +8 -4
  19. data/definitions/scenarios/upgrade_to_satellite_6_3_z.rb +8 -4
  20. data/definitions/scenarios/upgrade_to_satellite_6_4.rb +8 -4
  21. data/definitions/scenarios/upgrade_to_satellite_6_4_z.rb +8 -4
  22. data/definitions/scenarios/upgrade_to_satellite_6_5.rb +8 -4
  23. data/definitions/scenarios/upgrade_to_satellite_6_5_z.rb +8 -4
  24. data/definitions/scenarios/upgrade_to_satellite_6_6.rb +8 -4
  25. data/definitions/scenarios/upgrade_to_satellite_6_6_z.rb +8 -4
  26. data/definitions/scenarios/upgrade_to_satellite_6_7.rb +8 -4
  27. data/definitions/scenarios/upgrade_to_satellite_6_7_z.rb +8 -4
  28. data/definitions/scenarios/upgrade_to_satellite_6_8.rb +84 -0
  29. data/definitions/scenarios/upgrade_to_satellite_6_8_z.rb +84 -0
  30. data/lib/foreman_maintain.rb +4 -0
  31. data/lib/foreman_maintain/cli.rb +2 -0
  32. data/lib/foreman_maintain/cli/content_command.rb +17 -0
  33. data/lib/foreman_maintain/concerns/base_database.rb +11 -0
  34. data/lib/foreman_maintain/concerns/downstream.rb +13 -8
  35. data/lib/foreman_maintain/upgrade_runner.rb +20 -26
  36. data/lib/foreman_maintain/version.rb +1 -1
  37. metadata +13 -3
@@ -0,0 +1,84 @@
1
+ module Scenarios::Capsule_6_8_z
2
+ class Abstract < ForemanMaintain::Scenario
3
+ def self.upgrade_metadata(&block)
4
+ metadata do
5
+ tags :upgrade_scenario
6
+ confine do
7
+ feature(:capsule) &&
8
+ (feature(:capsule).current_minor_version == '6.8' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.8.z')
10
+ end
11
+ instance_eval(&block)
12
+ end
13
+ end
14
+
15
+ def target_version
16
+ '6.8.z'
17
+ end
18
+ end
19
+
20
+ class PreUpgradeCheck < Abstract
21
+ upgrade_metadata do
22
+ description 'Checks before upgrading to Capsule 6.8.z'
23
+ tags :pre_upgrade_checks
24
+ run_strategy :fail_slow
25
+ end
26
+
27
+ def compose
28
+ add_steps(find_checks(:default))
29
+ add_steps(find_checks(:pre_upgrade))
30
+ add_step(Checks::Repositories::Validate.new(:version => '6.8'))
31
+ end
32
+ end
33
+
34
+ class PreMigrations < Abstract
35
+ upgrade_metadata do
36
+ description 'Procedures before migrating to Capsule 6.8.z'
37
+ tags :pre_migrations
38
+ end
39
+
40
+ def compose
41
+ add_steps(find_procedures(:pre_migrations))
42
+ add_step(Procedures::Service::Stop.new)
43
+ end
44
+ end
45
+
46
+ class Migrations < Abstract
47
+ upgrade_metadata do
48
+ description 'Migration scripts to Capsule 6.8.z'
49
+ tags :migrations
50
+ end
51
+
52
+ def compose
53
+ add_step(Procedures::Repositories::Setup.new(:version => '6.8'))
54
+ add_step(Procedures::Packages::UnlockVersions.new)
55
+ add_step(Procedures::Packages::Update.new(:assumeyes => true))
56
+ add_step(Procedures::Installer::Upgrade.new)
57
+ end
58
+ end
59
+
60
+ class PostMigrations < Abstract
61
+ upgrade_metadata do
62
+ description 'Procedures after migrating to Capsule 6.8.z'
63
+ tags :post_migrations
64
+ end
65
+
66
+ def compose
67
+ add_step(Procedures::Service::Start.new)
68
+ add_steps(find_procedures(:post_migrations))
69
+ end
70
+ end
71
+
72
+ class PostUpgradeChecks < Abstract
73
+ upgrade_metadata do
74
+ description 'Checks after upgrading to Capsule 6.8.z'
75
+ tags :post_upgrade_checks
76
+ run_strategy :fail_slow
77
+ end
78
+
79
+ def compose
80
+ add_steps(find_checks(:default))
81
+ add_steps(find_checks(:post_upgrade))
82
+ end
83
+ end
84
+ end
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_2
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_2
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.1'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.1' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.2')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.2'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -76,5 +82,3 @@ module Scenarios::Satellite_6_2
76
82
  end
77
83
  end
78
84
  end
79
-
80
- ForemanMaintain::UpgradeRunner.register_version('6.2', :upgrade_to_satellite_6_2)
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_2_z
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_2_z
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.2'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.2' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.2.z')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.2.z'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -76,5 +82,3 @@ module Scenarios::Satellite_6_2_z
76
82
  end
77
83
  end
78
84
  end
79
-
80
- ForemanMaintain::UpgradeRunner.register_version('6.2.z', :upgrade_to_satellite_6_2_z)
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_3
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_3
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.2'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.2' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.3')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.3'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -77,5 +83,3 @@ module Scenarios::Satellite_6_3
77
83
  end
78
84
  end
79
85
  end
80
-
81
- ForemanMaintain::UpgradeRunner.register_version('6.3', :upgrade_to_satellite_6_3)
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_3_z
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_3_z
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.3'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.3' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.3.z')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.3.z'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -76,5 +82,3 @@ module Scenarios::Satellite_6_3_z
76
82
  end
77
83
  end
78
84
  end
79
-
80
- ForemanMaintain::UpgradeRunner.register_version('6.3.z', :upgrade_to_satellite_6_3_z)
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_4
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_4
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.3'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.3' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.4')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.4'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -77,5 +83,3 @@ module Scenarios::Satellite_6_4
77
83
  end
78
84
  end
79
85
  end
80
-
81
- ForemanMaintain::UpgradeRunner.register_version('6.4', :upgrade_to_satellite_6_4)
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_4_z
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_4_z
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.4'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.4' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.4.z')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.4.z'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -76,5 +82,3 @@ module Scenarios::Satellite_6_4_z
76
82
  end
77
83
  end
78
84
  end
79
-
80
- ForemanMaintain::UpgradeRunner.register_version('6.4.z', :upgrade_to_satellite_6_4_z)
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_5
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_5
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.4'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.4' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.5')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.5'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -76,5 +82,3 @@ module Scenarios::Satellite_6_5
76
82
  end
77
83
  end
78
84
  end
79
-
80
- ForemanMaintain::UpgradeRunner.register_version('6.5', :upgrade_to_satellite_6_5)
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_5_z
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_5_z
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.5'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.5' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.5.z')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.5.z'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -76,5 +82,3 @@ module Scenarios::Satellite_6_5_z
76
82
  end
77
83
  end
78
84
  end
79
-
80
- ForemanMaintain::UpgradeRunner.register_version('6.5.z', :upgrade_to_satellite_6_5_z)
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_6
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_6
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.5'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.5' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.6')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.6'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -78,5 +84,3 @@ module Scenarios::Satellite_6_6
78
84
  end
79
85
  end
80
86
  end
81
-
82
- ForemanMaintain::UpgradeRunner.register_version('6.6', :upgrade_to_satellite_6_6)
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_6_z
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_6_z
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.6'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.6' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.6.z')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.6.z'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -78,5 +84,3 @@ module Scenarios::Satellite_6_6_z
78
84
  end
79
85
  end
80
86
  end
81
-
82
- ForemanMaintain::UpgradeRunner.register_version('6.6.z', :upgrade_to_satellite_6_6_z)
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_7
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_7
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.6'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.6' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.7')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.7'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -76,5 +82,3 @@ module Scenarios::Satellite_6_7
76
82
  end
77
83
  end
78
84
  end
79
-
80
- ForemanMaintain::UpgradeRunner.register_version('6.7', :upgrade_to_satellite_6_7)
@@ -2,13 +2,19 @@ module Scenarios::Satellite_6_7_z
2
2
  class Abstract < ForemanMaintain::Scenario
3
3
  def self.upgrade_metadata(&block)
4
4
  metadata do
5
- tags :upgrade_to_satellite_6_7_z
5
+ tags :upgrade_scenario
6
6
  confine do
7
- feature(:satellite) && feature(:satellite).current_minor_version == '6.7'
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.7' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.7.z')
8
10
  end
9
11
  instance_eval(&block)
10
12
  end
11
13
  end
14
+
15
+ def target_version
16
+ '6.7.z'
17
+ end
12
18
  end
13
19
 
14
20
  class PreUpgradeCheck < Abstract
@@ -76,5 +82,3 @@ module Scenarios::Satellite_6_7_z
76
82
  end
77
83
  end
78
84
  end
79
-
80
- ForemanMaintain::UpgradeRunner.register_version('6.7.z', :upgrade_to_satellite_6_7_z)
@@ -0,0 +1,84 @@
1
+ module Scenarios::Satellite_6_8
2
+ class Abstract < ForemanMaintain::Scenario
3
+ def self.upgrade_metadata(&block)
4
+ metadata do
5
+ tags :upgrade_scenario
6
+ confine do
7
+ feature(:satellite) &&
8
+ (feature(:satellite).current_minor_version == '6.7' || \
9
+ ForemanMaintain.upgrade_in_progress == '6.8')
10
+ end
11
+ instance_eval(&block)
12
+ end
13
+ end
14
+
15
+ def target_version
16
+ '6.8'
17
+ end
18
+ end
19
+
20
+ class PreUpgradeCheck < Abstract
21
+ upgrade_metadata do
22
+ description 'Checks before upgrading to Satellite 6.8'
23
+ tags :pre_upgrade_checks
24
+ run_strategy :fail_slow
25
+ end
26
+
27
+ def compose
28
+ add_steps(find_checks(:default))
29
+ add_steps(find_checks(:pre_upgrade))
30
+ add_step(Checks::Repositories::Validate.new(:version => '6.8'))
31
+ end
32
+ end
33
+
34
+ class PreMigrations < Abstract
35
+ upgrade_metadata do
36
+ description 'Procedures before migrating to Satellite 6.8'
37
+ tags :pre_migrations
38
+ end
39
+
40
+ def compose
41
+ add_steps(find_procedures(:pre_migrations))
42
+ add_step(Procedures::Service::Stop.new)
43
+ end
44
+ end
45
+
46
+ class Migrations < Abstract
47
+ upgrade_metadata do
48
+ description 'Migration scripts to Satellite 6.8'
49
+ tags :migrations
50
+ end
51
+
52
+ def compose
53
+ add_step(Procedures::Repositories::Setup.new(:version => '6.8'))
54
+ add_step(Procedures::Packages::UnlockVersions.new)
55
+ add_step(Procedures::Packages::Update.new(:assumeyes => true))
56
+ add_step(Procedures::Installer::Upgrade.new)
57
+ end
58
+ end
59
+
60
+ class PostMigrations < Abstract
61
+ upgrade_metadata do
62
+ description 'Procedures after migrating to Satellite 6.8'
63
+ tags :post_migrations
64
+ end
65
+
66
+ def compose
67
+ add_step(Procedures::Service::Start.new)
68
+ add_steps(find_procedures(:post_migrations))
69
+ end
70
+ end
71
+
72
+ class PostUpgradeChecks < Abstract
73
+ upgrade_metadata do
74
+ description 'Checks after upgrading to Satellite 6.8'
75
+ tags :post_upgrade_checks
76
+ run_strategy :fail_slow
77
+ end
78
+
79
+ def compose
80
+ add_steps(find_checks(:default))
81
+ add_steps(find_checks(:post_upgrade))
82
+ end
83
+ end
84
+ end