foreman_maintain 0.5.0 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: f7559f6d4d97f5b61279e22233855efd6ffcf4061013b107389f9bb0469832e5
4
- data.tar.gz: 9a3c76b2006e87a0f2d5a6021f26a35624c70e08409dafffa76e1a518565e89a
2
+ SHA1:
3
+ metadata.gz: f6e19430df61e831c0b087072cd4fa46d38b143f
4
+ data.tar.gz: 04d04513790799fca35bfcea19537ab11d14b088
5
5
  SHA512:
6
- metadata.gz: 7967c8ed3ec1830e917f25765626758ba4d8d1af636d7003e6522ddd038540fab1f33d62630cacd1dfd2855084bb2e2b4cbc50be84ed8582e3157a819f7bb4d5
7
- data.tar.gz: 7c5fbf539f92af28e9e4326b276812c1f4bb4a13aaca8b0948f7c8d33fb26f7480864d6d269cb141c50e8870cc7a1dae9e668c25163d4b86fadf8033c4cf1cb6
6
+ metadata.gz: fa8232f3c26bfb1409c45d211e91e5163675820df97692d4250f8bfe8d9cffc3a7c0b3dca910e594ba46dc7aa162dbcc4df1ea4d45cf10cc86151d2c9a266799
7
+ data.tar.gz: cdfb28627937100f36d9b89afd434ed9b046168c8bc9c9885cb97a5109b5f541dbf2fa94d122488212c956bbd4ca59fe5c2d7caf8994f01eb1a9196771fcc3d6
@@ -0,0 +1,32 @@
1
+ module Checks
2
+ module Foreman
3
+ class FactsNames < ForemanMaintain::Check
4
+ metadata do
5
+ label :foreman_fact_names
6
+ tags :default
7
+ confine do
8
+ feature(:foreman_database)
9
+ end
10
+ description 'Check number of fact names in database'
11
+ end
12
+
13
+ def run
14
+ max = 10_000
15
+ sql = <<-SQL
16
+ select fact_values.host_id, count(fact_values.id) from fact_values
17
+ group by fact_values.host_id order by count desc limit 1
18
+ SQL
19
+ result = feature(:foreman_database).query(sql).first
20
+ if result
21
+ host_id = result['host_id']
22
+ count = result['count'].to_i
23
+ assert(count < max,
24
+ "Host (ID #{host_id}) has #{count} fact values which is more than #{max}.\n" \
25
+ 'This can cause slow fact processing.',
26
+ :warn => true,
27
+ :next_steps => [Procedures::KnowledgeBaseArticle.new(:doc => 'many_fact_values')])
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -10,7 +10,7 @@ class Checks::OriginalAssets < ForemanMaintain::Check
10
10
  custom_assets = []
11
11
  product_name = feature(:instance).product_name
12
12
  with_spinner('Checking for presence of non-original assets...') do
13
- custom_assets = feature(:package_manager).files_not_owned_by_package(ASSETS_DIR)
13
+ custom_assets = package_manager.files_not_owned_by_package(ASSETS_DIR)
14
14
  logger.info("Non-original assets detected:\n" + custom_assets.join("\n"))
15
15
  end
16
16
  remove_files = Procedures::Files::Remove.new(:files => custom_assets, :assumeyes => true)
@@ -5,7 +5,7 @@ module Checks
5
5
  end
6
6
 
7
7
  def run
8
- enabled = feature(:package_manager).version_locking_enabled?
8
+ enabled = package_manager.version_locking_enabled?
9
9
  enable_locking = Procedures::Packages::EnableVersionLocking.new(:assumeyes => assumeyes?)
10
10
  assert(enabled, 'Tools for package version locking are not available on this system',
11
11
  :next_steps => enable_locking)
@@ -5,8 +5,8 @@ class Features::Capsule < ForemanMaintain::Feature
5
5
  label :capsule
6
6
 
7
7
  confine do
8
- feature(:package_manager).installed?(['satellite-capsule']) ||
9
- feature(:package_manager).installed?(['capsule-installer'])
8
+ package_manager.installed?(['satellite-capsule']) ||
9
+ package_manager.installed?(['capsule-installer'])
10
10
  end
11
11
  end
12
12
 
@@ -55,7 +55,7 @@ class Features::ForemanTasks < ForemanMaintain::Feature
55
55
  sql = <<-SQL
56
56
  SELECT count(*) AS count
57
57
  FROM foreman_tasks_tasks
58
- WHERE state IN ('paused')
58
+ WHERE state IN ('paused') AND result IN ('error')
59
59
  SQL
60
60
  unless ignored_tasks.empty?
61
61
  sql << "AND label NOT IN (#{quotize(ignored_tasks)})"
@@ -32,7 +32,11 @@ class Features::Katello < ForemanMaintain::Feature
32
32
  '/etc/sysconfig/tomcat*',
33
33
  '/etc/tomcat*',
34
34
  '/var/lib/candlepin',
35
- '/usr/share/foreman/bundler.d/katello.rb'
35
+ '/usr/share/foreman/bundler.d/katello.rb',
36
+ '/etc/qpid',
37
+ '/etc/qpid-dispatch',
38
+ '/var/lib/qpidd',
39
+ '/etc/qpid-dispatch'
36
40
  ]
