foreman_maintain 1.7.6 → 1.8.0
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.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/definitions/features/installer.rb +10 -8
- data/definitions/features/satellite.rb +2 -8
- data/definitions/scenarios/satellite_upgrade.rb +2 -3
- data/lib/foreman_maintain/concerns/downstream.rb +19 -4
- data/lib/foreman_maintain/upgrade_runner.rb +1 -0
- data/lib/foreman_maintain/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8e99ddc1408ae68f584bbfc6e8798367e623e38f981682666f40cac91bb8f5f4
|
4
|
+
data.tar.gz: 173ee0cd4fbce206437d53937eaf0489111e4c6b57eac8b04943c9468eb5ab40
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 60a28996480d8564f5900a56d3f1494f9eb756d0a54c1bf3fee4c37fb5096a848db3a4ed2a6700e65d2fd4193bda13bebb4a50368ca0dbfd2ca1dccf9ea76d8e
|
7
|
+
data.tar.gz: c323322a2e40d116c34de3ed7430742caa127250024957aa4b2579b14bbc27fb271312a6d973d82533ef091ca77ead05de0cf61c005475da8e3766e910e35562
|
data/README.md
CHANGED
@@ -20,6 +20,7 @@ Subcommands:
|
|
20
20
|
check --target-version TARGET_VERSION Run pre-upgrade checks for upgrading to specified version
|
21
21
|
--disable-self-upgrade Disable automatic self upgrade (default: false)
|
22
22
|
run --target-version TARGET_VERSION Run the full upgrade
|
23
|
+
[--phase=phase TARGET_VERSION] Run just a specific phase of the upgrade
|
23
24
|
--disable-self-upgrade Disable automatic self upgrade (default: false)
|
24
25
|
|
25
26
|
advanced Advanced tools for server maintenance
|
@@ -8,7 +8,7 @@ class Features::Installer < ForemanMaintain::Feature
|
|
8
8
|
end
|
9
9
|
|
10
10
|
def answers
|
11
|
-
|
11
|
+
YAML.load_file(answer_file)
|
12
12
|
end
|
13
13
|
|
14
14
|
def configuration
|
@@ -28,11 +28,13 @@ class Features::Installer < ForemanMaintain::Feature
|
|
28
28
|
end
|
29
29
|
|
30
30
|
def config_files
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
31
|
+
paths = [
|
32
|
+
config_directory,
|
33
|
+
'/opt/puppetlabs/puppet/cache/foreman_cache_data',
|
34
|
+
'/opt/puppetlabs/puppet/cache/pulpcore_cache_data',
|
35
|
+
]
|
36
|
+
paths << answer_file unless answer_file.start_with?("#{config_directory}/")
|
37
|
+
paths
|
36
38
|
end
|
37
39
|
|
38
40
|
def last_scenario
|
@@ -80,8 +82,8 @@ class Features::Installer < ForemanMaintain::Feature
|
|
80
82
|
|
81
83
|
private
|
82
84
|
|
83
|
-
def
|
84
|
-
|
85
|
+
def answer_file
|
86
|
+
configuration[:answer_file]
|
85
87
|
end
|
86
88
|
|
87
89
|
def last_scenario_config
|
@@ -11,11 +11,11 @@ class Features::Satellite < ForemanMaintain::Feature
|
|
11
11
|
end
|
12
12
|
|
13
13
|
def target_version
|
14
|
-
|
14
|
+
satellite_maintain_target_version
|
15
15
|
end
|
16
16
|
|
17
17
|
def current_version
|
18
|
-
@current_version ||= package_version(package_name)
|
18
|
+
@current_version ||= package_version(package_name)
|
19
19
|
end
|
20
20
|
|
21
21
|
def package_name
|
@@ -25,10 +25,4 @@ class Features::Satellite < ForemanMaintain::Feature
|
|
25
25
|
def module_name
|
26
26
|
'satellite'
|
27
27
|
end
|
28
|
-
|
29
|
-
private
|
30
|
-
|
31
|
-
def version_from_source
|
32
|
-
version(File.read('/usr/share/foreman/lib/satellite/version.rb')[/6\.\d\.\d/])
|
33
|
-
end
|
34
28
|
end
|
@@ -4,15 +4,14 @@ module Scenarios::Satellite
|
|
4
4
|
metadata do
|
5
5
|
tags :upgrade_scenario
|
6
6
|
confine do
|
7
|
-
|
8
|
-
ForemanMaintain.upgrade_in_progress == '6.16')
|
7
|
+
feature(:instance).downstream&.satellite_upgrade_allowed?
|
9
8
|
end
|
10
9
|
instance_eval(&block)
|
11
10
|
end
|
12
11
|
end
|
13
12
|
|
14
13
|
def target_version
|
15
|
-
|
14
|
+
feature(:instance).downstream&.satellite_maintain_target_version
|
16
15
|
end
|
17
16
|
end
|
18
17
|
|
@@ -1,6 +1,8 @@
|
|
1
1
|
module ForemanMaintain
|
2
2
|
module Concerns
|
3
3
|
module Downstream
|
4
|
+
SATELLITE_MAINTAIN_CONFIG = '/usr/share/satellite-maintain/config.yml'.freeze
|
5
|
+
|
4
6
|
def current_version
|
5
7
|
raise NotImplementedError
|
6
8
|
end
|
@@ -46,8 +48,25 @@ module ForemanMaintain
|
|
46
48
|
%w[satellite-maintain satellite-maintain]
|
47
49
|
end
|
48
50
|
|
51
|
+
def satellite_maintain_target_version
|
52
|
+
satellite_maintain_config['current_satellite_version']
|
53
|
+
end
|
54
|
+
|
55
|
+
def satellite_upgrade_allowed?
|
56
|
+
current_minor_version == satellite_maintain_config['previous_satellite_version'] ||
|
57
|
+
ForemanMaintain.upgrade_in_progress == satellite_maintain_target_version
|
58
|
+
end
|
59
|
+
|
49
60
|
private
|
50
61
|
|
62
|
+
def satellite_maintain_config
|
63
|
+
if File.exist?(SATELLITE_MAINTAIN_CONFIG)
|
64
|
+
YAML.load_file(SATELLITE_MAINTAIN_CONFIG)
|
65
|
+
else
|
66
|
+
raise "Could not load satellite-maintain configuration file #{SATELLITE_MAINTAIN_CONFIG}."
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
51
70
|
def rh_repos(server_version)
|
52
71
|
server_version = version(server_version)
|
53
72
|
rh_repos = main_rh_repos
|
@@ -71,10 +90,6 @@ module ForemanMaintain
|
|
71
90
|
"rhel-#{el_major_version}-for-x86_64-appstream-rpms",
|
72
91
|
]
|
73
92
|
end
|
74
|
-
|
75
|
-
def version_from_source
|
76
|
-
raise NotImplementedError
|
77
|
-
end
|
78
93
|
end
|
79
94
|
end
|
80
95
|
end
|
@@ -137,6 +137,7 @@ module ForemanMaintain
|
|
137
137
|
@reporter.before_scenario_starts(scenario)
|
138
138
|
@reporter.puts <<~MESSAGE
|
139
139
|
Skipping #{skipped_phase} phase as it was already run before.
|
140
|
+
To enforce to run the phase, use `upgrade run --phase #{skipped_phase}`
|
140
141
|
MESSAGE
|
141
142
|
@reporter.after_scenario_finishes(scenario)
|
142
143
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: foreman_maintain
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ivan Nečas
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-10-
|
11
|
+
date: 2024-10-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: clamp
|