foreman_openscap 9.0.4 → 9.0.5

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: db9d5beb1a4f3e676150bd6c7982feccee708f920dd68cb422b0736824a10cee
4
- data.tar.gz: cb3c657f011aac5d73fc6595a5b9abed49033928223a53974c20f69cd8f97eed
3
+ metadata.gz: '067348f069de3a505ff49bf8bddfb32ac0119374646235e546e4142442312fbc'
4
+ data.tar.gz: 5e4a33a0523ce68282648384180523e45b091eb8b4ef9a043fa3b13469d6b59f
5
5
  SHA512:
6
- metadata.gz: 4a7f09d5b4102cb8d1b95b2ed9e6b2005b84e5a28a9896411be2655bc073d5f4cb59b55096a42072e3450e685753534bdf0afcf7a91f4f567e412269092593a5
7
- data.tar.gz: 9fddaa152d91a99f7efaa986ffdaf64926c56378f170ea2a82213648c10c163e97c081f122100f1cb823537f8ad540623dc1bfe54f355817f198948ba299dc17
6
+ metadata.gz: 758ddac232cf116aa8e8365d8241008f12a2daf1d0a98cf5070f50df913587659c7446b6145372f22e6fd5c038e8956a04d233c550458b37d14bbfba20cfbfdb
7
+ data.tar.gz: c60ae37836fc25b7651453ea37d1714543ca335faf9047d723ff0444fbfe493e571444e337e290425912eb450658d0504d21cceb1e5b35f9bad6f04c86d7bbd4
@@ -1,5 +1,3 @@
1
- require 'foreman_openscap/bulk_upload'
2
-
3
1
  module Api::V2
4
2
  module Compliance
5
3
  class ScapContentsController < ::Api::V2::BaseController
@@ -7,21 +7,28 @@ module ForemanOpenscap
7
7
  @result = OpenStruct.new(:errors => [], :results => [])
8
8
  end
9
9
 
10
- def files_from_guide
11
- `rpm -ql scap-security-guide | grep ds.xml`.split
10
+ def security_guide_packages
11
+ %w(scap-security-guide)
12
12
  end
13
13
 
14
- def scap_guide_installed?
15
- `rpm -qa | grep scap-security-guide`.present?
14
+ def files_from_guide(package)
15
+ `rpm -ql #{package} | grep ds.xml`.split
16
+ end
17
+
18
+ def package_installed?(package)
19
+ `rpm -qa | grep #{package}`.present?
16
20
  end
17
21
 
18
22
  def upload_from_scap_guide
19
- unless scap_guide_installed?
20
- @result.errors.push(_("Can't find scap-security-guide RPM, are you sure it is installed on your server?"))
23
+ package = security_guide_packages.find { |p| package_installed? p }
24
+ unless package
25
+ joined_packages = security_guide_packages.join(', ')
26
+ msg = _("Can't find %{packages} RPM(s), are you sure it is installed on your server?")
27
+ @result.errors.push(msg % {packages: joined_packages})
21
28
  return @result
22
29
  end
23
30
 
24
- upload_from_files(files_from_guide, true)
31
+ upload_from_files(files_from_guide(package), true)
25
32
  end
26
33
 
27
34
  def upload_from_files(files_array, from_scap_guide = false)
@@ -1,3 +1,3 @@
1
1
  module ForemanOpenscap
2
- VERSION = "9.0.4".freeze
2
+ VERSION = "9.0.5".freeze
3
3
  end
@@ -1,6 +1,5 @@
1
1
  # Tasks
2
2
  namespace :foreman_openscap do
3
- require 'foreman_openscap/bulk_upload'
4
3
  require 'foreman_openscap/message_cleaner'
5
4
 
6
5
  namespace :bulk_upload do
@@ -2,7 +2,6 @@ require 'test_plugin_helper'
2
2
 
3
3
  class BulkUploadTest < ActiveSupport::TestCase
4
4
  setup do
5
- require 'foreman_openscap/bulk_upload'
6
5
  ForemanOpenscap::ScapContent.all.map(&:destroy)
7
6
  end
8
7
 
@@ -48,14 +47,14 @@ class BulkUploadTest < ActiveSupport::TestCase
48
47
 
49
48
  test 'should handle case when scap security guide is not installed' do
50
49
  upload = ForemanOpenscap::BulkUpload.new
51
- upload.stubs(:scap_guide_installed?).returns(false)
50
+ upload.stubs(:package_installed?).returns(false)
52
51
  res = upload.upload_from_scap_guide
53
- assert_equal "Can't find scap-security-guide RPM, are you sure it is installed on your server?", res.errors.first
52
+ assert_equal "Can't find scap-security-guide RPM(s), are you sure it is installed on your server?", res.errors.first
54
53
  end
55
54
 
56
55
  test 'should upload files from guide' do
57
56
  upload = ForemanOpenscap::BulkUpload.new
58
- upload.stubs(:scap_guide_installed?).returns(true)
57
+ upload.stubs(:package_installed?).returns(true)
59
58
  upload.stubs(:files_from_guide).returns(["#{ForemanOpenscap::Engine.root}/test/files/scap_contents/ssg-fedora-ds.xml"])
60
59
  assert_difference('ForemanOpenscap::ScapContent.count', 1) do
61
60
  upload.upload_from_scap_guide
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: foreman_openscap
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.0.4
4
+ version: 9.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - slukasik@redhat.com
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-07-30 00:00:00.000000000 Z
11
+ date: 2025-02-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -116,6 +116,7 @@ files:
116
116
  - app/models/foreman_openscap/scap_content_profile.rb
117
117
  - app/models/foreman_openscap/tailoring_file.rb
118
118
  - app/services/foreman_openscap/arf_report_status_calculator.rb
119
+ - app/services/foreman_openscap/bulk_upload.rb
119
120
  - app/services/foreman_openscap/client_config/ansible.rb
120
121
  - app/services/foreman_openscap/client_config/base.rb
121
122
  - app/services/foreman_openscap/client_config/manual.rb
@@ -286,7 +287,6 @@ files:
286
287
  - db/seeds.d/openscap_feature.rb
287
288
  - db/seeds.d/openscap_policy_notification.rb
288
289
  - lib/foreman_openscap.rb
289
- - lib/foreman_openscap/bulk_upload.rb
290
290
  - lib/foreman_openscap/data_migration.rb
291
291
  - lib/foreman_openscap/engine.rb
292
292
  - lib/foreman_openscap/helper.rb
@@ -441,7 +441,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
441
441
  - !ruby/object:Gem::Version
442
442
  version: '0'
443
443
  requirements: []
444
- rubygems_version: 3.3.26
444
+ rubygems_version: 3.3.27
445
445
  signing_key:
446
446
  specification_version: 4
447
447
  summary: Foreman plug-in for displaying OpenSCAP audit reports