37
41
 
38
42
  if installer_scenario_answers['certs']
@@ -30,12 +30,8 @@ class Features::Pulp < ForemanMaintain::Feature
30
30
  [
31
31
  '/etc/pki/pulp',
32
32
  '/etc/pulp',
33
- '/etc/qpid',
34
- '/etc/qpid-dispatch',
35
33
  '/etc/crane.conf',
36
- '/etc/default/pulp_workers',
37
- '/var/lib/qpidd',
38
- '/etc/qpid-dispatch'
34
+ '/etc/default/pulp_workers'
39
35
  ]
40
36
  end
41
37
  end
@@ -5,7 +5,7 @@ class Features::Satellite < ForemanMaintain::Feature
5
5
  label :satellite
6
6
 
7
7
  confine do
8
- feature(:package_manager).installed?(['satellite'])
8
+ package_manager.installed?(['satellite'])
9
9
  end
10
10
  end
11
11
 
@@ -2,7 +2,6 @@ module Procedures::Foreman
2
2
  class FixCorruptedRoles < ForemanMaintain::Procedure
3
3
  metadata do
4
4
  for_feature :foreman_database
5
- tags :pre_migration
6
5
  desc = 'Create additional filters so that each filter has only permissions of one resource'
7
6
  description desc
8
7
  confine do
@@ -3,7 +3,7 @@ module Procedures::ForemanOpenscap
3
3
  metadata do
4
4
  param :ids_to_remove, 'Ids of reports to remove', :required => true
5
5
  for_feature :foreman_openscap
6
- tags :pre_migration, :foreman_openscap, :openscap_report_associations
6
+ tags :foreman_openscap, :openscap_report_associations
7
7
  advanced_run false
8
8
  description 'Delete reports with association issues'
9
9
  end
@@ -25,7 +25,8 @@ class Procedures::KnowledgeBaseArticle < ForemanMaintain::Procedure
25
25
  {
26
26
  'fix_cpdb_validate_failure' => 'https://access.redhat.com/solutions/3362821',
27
27
  'fix_db_migrate_failure_on_duplicate_roles' => 'https://access.redhat.com/solutions/3998941',
28
- 'upgrade_puppet_guide_for_sat63' => 'https://access.redhat.com/documentation/en-us/red_hat_satellite/6.3/html/upgrading_and_updating_red_hat_satellite/upgrading_puppet-1'
28
+ 'upgrade_puppet_guide_for_sat63' => 'https://access.redhat.com/documentation/en-us/red_hat_satellite/6.3/html/upgrading_and_updating_red_hat_satellite/upgrading_puppet-1',
29
+ 'many_fact_values' => 'https://access.redhat.com/solutions/4163891'
29
30
  }
30
31
  end
31
32
  end
@@ -6,7 +6,7 @@ module Procedures::Packages
6
6
  end
7
7
 
8
8
  def run
9
- feature(:package_manager).install_version_locking(:assumeyes => @assumeyes)
9
+ package_manager.install_version_locking(:assumeyes => @assumeyes)
10
10
  end
11
11
  end
12
12
  end
@@ -1,13 +1,12 @@
1
1
  module Procedures::Packages
2
2
  class LockVersions < ForemanMaintain::Procedure
3
3
  metadata do
4
- for_feature :package_manager
5
4
  description 'Lock packages'
6
5
  preparation_steps { [Checks::VersionLockingEnabled.new] }
7
6
  end
8
7
 
9
8
  def run
10
- feature(:package_manager).lock_versions
9
+ package_manager.lock_versions
11
10
  end
12
11
  end
13
12
  end
@@ -1,7 +1,6 @@
1
1
  module Procedures::Packages
2
2
  class LockingStatus < ForemanMaintain::Procedure
3
3
  metadata do
4
- for_feature :package_manager
5
4
  description 'Check status of version locking of packages'
6
5
  preparation_steps { [Checks::VersionLockingEnabled.new] }
7
6
  end
@@ -14,7 +13,7 @@ module Procedures::Packages
14
13
  private
15
14
 
16
15
  def check_version_locked
17
- if feature(:package_manager).versions_locked?
16
+ if package_manager.versions_locked?
18
17
  puts ' Packages are locked.'
19
18
  else
20
19
  puts ' Packages are not locked.'
@@ -1,13 +1,12 @@
1
1
  module Procedures::Packages
2
2
  class UnlockVersions < ForemanMaintain::Procedure
3
3
  metadata do
4
- for_feature :package_manager
5
4
  description 'Unlock packages'
6
5
  preparation_steps { [Checks::VersionLockingEnabled.new] }
7
6
  end
8
7
 
9
8
  def run
10
- feature(:package_manager).unlock_versions
9
+ package_manager.unlock_versions
11
10
  end
12
11
  end
13
12
  end
@@ -10,7 +10,7 @@ module Procedures::Packages
10
10
 
11
11
  def run
12
12
  assumeyes_val = @assumeyes.nil? ? assumeyes? : @assumeyes
