foreman_maintain 0.1.5 → 0.1.6

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
  SHA1:
3
- metadata.gz: 85dd75e0de03c6b2c872e728ba047ecde645148d
4
- data.tar.gz: 93d8cc2e2381e5c890c62f114b2a3f3ad9c9b460
3
+ metadata.gz: 4ba0d1619770cae069e142f20a49d40591000521
4
+ data.tar.gz: f3ffcb2023e8070b5dc5764f9496654a32c65687
5
5
  SHA512:
6
- metadata.gz: 8b307b932f52b3b9686ecca55c5904d4b901f71429e0fc485ddce9cff419026aaa96393b413dce528001c74ed0e11f03ba7ab73c280f66663dbad6b03299ef80
7
- data.tar.gz: bcc8b92ff358e1e5c3c4c129278af67566dfc09681e7d338330a20718a955acd5fce84b939b40738beb0f3f0fb81990632aec7bb3e37a600ea5cdfcecf9ed71e
6
+ metadata.gz: 2f14ff8e193e7f421f7d7e9c3183013abdc7b83d3d7eda31faa09502f561a3cb7a9069afd1301a3d59d5f48f2dadda36929ae5d4515d950d2b525ff1e317406b
7
+ data.tar.gz: c9c14e9df45fcfcadf4a2a3ea2e710b30edd698f9c4cc19c1f0b52b3690c4ffaf23b9b9d6749b8e091cdca3fb8e4a167a84781ec857c287e25c5f8afed479bf1
@@ -2,6 +2,9 @@ module Checks::Repositories
2
2
  class Validate < ForemanMaintain::Check
3
3
  metadata do
4
4
  description 'Validate availability of repositories'
5
+ preparation_steps do
6
+ Procedures::Packages::Install.new(:packages => [ForemanMaintain::Utils::Facter.package])
7
+ end
5
8
 
6
9
  confine do
7
10
  feature(:downstream)
@@ -46,17 +46,32 @@ class Features::Downstream < ForemanMaintain::Feature
46
46
 
47
47
  def rh_repos(sat_version)
48
48
  sat_version = version(sat_version)
49
- rh_version_major = execute!('facter operatingsystemmajrelease')
50
- sat_version_full = "#{sat_version.major}.#{sat_version.minor}"
49
+ rh_version_major = ForemanMaintain::Utils::Facter.os_major_release
50
+
51
+ rh_repos = main_rh_repos(rh_version_major)
52
+
53
+ rh_repos.concat(sat_and_tools_repos(rh_version_major, sat_version))
54
+
55
+ if current_minor_version == '6.3' && sat_version.to_s != '6.4' && (
56
+ feature(:puppet_server) && feature(:puppet_server).puppet_version.major == 4)
57
+ rh_repos << "rhel-#{rh_version_major}-server-satellite-tools-6.3-puppet4-rpms"
58
+ end
51
59
 
60
+ rh_repos
61
+ end
62
+
63
+ def sat_and_tools_repos(rh_version_major, sat_version)
64
+ sat_version_full = "#{sat_version.major}.#{sat_version.minor}"
52
65
  sat_repo_id = "rhel-#{rh_version_major}-server-satellite-#{sat_version_full}-rpms"
53
66
  sat_tools_repo_id = "rhel-#{rh_version_major}-server-satellite-tools-#{sat_version_full}-rpms"
54
67
 
68
+ [sat_repo_id, sat_tools_repo_id]
69
+ end
70
+
71
+ def main_rh_repos(rh_version_major)
55
72
  ["rhel-#{rh_version_major}-server-rpms",
56
73
  "rhel-server-rhscl-#{rh_version_major}-rpms",
57
- "rhel-#{rh_version_major}-server-satellite-maintenance-6-rpms",
58
- sat_tools_repo_id,
59
- sat_repo_id]
74
+ "rhel-#{rh_version_major}-server-satellite-maintenance-6-rpms"]
60
75
  end
61
76
 
62
77
  def version_from_source
@@ -0,0 +1,20 @@
1
+ class Features::PuppetServer < ForemanMaintain::Feature
2
+ metadata do
3
+ label :puppet_server
4
+
5
+ # We only check puppetserver and not puppet-server, as puppet-server
6
+ # is a part of httpd and relies on httpd service to restart, therefore
7
+ # not requiring a separate service to restart
8
+ confine do
9
+ find_package('puppetserver') || find_package('puppet')
10
+ end
11
+ end
12
+
13
+ def services
14
+ find_package('puppetserver') ? { 'puppetserver' => 30 } : {}
15
+ end
16
+
17
+ def puppet_version
18
+ version(execute!('puppet --version'))
19
+ end
20
+ end
@@ -2,6 +2,10 @@ module Procedures::Repositories
2
2
  class Setup < ForemanMaintain::Procedure
3
3
  metadata do
4
4
  description 'Setup repositories'
5
+ preparation_steps do
6
+ Procedures::Packages::Install.new(:packages => [ForemanMaintain::Utils::Facter.package])
7
+ end
8
+
5
9
  confine do
6
10
  feature(:downstream) || feature(:upstream)
7
11
  end
@@ -0,0 +1,21 @@
1
+ module ForemanMaintain::Utils
2
+ module Facter
3
+ include ForemanMaintain::Concerns::SystemHelpers
4
+
5
+ FACTER_FILES = %w[/usr/bin/facter /opt/puppetlabs/bin/facter].freeze
6
+
7
+ def self.package
8
+ puppet_version = version(execute!('puppet --version'))
9
+
10
+ puppet_version.major >= 4 ? 'puppet-agent' : 'facter'
11
+ end
12
+
13
+ def self.path
14
+ FACTER_FILES.find { |path| File.exist?(path) }
15
+ end
16
+
17
+ def self.os_major_release
18
+ execute!("#{path} operatingsystemmajrelease")
19
+ end
20
+ end
21
+ end
@@ -2,3 +2,4 @@ require 'foreman_maintain/utils/command_runner'
2
2
  require 'foreman_maintain/utils/disk'
3
3
  require 'foreman_maintain/utils/hammer'
4
4
  require 'foreman_maintain/utils/curl_response'
5
+ require 'foreman_maintain/utils/facter'
@@ -1,3 +1,3 @@
1
1
  module ForemanMaintain
2
- VERSION = '0.1.5'.freeze
2
+ VERSION = '0.1.6'.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.1.5
4
+ version: 0.1.6
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: 2018-03-23 00:00:00.000000000 Z
11
+ date: 2018-06-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: clamp
@@ -135,6 +135,7 @@ files:
135
135
  - definitions/features/katello.rb
136
136
  - definitions/features/katello_service.rb
137
137
  - definitions/features/pulp.rb
138
+ - definitions/features/puppet_server.rb
138
139
  - definitions/features/sync_plans.rb
139
140
  - definitions/features/upstream.rb
140
141
  - definitions/procedures/candlepin/delete_orphaned_records_from_env_content.rb
@@ -210,6 +211,7 @@ files:
210
211
  - lib/foreman_maintain/utils/disk/io/file_system.rb
211
212
  - lib/foreman_maintain/utils/disk/nil_device.rb
212
213
  - lib/foreman_maintain/utils/disk/stats.rb
214
+ - lib/foreman_maintain/utils/facter.rb
213
215
  - lib/foreman_maintain/utils/hammer.rb
214
216
  - lib/foreman_maintain/version.rb
215
217
  - lib/foreman_maintain/yaml_storage.rb