foreman_maintain 0.4.3 → 0.4.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/definitions/features/foreman_proxy.rb +8 -1
- data/definitions/procedures/foreman_proxy/features.rb +14 -0
- data/definitions/scenarios/backup.rb +3 -0
- data/definitions/scenarios/upgrade_to_satellite_6_6_z.rb +80 -0
- data/lib/foreman_maintain/cli/backup_command.rb +3 -1
- data/lib/foreman_maintain/version.rb +1 -1
- metadata +19 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 8b3244cbf0c35c7e4794fcca31be180489bacdab
|
4
|
+
data.tar.gz: 2c31ba26f1d8880ddd6b555415a309623f1bc19c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 97f28a046f0dc4fcc72f40147221547abacde3eab40b8cdc175b3b027000f7028f6f65010c3673033ca2dc2866945e000cde1b72e2b007c1c6340d22f18da786
|
7
|
+
data.tar.gz: b4779ec4433cb5a98985b00d5037af229ad8b7c9774c6ded70ca9461ddc1e8f7e7fc269ee40953aa6cf4cc4c1b976dfa1a072dbc1030423397337cc1ab070f80
|
@@ -33,7 +33,14 @@ class Features::ForemanProxy < ForemanMaintain::Feature
|
|
33
33
|
|
34
34
|
def features
|
35
35
|
# TODO: handle failures
|
36
|
-
run_curl_cmd("#{curl_cmd}/features").result
|
36
|
+
@features ||= run_curl_cmd("#{curl_cmd}/features").result
|
37
|
+
@features = [] if @features.is_a?(String)
|
38
|
+
@features
|
39
|
+
end
|
40
|
+
|
41
|
+
def refresh_features
|
42
|
+
@features = nil
|
43
|
+
features
|
37
44
|
end
|
38
45
|
|
39
46
|
def internal?
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module Procedures::ForemanProxy
|
2
|
+
class Features < ForemanMaintain::Procedure
|
3
|
+
metadata do
|
4
|
+
param :load_only, 'Do not print the features', :default => false
|
5
|
+
description 'Detect features available in the local proxy'
|
6
|
+
for_feature :foreman_proxy
|
7
|
+
end
|
8
|
+
|
9
|
+
def run
|
10
|
+
features = feature(:foreman_proxy).refresh_features
|
11
|
+
puts features.join(', ') unless @load_only
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -126,6 +126,7 @@ module ForemanMaintain::Scenarios
|
|
126
126
|
|
127
127
|
def add_offline_backup_steps
|
128
128
|
include_dumps if include_db_dumps?
|
129
|
+
add_step_with_context(Procedures::ForemanProxy::Features, :load_only => true)
|
129
130
|
add_steps_with_context(
|
130
131
|
find_procedures(:maintenance_mode_on),
|
131
132
|
Procedures::Service::Stop,
|
@@ -156,6 +157,8 @@ module ForemanMaintain::Scenarios
|
|
156
157
|
|
157
158
|
# rubocop:disable Metrics/MethodLength
|
158
159
|
def add_snapshot_backup_steps
|
160
|
+
include_dumps if include_db_dumps?
|
161
|
+
add_step_with_context(Procedures::ForemanProxy::Features, :load_only => true)
|
159
162
|
add_steps_with_context(
|
160
163
|
Procedures::Backup::Snapshot::PrepareMount,
|
161
164
|
find_procedures(:maintenance_mode_on),
|
@@ -0,0 +1,80 @@
|
|
1
|
+
module Scenarios::Satellite_6_6_z
|
2
|
+
class Abstract < ForemanMaintain::Scenario
|
3
|
+
def self.upgrade_metadata(&block)
|
4
|
+
metadata do
|
5
|
+
tags :upgrade_to_satellite_6_6_z
|
6
|
+
confine do
|
7
|
+
feature(:downstream) && feature(:downstream).current_minor_version == '6.6'
|
8
|
+
end
|
9
|
+
instance_eval(&block)
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class PreUpgradeCheck < Abstract
|
15
|
+
upgrade_metadata do
|
16
|
+
description 'Checks before upgrading to Satellite 6.6.z'
|
17
|
+
tags :pre_upgrade_checks
|
18
|
+
run_strategy :fail_slow
|
19
|
+
end
|
20
|
+
|
21
|
+
def compose
|
22
|
+
add_steps(find_checks(:default))
|
23
|
+
add_steps(find_checks(:pre_upgrade))
|
24
|
+
add_step(Checks::Repositories::Validate.new(:version => '6.6'))
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
class PreMigrations < Abstract
|
29
|
+
upgrade_metadata do
|
30
|
+
description 'Procedures before migrating to Satellite 6.6.z'
|
31
|
+
tags :pre_migrations
|
32
|
+
end
|
33
|
+
|
34
|
+
def compose
|
35
|
+
add_steps(find_procedures(:pre_migrations))
|
36
|
+
add_step(Procedures::Service::Stop.new)
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
class Migrations < Abstract
|
41
|
+
upgrade_metadata do
|
42
|
+
description 'Migration scripts to Satellite 6.6.z'
|
43
|
+
tags :migrations
|
44
|
+
end
|
45
|
+
|
46
|
+
def compose
|
47
|
+
add_step(Procedures::Repositories::Setup.new(:version => '6.6'))
|
48
|
+
add_step(Procedures::Packages::UnlockVersions.new)
|
49
|
+
add_step(Procedures::Packages::Update.new(:assumeyes => true))
|
50
|
+
add_step(Procedures::Installer::Upgrade.new)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
class PostMigrations < Abstract
|
55
|
+
upgrade_metadata do
|
56
|
+
description 'Procedures after migrating to Satellite 6.6.z'
|
57
|
+
tags :post_migrations
|
58
|
+
end
|
59
|
+
|
60
|
+
def compose
|
61
|
+
add_step(Procedures::Service::Start.new)
|
62
|
+
add_steps(find_procedures(:post_migrations))
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
class PostUpgradeChecks < Abstract
|
67
|
+
upgrade_metadata do
|
68
|
+
description 'Checks after upgrading to Satellite 6.6.z'
|
69
|
+
tags :post_upgrade_checks
|
70
|
+
run_strategy :fail_slow
|
71
|
+
end
|
72
|
+
|
73
|
+
def compose
|
74
|
+
add_steps(find_checks(:default))
|
75
|
+
add_steps(find_checks(:post_upgrade))
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
ForemanMaintain::UpgradeRunner.register_version('6.6.z', :upgrade_to_satellite_6_6_z)
|
@@ -130,6 +130,7 @@ module ForemanMaintain
|
|
130
130
|
include BackupCommon
|
131
131
|
interactive_option
|
132
132
|
common_backup_options
|
133
|
+
option '--include-db-dumps', :flag, 'Also dump full database schema before snapshot backup'
|
133
134
|
option ['-d', '--snapshot-mount-dir'], 'SNAPSHOT_MOUNT_DIR',
|
134
135
|
"Override default directory ('/var/snap/') where the snapshots will be mounted",
|
135
136
|
:default => '/var/snap/' do |dir|
|
@@ -144,7 +145,8 @@ module ForemanMaintain
|
|
144
145
|
def execute
|
145
146
|
perform_backup(:snapshot,
|
146
147
|
:snapshot_mount_dir => snapshot_mount_dir,
|
147
|
-
:snapshot_block_size => snapshot_block_size
|
148
|
+
:snapshot_block_size => snapshot_block_size,
|
149
|
+
:include_db_dumps => include_db_dumps?)
|
148
150
|
end
|
149
151
|
end
|
150
152
|
|
metadata
CHANGED
@@ -1,97 +1,97 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: foreman_maintain
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.4
|
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: 2019-
|
11
|
+
date: 2019-07-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: clamp
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - '>='
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: highline
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - '>='
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - '>='
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: bundler
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ~>
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '1.3'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ~>
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '1.3'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: minitest
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - '>='
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - '>='
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: mocha
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- -
|
73
|
+
- - '>='
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - '>='
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: rake
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - <
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: 11.0.0
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- -
|
94
|
+
- - <
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: 11.0.0
|
97
97
|
description: Provides various features that helps keeping the Foreman/Satellite up
|
@@ -209,6 +209,7 @@ files:
|
|
209
209
|
- definitions/procedures/foreman/fix_corrupted_roles.rb
|
210
210
|
- definitions/procedures/foreman_docker/remove_foreman_docker.rb
|
211
211
|
- definitions/procedures/foreman_openscap/invalid_report_associations.rb
|
212
|
+
- definitions/procedures/foreman_proxy/features.rb
|
212
213
|
- definitions/procedures/foreman_tasks/delete.rb
|
213
214
|
- definitions/procedures/foreman_tasks/fetch_tasks_status.rb
|
214
215
|
- definitions/procedures/foreman_tasks/resume.rb
|
@@ -267,6 +268,7 @@ files:
|
|
267
268
|
- definitions/scenarios/upgrade_to_satellite_6_5.rb
|
268
269
|
- definitions/scenarios/upgrade_to_satellite_6_5_z.rb
|
269
270
|
- definitions/scenarios/upgrade_to_satellite_6_6.rb
|
271
|
+
- definitions/scenarios/upgrade_to_satellite_6_6_z.rb
|
270
272
|
- definitions/scenarios/version_locking.rb
|
271
273
|
- lib/foreman_maintain.rb
|
272
274
|
- lib/foreman_maintain/check.rb
|
@@ -350,17 +352,17 @@ require_paths:
|
|
350
352
|
- lib
|
351
353
|
required_ruby_version: !ruby/object:Gem::Requirement
|
352
354
|
requirements:
|
353
|
-
- -
|
355
|
+
- - '>='
|
354
356
|
- !ruby/object:Gem::Version
|
355
357
|
version: '0'
|
356
358
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
357
359
|
requirements:
|
358
|
-
- -
|
360
|
+
- - '>='
|
359
361
|
- !ruby/object:Gem::Version
|
360
362
|
version: '0'
|
361
363
|
requirements: []
|
362
364
|
rubyforge_project:
|
363
|
-
rubygems_version: 2.
|
365
|
+
rubygems_version: 2.6.13
|
364
366
|
signing_key:
|
365
367
|
specification_version: 4
|
366
368
|
summary: Foreman maintenance tool belt
|