13
- feature(:package_manager).clean_cache
13
+ package_manager.clean_cache
14
14
  packages_action(:update, @packages, :assumeyes => assumeyes_val)
15
15
  rescue ForemanMaintain::Error::ExecutionError => e
16
16
  if @warn_on_errors
@@ -15,5 +15,6 @@ librdmacm
15
15
  rdma-core
16
16
  boost-random
17
17
  boost-iostreams
18
+ boost-thread
18
19
  # foreman-maintain
19
20
  rubygem-foreman_maintain
@@ -36,9 +36,9 @@ module ForemanMaintain
36
36
  require 'foreman_maintain/runner'
37
37
  require 'foreman_maintain/upgrade_runner'
38
38
  require 'foreman_maintain/reporter'
39
+ require 'foreman_maintain/package_manager'
39
40
  require 'foreman_maintain/utils'
40
41
  require 'foreman_maintain/error'
41
- require 'foreman_maintain/package_manager'
42
42
 
43
43
  class << self
44
44
  attr_accessor :config, :logger
@@ -53,7 +53,7 @@ module ForemanMaintain
53
53
  subcommand 'is-locked', 'Check if update of packages is allowed' do
54
54
  interactive_option
55
55
  def execute
56
- locked = feature(:package_manager).versions_locked?
56
+ locked = ForemanMaintain.package_manager.versions_locked?
57
57
  puts "Packages are#{locked ? '' : ' not'} locked"
58
58
  exit_code = locked ? 0 : 1
59
59
  exit exit_code
@@ -85,7 +85,7 @@ module ForemanMaintain
85
85
  end
86
86
 
87
87
  def find_package(name)
88
- feature(:package_manager).find_installed_package(name)
88
+ package_manager.find_installed_package(name)
89
89
  end
90
90
 
91
91
  def hostname
@@ -100,11 +100,11 @@ module ForemanMaintain
100
100
  options.validate_options!(:assumeyes)
101
101
  case action
102
102
  when :install
103
- feature(:package_manager).install(packages, :assumeyes => options[:assumeyes])
103
+ package_manager.install(packages, :assumeyes => options[:assumeyes])
104
104
  when :update
105
- feature(:package_manager).update(packages, :assumeyes => options[:assumeyes])
105
+ package_manager.update(packages, :assumeyes => options[:assumeyes])
106
106
  when :remove
107
- feature(:package_manager).remove(packages, :assumeyes => options[:assumeyes])
107
+ package_manager.remove(packages, :assumeyes => options[:assumeyes])
108
108
  else
109
109
  raise ArgumentError, "Unexpected action #{action} expected #{expected_actions.inspect}"
110
110
  end
@@ -178,6 +178,10 @@ module ForemanMaintain
178
178
  result
179
179
  end
180
180
 
181
+ def package_manager
182
+ ForemanMaintain.package_manager
183
+ end
184
+
181
185
  private
182
186
 
183
187
  def check_version(name)
@@ -1,3 +1,16 @@
1
1
  require 'foreman_maintain/package_manager/base'
2
2
  require 'foreman_maintain/package_manager/yum'
3
3
  require 'foreman_maintain/package_manager/dnf'
4
+
5
+ module ForemanMaintain
6
+ def self.package_manager
7
+ @package_manager ||= case (%w[dnf yum apt].find { |manager| !`command -v #{manager}`.empty? })
8
+ when 'dnf'
9
+ ForemanMaintain::PackageManager::Dnf.new
10
+ when 'yum'
11
+ ForemanMaintain::PackageManager::Yum.new
12
+ else
13
+ raise 'No supported package manager was found'
14
+ end
15
+ end
16
+ end
@@ -1,3 +1,3 @@
1
1
  module ForemanMaintain
2
- VERSION = '0.5.0'.freeze
2
+ VERSION = '0.5.1'.freeze
3
3
  end
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.5.0
4
+ version: 0.5.1
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-12 00:00:00.000000000 Z
11
+ date: 2020-01-10 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
- version: '1.3'
47
+ version: '1.17'
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
- version: '1.3'
54
+ version: '1.17'
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
@@ -107,86 +107,156 @@ extra_rdoc_files:
107
107
  - LICENSE
108
108
  - README.md
109
109
  files:
110
- - LICENSE
111
- - README.md
112
110
  - bin/foreman-maintain
113
111
  - bin/foreman-maintain-complete
114
112
  - bin/foreman-maintain-rotate-tar
115
113
  - bin/passenger-recycler
