foreman_maintain 0.5.0 → 0.5.1

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 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