foreman_maintain 0.4.2 → 0.4.3

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
2
  SHA256:
3
- metadata.gz: 41f6663257db0cfdff24426812ca56a64a53105c6192b5abf5a2dba70e934fb5
4
- data.tar.gz: a745621e9499e97d3c39e7d4d86f833b31c96e762d34d7a2def668e59cb555a8
3
+ metadata.gz: 82c1f6b6412effc3fdbc0c76d5940141c6bcedbe8a24f2201297c586464ee26b
4
+ data.tar.gz: 88e0dc3579e6a1dee0e371f13aa594e76bcfc871f1914430888b86db21e86b37
5
5
  SHA512:
6
- metadata.gz: c78e8bfc7d0ef67cbaf4d79c319b37175b4148d2050625894ac9a3e5186795b08ffe7f696472f110f3260ebac0381dd3407df55ce2cb92704751d00c4bed40c2
7
- data.tar.gz: 0bfaef53cbc4ccf91f1f841365bdbe0beb6256104f3e6c704f6e0b8554c6921d2b7e3cd5c4ce0e5c7c94d6fe71e6e51525a4d47c38d14f1ff8428045a8fd15ae
6
+ metadata.gz: d9ea4129e24dd5864586da1e5dcec6354a60090e03e95ff9a9f73a98b10a6ba7c60285f50a97ca2b7ee8faaac322a02c8c2064db635b3dc464c9cd4e7e5d1e2c
7
+ data.tar.gz: 67945a1cf054e940949777713d97cd82902516a6fd898a8ae50e4f931589642f2498c2c42da2b2e4f6be60fbfc0613f6b34176d19aa945b7ba4af253e6f10aaf
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Foreman Maintenance [![Build Status](https://travis-ci.org/theforeman/foreman_maintain.svg?branch=master)](https://travis-ci.org/theforeman/foreman_maintain) <a href="https://codeclimate.com/github/theforeman/foreman_maintain"><img src="https://codeclimate.com/github/theforeman/foreman_maintain/badges/gpa.svg" /></a>
2
2
 
3
- `foreman_maintain` aims to provide various features that helps keeping the
3
+ `foreman_maintain` aims to provide various features that helps keep the
4
4
  Foreman/Satellite up and running. It supports multiple versions and subparts
5
5
  of the Foreman infrastructure, including server or smart proxy and is smart
6
6
  enough to provide the right tools for the specific version.
@@ -425,7 +425,7 @@ may have changed which has impact on foreman-maintain CLI options and subcommand
425
425
 
426
426
  #### Available value types
427
427
 
428
- Completion of values is dependent on CLI option and prameter settings, e.g.:
428
+ Completion of values is dependent on CLI option and parameter settings, e.g.:
429
429
 
430
430
  ```ruby
431
431
  parameter 'BACKUP_DIR', 'Path to backup dir', :completion => { :type => :directory }
@@ -0,0 +1,21 @@
1
+ class Checks::YumExclude < ForemanMaintain::Check
2
+ metadata do
3
+ label :check_yum_exclude_list
4
+ description 'Check if yum exclude list is configured'
5
+ tags :pre_upgrade
6
+ end
7
+
8
+ EXCLUDE_SET_RE = /^exclude\s*=\s*\S+.*$/
9
+
10
+ def run
11
+ grep_result = grep_yum_exclude
12
+ assert(!grep_result.match(EXCLUDE_SET_RE),
13
+ 'The /etc/yum.conf has exclude list configured as below,'\
14
+ "\n #{grep_result}"\
15
+ "\nUnset this as it can cause yum update or upgrade failures !")
16
+ end
17
+
18
+ def grep_yum_exclude
19
+ execute_with_status('grep -w exclude /etc/yum.conf')[1]
20
+ end
21
+ end
@@ -15,6 +15,12 @@ class Features::ForemanDatabase < ForemanMaintain::Feature
15
15
  @configuration || load_configuration
16
16
  end
17
17
 
18
+ def config_files
19
+ [
20
+ '/var/lib/pgsql/data/postgresql.conf'
21
+ ]
22
+ end
23
+
18
24
  def services
19
25
  [
20
26
  system_service('postgresql', 10, :component => 'foreman',
@@ -8,7 +8,7 @@ class Features::PackageManager < ForemanMaintain::Feature
8
8
  :installed?, :find_installed_package, :install, :update,
9
9
  :version_locking_enabled?, :configure_version_locking,
10
10
  :foreman_related_packages, :version_locking_packages,
11
- :versions_locked?, :clean_cache
11
+ :versions_locked?, :clean_cache, :remove
12
12
 
13
13
  def self.type
14
14
  @type ||= %w[dnf yum apt].find { |manager| command_present?(manager) }
@@ -0,0 +1,12 @@
1
+ module Procedures::Foreman
2
+ class ApipieCache < ForemanMaintain::Procedure
3
+ metadata do
4
+ advanced_run false
5
+ description 'Regenerate Apipie cache'
6
+ end
7
+
8
+ def run
9
+ execute!('foreman-rake apipie:cache')
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,18 @@
1
+ module Procedures::ForemanDocker
2
+ class RemoveForemanDocker < ForemanMaintain::Procedure
3
+ metadata do
4
+ advanced_run false
5
+ description 'Drop foreman_docker plugin'
6
+ end
7
+
8
+ def docker_package
9
+ 'tfm-rubygem-foreman_docker'
10
+ end
11
+
12
+ def run
13
+ return unless execute?("rpm -q #{docker_package}")
14
+ execute!('foreman-rake foreman_docker:cleanup')
15
+ packages_action(:remove, [docker_package], :assumeyes => true)
16
+ end
17
+ end
18
+ end
@@ -58,6 +58,8 @@ module Scenarios::Satellite_6_6
58
58
  end
59
59
 
60
60
  def compose
61
+ add_step(Procedures::ForemanDocker::RemoveForemanDocker.new)
62
+ add_step(Procedures::Foreman::ApipieCache.new)
61
63
  add_step(Procedures::Service::Start.new)
62
64
  add_steps(find_procedures(:post_migrations))
63
65
  end
@@ -112,6 +112,8 @@ module ForemanMaintain
112
112
  feature(:package_manager).install(packages, :assumeyes => options[:assumeyes])
113
113
  when :update
114
114
  feature(:package_manager).update(packages, :assumeyes => options[:assumeyes])
115
+ when :remove
116
+ feature(:package_manager).remove(packages, :assumeyes => options[:assumeyes])
115
117
  else
116
118
  raise ArgumentError, "Unexpected action #{action} expected #{expected_actions.inspect}"
117
119
  end
@@ -36,6 +36,11 @@ module ForemanMaintain::PackageManager
36
36
  raise NotImplementedError
37
37
  end
38
38
 
39
+ # remove package
40
+ def remove(packages, assumeyes: false)
41
+ raise NotImplementedError
42
+ end
43
+
39
44
  # update package
40
45
  def update(packages = [], assumeyes: false)
41
46
  raise NotImplementedError
@@ -90,6 +90,10 @@ module ForemanMaintain::PackageManager
90
90
  yum_action('install', packages, :assumeyes => assumeyes)
91
91
  end
92
92
 
93
+ def remove(packages, assumeyes: false)
94
+ yum_action('remove', packages, :assumeyes => assumeyes)
95
+ end
96
+
93
97
  def update(packages = [], assumeyes: false)
94
98
  yum_action('update', packages, :assumeyes => assumeyes)
95
99
  end
@@ -1,3 +1,3 @@
1
1
  module ForemanMaintain
2
- VERSION = '0.4.2'.freeze
2
+ VERSION = '0.4.3'.freeze
3
3
  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: 0.4.2
4
+ version: 0.4.3
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-05-20 00:00:00.000000000 Z
11
+ date: 2019-06-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: clamp
@@ -152,6 +152,7 @@ files:
152
152
  - definitions/checks/services_up.rb
153
153
  - definitions/checks/system_registration.rb
154
154
  - definitions/checks/version_locking_enabled.rb
155
+ - definitions/checks/yum_exclude.rb
155
156
  - definitions/features/candlepin.rb
156
157
  - definitions/features/candlepin_database.rb
157
158
  - definitions/features/cron.rb
@@ -204,7 +205,9 @@ files:
204
205
  - definitions/procedures/candlepin/delete_orphaned_records_from_env_content.rb
205
206
  - definitions/procedures/crond/start.rb
206
207
  - definitions/procedures/crond/stop.rb
208
+ - definitions/procedures/foreman/apipie_cache.rb
207
209
  - definitions/procedures/foreman/fix_corrupted_roles.rb
210
+ - definitions/procedures/foreman_docker/remove_foreman_docker.rb
208
211
  - definitions/procedures/foreman_openscap/invalid_report_associations.rb
209
212
  - definitions/procedures/foreman_tasks/delete.rb
210
213
  - definitions/procedures/foreman_tasks/fetch_tasks_status.rb