116
- - config/foreman-maintain.completion
117
- - config/foreman_maintain.yml.example
118
- - config/foreman_maintain.yml.packaging
119
- - config/hammer.yml.example
120
- - config/passenger-recycler.yaml
121
- - definitions/checks/backup/certs_tar_exist.rb
122
- - definitions/checks/backup/directory_ready.rb
123
- - definitions/checks/candlepin/db_up.rb
124
- - definitions/checks/candlepin/validate_db.rb
125
- - definitions/checks/check_epel_repository.rb
126
- - definitions/checks/check_hotfix_installed.rb
114
+ - lib/foreman_maintain/cli/health_command.rb
115
+ - lib/foreman_maintain/cli/maintenance_mode_command.rb
116
+ - lib/foreman_maintain/cli/restore_command.rb
117
+ - lib/foreman_maintain/cli/transform_clamp_options.rb
118
+ - lib/foreman_maintain/cli/upgrade_command.rb
119
+ - lib/foreman_maintain/cli/advanced_command.rb
120
+ - lib/foreman_maintain/cli/base.rb
121
+ - lib/foreman_maintain/cli/service_command.rb
122
+ - lib/foreman_maintain/cli/advanced/prebuild_bash_completion.rb
123
+ - lib/foreman_maintain/cli/advanced/procedure/abstract_by_tag_command.rb
124
+ - lib/foreman_maintain/cli/advanced/procedure/abstract_procedure_command.rb
125
+ - lib/foreman_maintain/cli/advanced/procedure/by_tag_command.rb
126
+ - lib/foreman_maintain/cli/advanced/procedure/run_command.rb
127
+ - lib/foreman_maintain/cli/advanced/procedure_command.rb
128
+ - lib/foreman_maintain/cli/backup_command.rb
129
+ - lib/foreman_maintain/cli/packages_command.rb
130
+ - lib/foreman_maintain/concerns/base_database.rb
131
+ - lib/foreman_maintain/concerns/directory_marker.rb
132
+ - lib/foreman_maintain/concerns/finders.rb
133
+ - lib/foreman_maintain/concerns/hammer.rb
134
+ - lib/foreman_maintain/concerns/metadata.rb
135
+ - lib/foreman_maintain/concerns/reporter.rb
136
+ - lib/foreman_maintain/concerns/scenario_metadata.rb
137
+ - lib/foreman_maintain/concerns/logger.rb
138
+ - lib/foreman_maintain/concerns/system_service.rb
139
+ - lib/foreman_maintain/concerns/downstream.rb
140
+ - lib/foreman_maintain/concerns/system_helpers.rb
141
+ - lib/foreman_maintain/reporter/cli_reporter.rb
142
+ - lib/foreman_maintain/runner/execution.rb
143
+ - lib/foreman_maintain/runner/stored_execution.rb
144
+ - lib/foreman_maintain/utils/disk/nil_device.rb
145
+ - lib/foreman_maintain/utils/disk/device.rb
146
+ - lib/foreman_maintain/utils/disk/stats.rb
147
+ - lib/foreman_maintain/utils/disk/io_device.rb
148
+ - lib/foreman_maintain/utils/curl_response.rb
149
+ - lib/foreman_maintain/utils/disk.rb
150
+ - lib/foreman_maintain/utils/facter.rb
151
+ - lib/foreman_maintain/utils/hash_tools.rb
152
+ - lib/foreman_maintain/utils/mongo_core.rb
153
+ - lib/foreman_maintain/utils/service.rb
154
+ - lib/foreman_maintain/utils/service/remote_db.rb
155
+ - lib/foreman_maintain/utils/service/abstract.rb
156
+ - lib/foreman_maintain/utils/service/systemd.rb
157
+ - lib/foreman_maintain/utils/system_helpers.rb
158
+ - lib/foreman_maintain/utils/backup.rb
159
+ - lib/foreman_maintain/utils/bash.rb
160
+ - lib/foreman_maintain/utils/command_runner.rb
161
+ - lib/foreman_maintain/utils/response.rb
162
+ - lib/foreman_maintain/procedure.rb
163
+ - lib/foreman_maintain/package_manager/dnf.rb
164
+ - lib/foreman_maintain/package_manager/base.rb
165
+ - lib/foreman_maintain/package_manager/yum.rb
166
+ - lib/foreman_maintain/cli.rb
167
+ - lib/foreman_maintain/version.rb
168
+ - lib/foreman_maintain/top_level_modules.rb
169
+ - lib/foreman_maintain/reporter.rb
170
+ - lib/foreman_maintain/yaml_storage.rb
171
+ - lib/foreman_maintain/scenario.rb
172
+ - lib/foreman_maintain/config.rb
173
+ - lib/foreman_maintain/runner.rb
174
+ - lib/foreman_maintain/utils.rb
175
+ - lib/foreman_maintain/check.rb
176
+ - lib/foreman_maintain/context.rb
177
+ - lib/foreman_maintain/core_ext.rb
178
+ - lib/foreman_maintain/csv_parser.rb
179
+ - lib/foreman_maintain/dependency_graph.rb
180
+ - lib/foreman_maintain/error.rb
181
+ - lib/foreman_maintain/executable.rb
182
+ - lib/foreman_maintain/param.rb
183
+ - lib/foreman_maintain/detector.rb
184
+ - lib/foreman_maintain/feature.rb
185
+ - lib/foreman_maintain/upgrade_runner.rb
186
+ - lib/foreman_maintain/package_manager.rb
187
+ - lib/foreman_maintain.rb
188
+ - definitions/checks/foreman_tasks/invalid/check_old.rb
189
+ - definitions/checks/foreman_tasks/invalid/check_pending_state.rb
190
+ - definitions/checks/foreman_tasks/invalid/check_planning_state.rb
191
+ - definitions/checks/foreman_tasks/not_running.rb
192
+ - definitions/checks/foreman_tasks/not_paused.rb
127
193
  - definitions/checks/check_tmout.rb
128
194
  - definitions/checks/disk/available_space.rb
129
195
  - definitions/checks/disk/performance.rb
130
196
  - definitions/checks/foreman/check_corrupted_roles.rb
131
- - definitions/checks/foreman/check_duplicate_roles.rb
132
197
  - definitions/checks/foreman/db_up.rb
133
198
  - definitions/checks/foreman/puppet_class_duplicates.rb
199
+ - definitions/checks/foreman/check_duplicate_roles.rb
200
+ - definitions/checks/foreman/facts_names.rb
134
201
  - definitions/checks/foreman_openscap/invalid_report_associations.rb
135
202
  - definitions/checks/foreman_proxy/verify_dhcp_config_syntax.rb
136
- - definitions/checks/foreman_tasks/invalid/check_old.rb
137
- - definitions/checks/foreman_tasks/invalid/check_pending_state.rb
138
- - definitions/checks/foreman_tasks/invalid/check_planning_state.rb
139
- - definitions/checks/foreman_tasks/not_paused.rb
140
- - definitions/checks/foreman_tasks/not_running.rb
141
203
  - definitions/checks/maintenance_mode/check_consistency.rb
142
204
  - definitions/checks/mongo/db_up.rb
143
205
  - definitions/checks/mongo/tools_installed.rb
144
- - definitions/checks/original_assets.rb
145
- - definitions/checks/puppet/provide_upgrade_guide.rb
146
206
  - definitions/checks/puppet/verify_no_empty_cacert_requests.rb
207
+ - definitions/checks/puppet/provide_upgrade_guide.rb
147
208
  - definitions/checks/remote_execution/verify_settings_file_already_exists.rb
148
209
  - definitions/checks/repositories/check_upstream_repository.rb
149
210
  - definitions/checks/repositories/validate.rb
150
211
  - definitions/checks/restore/validate_backup.rb
151
212
  - definitions/checks/restore/validate_hostname.rb
152
213
  - definitions/checks/root_user.rb
214
+ - definitions/checks/yum_exclude.rb
215
+ - definitions/checks/check_epel_repository.rb
216
+ - definitions/checks/check_hotfix_installed.rb
153
217
  - definitions/checks/server_ping.rb
154
218
  - definitions/checks/services_up.rb
155
219
  - definitions/checks/system_registration.rb
220
+ - definitions/checks/original_assets.rb
156
221
  - definitions/checks/version_locking_enabled.rb
157
- - definitions/checks/yum_exclude.rb
222
+ - definitions/checks/backup/directory_ready.rb
223
+ - definitions/checks/backup/certs_tar_exist.rb
224
+ - definitions/checks/candlepin/db_up.rb
225
+ - definitions/checks/candlepin/validate_db.rb
226
+ - definitions/features/foreman_1_11_x.rb
158
227
  - definitions/features/candlepin.rb
159
228
  - definitions/features/candlepin_database.rb
160
- - definitions/features/capsule.rb
161
- - definitions/features/cron.rb
162
- - definitions/features/foreman_1_11_x.rb
163
- - definitions/features/foreman_1_7_x.rb
164
229
  - definitions/features/foreman_database.rb
165
230
  - definitions/features/foreman_openscap.rb
166
- - definitions/features/foreman_proxy.rb
167
- - definitions/features/foreman_server.rb
231
+ - definitions/features/installer.rb
232
+ - definitions/features/capsule.rb
168
233
  - definitions/features/foreman_tasks.rb
234
+ - definitions/features/foreman_1_7_x.rb
169
235
  - definitions/features/gofer.rb
170
- - definitions/features/hammer.rb
171
- - definitions/features/installer.rb
172
- - definitions/features/instance.rb
173
236
  - definitions/features/iptables.rb
174
- - definitions/features/katello.rb
175
- - definitions/features/mongo.rb
176
- - definitions/features/package_manager.rb
177
- - definitions/features/pulp.rb
178
237
  - definitions/features/puppet_server.rb
179
- - definitions/features/satellite.rb
180
- - definitions/features/service.rb
181
238
  - definitions/features/sync_plans.rb
182
239
  - definitions/features/system_repos.rb
183
- - definitions/features/tar.rb
184
240
  - definitions/features/upstream.rb
241
+ - definitions/features/satellite.rb
242
+ - definitions/features/katello.rb
243
+ - definitions/features/tar.rb
244
+ - definitions/features/cron.rb
245
+ - definitions/features/foreman_server.rb
246
+ - definitions/features/hammer.rb
247
+ - definitions/features/service.rb
248
+ - definitions/features/foreman_proxy.rb
249
+ - definitions/features/instance.rb
250
+ - definitions/features/mongo.rb
251
+ - definitions/features/pulp.rb
252
+ - definitions/procedures/foreman_tasks/delete.rb
253
+ - definitions/procedures/foreman_tasks/fetch_tasks_status.rb
254
+ - definitions/procedures/foreman_tasks/resume.rb
255
+ - definitions/procedures/foreman_tasks/ui_investigate.rb
256
+ - definitions/procedures/sync_plans/disable.rb
257
+ - definitions/procedures/sync_plans/enable.rb
185
258
  - definitions/procedures/backup/accessibility_confirmation.rb
186
259
  - definitions/procedures/backup/clean.rb
187
- - definitions/procedures/backup/compress_data.rb
188
- - definitions/procedures/backup/config_files.rb
189
- - definitions/procedures/backup/metadata.rb
190
260
  - definitions/procedures/backup/offline/candlepin_db.rb
191
261
  - definitions/procedures/backup/offline/foreman_db.rb
192
262
  - definitions/procedures/backup/offline/mongo.rb
@@ -196,39 +266,35 @@ files:
196
266
  - definitions/procedures/backup/online/pg_global_objects.rb
197
267
  - definitions/procedures/backup/online/safety_confirmation.rb
198
268
  - definitions/procedures/backup/prepare_directory.rb
199
- - definitions/procedures/backup/pulp.rb
200
269
  - definitions/procedures/backup/snapshot/clean_mount.rb
201
- - definitions/procedures/backup/snapshot/logical_volume_confirmation.rb
202
270
  - definitions/procedures/backup/snapshot/mount_base.rb
203
271
  - definitions/procedures/backup/snapshot/mount_candlepin_db.rb
204
272
  - definitions/procedures/backup/snapshot/mount_foreman_db.rb
205
273
  - definitions/procedures/backup/snapshot/mount_mongo.rb
206
- - definitions/procedures/backup/snapshot/mount_pulp.rb
207
274
  - definitions/procedures/backup/snapshot/prepare_mount.rb
275
+ - definitions/procedures/backup/snapshot/logical_volume_confirmation.rb
276
+ - definitions/procedures/backup/snapshot/mount_pulp.rb
277
+ - definitions/procedures/backup/metadata.rb
278
+ - definitions/procedures/backup/compress_data.rb
279
+ - definitions/procedures/backup/config_files.rb
280
+ - definitions/procedures/backup/pulp.rb
208
281
  - definitions/procedures/candlepin/delete_orphaned_records_from_env_content.rb
209
282
  - definitions/procedures/crond/start.rb
210
283
  - definitions/procedures/crond/stop.rb
211
- - definitions/procedures/files/remove.rb
212
284
  - definitions/procedures/foreman/apipie_cache.rb
213
- - definitions/procedures/foreman/fix_corrupted_roles.rb
214
285
  - definitions/procedures/foreman/remove_duplicate_obsolete_roles.rb
286
+ - definitions/procedures/foreman/fix_corrupted_roles.rb
215
287
  - definitions/procedures/foreman_docker/remove_foreman_docker.rb
216
288
  - definitions/procedures/foreman_openscap/invalid_report_associations.rb
217
- - definitions/procedures/foreman_proxy/features.rb
218
- - definitions/procedures/foreman_tasks/delete.rb
219
- - definitions/procedures/foreman_tasks/fetch_tasks_status.rb
220
- - definitions/procedures/foreman_tasks/resume.rb
221
- - definitions/procedures/foreman_tasks/ui_investigate.rb
222
289
  - definitions/procedures/hammer_setup.rb
223
- - definitions/procedures/installer/run.rb
224
290
  - definitions/procedures/installer/upgrade.rb
291
+ - definitions/procedures/installer/run.rb
225
292
  - definitions/procedures/iptables/add_maintenance_mode_chain.rb
226
293
  - definitions/procedures/iptables/remove_maintenance_mode_chain.rb
227
- - definitions/procedures/knowledge_base_article.rb
228
294
  - definitions/procedures/maintenance_mode/is_enabled.rb
229
- - definitions/procedures/packages/enable_version_locking.rb
230
295
  - definitions/procedures/packages/install.rb
231
296
  - definitions/procedures/packages/installer_confirmation.rb
297
+ - definitions/procedures/packages/enable_version_locking.rb
232
298
  - definitions/procedures/packages/lock_versions.rb
233
299
  - definitions/procedures/packages/locking_status.rb
234
300
  - definitions/procedures/packages/unlock_versions.rb
@@ -240,124 +306,58 @@ files:
240
306
  - definitions/procedures/repositories/disable.rb
241
307
  - definitions/procedures/repositories/setup.rb
242
308
  - definitions/procedures/restore/candlepin_dump.rb
243
- - definitions/procedures/restore/configs.rb
244
309
  - definitions/procedures/restore/confirmation.rb
245
310
  - definitions/procedures/restore/drop_databases.rb
246
311
  - definitions/procedures/restore/ensure_mongo_engine_matches.rb
247
312
  - definitions/procedures/restore/extract_files.rb
248
313
  - definitions/procedures/restore/foreman_dump.rb
249
- - definitions/procedures/restore/installer_reset.rb
250
- - definitions/procedures/restore/mongo_dump.rb
251
314
  - definitions/procedures/restore/pg_global_objects.rb
252
315
  - definitions/procedures/restore/postgres_owner.rb
316
+ - definitions/procedures/restore/installer_reset.rb
317
+ - definitions/procedures/restore/configs.rb
318
+ - definitions/procedures/restore/mongo_dump.rb
253
319
  - definitions/procedures/selinux/set_file_security.rb
254
- - definitions/procedures/service/base.rb
255
320
  - definitions/procedures/service/daemon_reload.rb
256
321
  - definitions/procedures/service/disable.rb
257
322
  - definitions/procedures/service/enable.rb
258
323
  - definitions/procedures/service/list.rb
259
- - definitions/procedures/service/restart.rb
260
324
  - definitions/procedures/service/start.rb
261
325
  - definitions/procedures/service/status.rb
262
326
  - definitions/procedures/service/stop.rb
263
- - definitions/procedures/sync_plans/disable.rb
264
- - definitions/procedures/sync_plans/enable.rb
265
- - definitions/scenarios/backup.rb
327
+ - definitions/procedures/service/restart.rb
328
+ - definitions/procedures/service/base.rb
329
+ - definitions/procedures/foreman_proxy/features.rb
330
+ - definitions/procedures/files/remove.rb
331
+ - definitions/procedures/knowledge_base_article.rb
266
332
  - definitions/scenarios/maintenance_mode.rb
267
- - definitions/scenarios/packages.rb
333
+ - definitions/scenarios/upgrade_to_satellite_6_6.rb
268
334
  - definitions/scenarios/restore.rb
269
- - definitions/scenarios/services.rb
270
335
  - definitions/scenarios/upgrade_to_satellite_6_2.rb
336
+ - definitions/scenarios/upgrade_to_satellite_6_4.rb
337
+ - definitions/scenarios/upgrade_to_satellite_6_6_z.rb
338
+ - definitions/scenarios/backup.rb
339
+ - definitions/scenarios/packages.rb
271
340
  - definitions/scenarios/upgrade_to_satellite_6_2_z.rb
272
- - definitions/scenarios/upgrade_to_satellite_6_3.rb
273
341
  - definitions/scenarios/upgrade_to_satellite_6_3_z.rb
274
- - definitions/scenarios/upgrade_to_satellite_6_4.rb
275
342
  - definitions/scenarios/upgrade_to_satellite_6_4_z.rb
276
- - definitions/scenarios/upgrade_to_satellite_6_5.rb
277
343
  - definitions/scenarios/upgrade_to_satellite_6_5_z.rb
278
- - definitions/scenarios/upgrade_to_satellite_6_6.rb
279
- - definitions/scenarios/upgrade_to_satellite_6_6_z.rb
280
344
  - definitions/scenarios/upgrade_to_satellite_6_7.rb
345
+ - definitions/scenarios/services.rb
346
+ - definitions/scenarios/upgrade_to_satellite_6_3.rb
347
+ - definitions/scenarios/upgrade_to_satellite_6_5.rb
281
348
  - definitions/scenarios/upgrade_to_satellite_6_7_z.rb
349
+ - config/foreman-maintain.completion
350
+ - config/foreman_maintain.yml.example
351
+ - config/foreman_maintain.yml.packaging
352
+ - config/hammer.yml.example
353
+ - config/passenger-recycler.yaml
282
354
  - extras/foreman-maintain.sh
283
355
  - extras/foreman_protector/foreman-protector.conf
284
356
  - extras/foreman_protector/foreman-protector.py
285
357
  - extras/foreman_protector/foreman-protector.whitelist
286
358
  - extras/passenger-recycler.cron
287
- - lib/foreman_maintain.rb
288
- - lib/foreman_maintain/check.rb
289
- - lib/foreman_maintain/cli.rb
290
- - lib/foreman_maintain/cli/advanced/prebuild_bash_completion.rb
291
- - lib/foreman_maintain/cli/advanced/procedure/abstract_by_tag_command.rb
292
- - lib/foreman_maintain/cli/advanced/procedure/abstract_procedure_command.rb
293
- - lib/foreman_maintain/cli/advanced/procedure/by_tag_command.rb
294
- - lib/foreman_maintain/cli/advanced/procedure/run_command.rb
295
- - lib/foreman_maintain/cli/advanced/procedure_command.rb
296
- - lib/foreman_maintain/cli/advanced_command.rb
297
- - lib/foreman_maintain/cli/backup_command.rb
298
- - lib/foreman_maintain/cli/base.rb
299
- - lib/foreman_maintain/cli/health_command.rb
300
- - lib/foreman_maintain/cli/maintenance_mode_command.rb
301
- - lib/foreman_maintain/cli/packages_command.rb
302
- - lib/foreman_maintain/cli/restore_command.rb
303
- - lib/foreman_maintain/cli/service_command.rb
304
- - lib/foreman_maintain/cli/transform_clamp_options.rb
305
- - lib/foreman_maintain/cli/upgrade_command.rb
306
- - lib/foreman_maintain/concerns/base_database.rb
307
- - lib/foreman_maintain/concerns/directory_marker.rb
308
- - lib/foreman_maintain/concerns/downstream.rb
309
- - lib/foreman_maintain/concerns/finders.rb
310
- - lib/foreman_maintain/concerns/hammer.rb
311
- - lib/foreman_maintain/concerns/logger.rb
312
- - lib/foreman_maintain/concerns/metadata.rb
313
- - lib/foreman_maintain/concerns/reporter.rb
314
- - lib/foreman_maintain/concerns/scenario_metadata.rb
315
- - lib/foreman_maintain/concerns/system_helpers.rb
316
- - lib/foreman_maintain/concerns/system_service.rb
317
- - lib/foreman_maintain/config.rb
318
- - lib/foreman_maintain/context.rb
319
- - lib/foreman_maintain/core_ext.rb
320
- - lib/foreman_maintain/csv_parser.rb
321
- - lib/foreman_maintain/dependency_graph.rb
322
- - lib/foreman_maintain/detector.rb
323
- - lib/foreman_maintain/error.rb
324
- - lib/foreman_maintain/executable.rb
325
- - lib/foreman_maintain/feature.rb
326
- - lib/foreman_maintain/package_manager.rb
327
- - lib/foreman_maintain/package_manager/base.rb
328
- - lib/foreman_maintain/package_manager/dnf.rb
329
- - lib/foreman_maintain/package_manager/yum.rb
330
- - lib/foreman_maintain/param.rb
331
- - lib/foreman_maintain/procedure.rb
332
- - lib/foreman_maintain/reporter.rb
333
- - lib/foreman_maintain/reporter/cli_reporter.rb
334
- - lib/foreman_maintain/runner.rb
335
- - lib/foreman_maintain/runner/execution.rb
336
- - lib/foreman_maintain/runner/stored_execution.rb
337
- - lib/foreman_maintain/scenario.rb
338
- - lib/foreman_maintain/top_level_modules.rb
339
- - lib/foreman_maintain/upgrade_runner.rb
340
- - lib/foreman_maintain/utils.rb
341
- - lib/foreman_maintain/utils/backup.rb
342
- - lib/foreman_maintain/utils/bash.rb
343
- - lib/foreman_maintain/utils/command_runner.rb
344
- - lib/foreman_maintain/utils/curl_response.rb
345
- - lib/foreman_maintain/utils/disk.rb
346
- - lib/foreman_maintain/utils/disk/device.rb
347
- - lib/foreman_maintain/utils/disk/io_device.rb
348
- - lib/foreman_maintain/utils/disk/nil_device.rb
349
- - lib/foreman_maintain/utils/disk/stats.rb
350
- - lib/foreman_maintain/utils/facter.rb
351
- - lib/foreman_maintain/utils/hash_tools.rb
352
- - lib/foreman_maintain/utils/mongo_core.rb
353
- - lib/foreman_maintain/utils/response.rb
354
- - lib/foreman_maintain/utils/service.rb
355
- - lib/foreman_maintain/utils/service/abstract.rb
356
- - lib/foreman_maintain/utils/service/remote_db.rb
357
- - lib/foreman_maintain/utils/service/systemd.rb
358
- - lib/foreman_maintain/utils/system_helpers.rb
359
- - lib/foreman_maintain/version.rb
360
- - lib/foreman_maintain/yaml_storage.rb
359
+ - LICENSE
360
+ - README.md
361
361
  homepage: https://github.com/theforeman/foreman_maintain
362
362
  licenses:
363
363
  - GPL-3.0
@@ -368,17 +368,17 @@ require_paths:
368
368
  - lib
369
369
  required_ruby_version: !ruby/object:Gem::Requirement
370
370
  requirements:
371
- - - ">="
371
+ - - '>='
372
372
  - !ruby/object:Gem::Version
373
373
  version: '0'
374
374
  required_rubygems_version: !ruby/object:Gem::Requirement
375
375
  requirements:
376
- - - ">="
376
+ - - '>='
377
377
  - !ruby/object:Gem::Version
378
378
  version: '0'
379
379
  requirements: []
380
380
  rubyforge_project:
381
- rubygems_version: 2.7.10
381
+ rubygems_version: 2.0.14.1
382
382
  signing_key:
383
383
  specification_version: 4
384
384
  summary: Foreman maintenance tool belt
@@ -1,33 +0,0 @@
1
- class Features::PackageManager < ForemanMaintain::Feature
2
- metadata do
3
- label :package_manager
4
- end
5
-
6
- extend Forwardable
7
- def_delegators :manager, :lock_versions, :unlock_versions,
8
- :installed?, :find_installed_package, :install, :update,
9
- :version_locking_enabled?, :install_version_locking,
10
- :versions_locked?, :clean_cache, :remove, :files_not_owned_by_package
11
-
12
- def self.type
13
- @type ||= %w[dnf yum apt].find { |manager| command_present?(manager) }
14
- end
15
-
16
- def type
17
- self.class.type
18
- end
19
-
20
- def manager
21
- @manager ||= case type
22
- when 'dnf'
23
- ForemanMaintain::PackageManager::Dnf.new
24
- when 'yum'
25
- ForemanMaintain::PackageManager::Yum.new
26
- else
27
- raise 'No supported package manager was found'
28
- end
29
- end
30
-
31
- # TODO: DEB grep ^Package: /var/lib/apt/lists/deb.theforeman.org_dists_*
32
- # TODO DEB apt-mark hold/unhold <package>
33
- end