hammer_cli_foreman_openscap 0.1.6 → 0.1.11

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
- SHA1:
3
- metadata.gz: 279200fb303663c4973029e17e35033f14cba0fc
4
- data.tar.gz: 7ae54e0d0f7c15eb42c22de1271363bcd3a02977
2
+ SHA256:
3
+ metadata.gz: 26f5ac7c0c6d03de357a8d903cc1f642f17748821d6f6c06011ecde5330a2bba
4
+ data.tar.gz: deb6a45e5359cff52e0b9dc2670a084c4ddde5cb884ae2cdf6052740d75b4457
5
5
  SHA512:
6
- metadata.gz: f369a7635fd37de7435c2d391b0b8b8d9f57b219d10b89fd6641ffcbbd9946ce3092fe4adb40e100ba59cb97499f1cefca0a700fdd566279df9efd759986c37f
7
- data.tar.gz: 0050bf0670d93f0a5ab2a819ae8474a094fae7abf77c71cc985b608934436759052c61785e68db68e6bccefd8c768ee77ba92201836a905cbb1ce2ed01107ae1
6
+ metadata.gz: a83f3ebe046effbab0fd17bb02e322c50bec587b2347420b19aa84376d446d95649804b359ee77fd9b10d1e32f599b36ff9a87c733d77e0e603e81c65e34311b
7
+ data.tar.gz: 8e9ecd49d0ccc090dd3a24c4b8d13edb1d50c67242f89ccf0fef54e82fb8c82c7d410f891396c518eb33fb5b40b1b30a9ce5a7cdefa9fe8661b012ab9fac5572
@@ -1,4 +1,5 @@
1
1
  require 'hammer_cli_foreman'
2
+ require 'hammer_cli_foreman/host'
2
3
  require 'hammer_cli_foreman_openscap/options/normalizers'
3
4
  require 'hammer_cli_foreman_openscap/id_resolver'
4
5
  require 'hammer_cli_foreman_openscap/commands'
@@ -6,6 +7,7 @@ require 'hammer_cli_foreman_openscap/error'
6
7
  require 'hammer_cli_foreman_openscap/exception_handler'
7
8
  require 'hammer_cli_foreman_openscap/hostgroup'
8
9
  require 'hammer_cli_foreman_openscap/host'
10
+ require 'hammer_cli_foreman_openscap/scap_content_profile'
9
11
 
10
12
  module HammerCLIForemanOpenscap
11
13
  require 'hammer_cli_foreman_openscap/version'
@@ -29,4 +31,12 @@ module HammerCLIForemanOpenscap
29
31
  HammerCLI::MainCommand.lazy_subcommand("tailoring-file", _("Manipulate Tailoring files"),
30
32
  "HammerCLIForemanOpenscap::TailoringFile",
31
33
  "hammer_cli_foreman_openscap/tailoring_file")
34
+
35
+ HammerCLI::MainCommand.lazy_subcommand("scap-content-profile", _("Manipulate Scap Content Profiles"),
36
+ "HammerCLIForemanOpenscap::ScapContentProfile",
37
+ "hammer_cli_foreman_openscap/scap_content_profile")
38
+
39
+ HammerCLIForeman::Host.lazy_subcommand(Host::PoliciesEnc.command_name, _('View policies ENC for host'),
40
+ "HammerCLIForemanOpenscap::Host::PoliciesEnc",
41
+ "hammer_cli_foreman_openscap/host")
32
42
  end
@@ -50,10 +50,11 @@ module HammerCLIForemanOpenscap
50
50
  option("--scap-file", "SCAP_FILE", description, opts, &block)
51
51
  end
52
52
 
53
- def request_params
54
- all_options['option_original_filename'] ||= self.class.declared_options.find { |opt| opt.attribute_name == "option_scap_file" }
53
+ def method_options(params)
54
+ opts = super params
55
+ opts[resource.singular_name]['original_filename'] ||= self.class.declared_options.find { |opt| opt.attribute_name == "option_scap_file" }
55
56
  .value_formatter.original_filename
56
- super
57
+ opts
57
58
  end
58
59
  end
59
60
 
@@ -87,7 +88,7 @@ module HammerCLIForemanOpenscap
87
88
  return
88
89
  end
89
90
  # get file name from header, remove leading and trailing quotes
90
- filename = response.headers[:content_disposition].match(/filename=(.*)/)[1].chop.reverse.chop.reverse
91
+ filename = response.headers[:content_disposition].match(/filename=(.*);/)[1].chop.reverse.chop.reverse
91
92
  path = option_path.dup
92
93
  path << '/' unless path.end_with? '/'
93
94
  raise HammerCLIForemanOpenscap::DownloadError.new "Cannot save file: #{path} does not exist" unless File.directory?(path)
@@ -1,2 +1,34 @@
1
1
  require 'hammer_cli_foreman/host'
2
2
  require 'hammer_cli_foreman_openscap/host_extensions'
3
+
4
+ module HammerCLIForemanOpenscap
5
+ class Host < HammerCLIForeman::Command
6
+ resource :hosts
7
+
8
+ class PoliciesEnc < HammerCLIForeman::ListCommand
9
+ command_name "policies-enc"
10
+ action :policies_enc
11
+
12
+ output do
13
+ field :id, _('Id')
14
+ field :profile_id, _('Profile Id')
15
+ field :content_path, _('Content path')
16
+ field :download_path, _('Content download path')
17
+ field :tailoring_path, _('Tailoring path')
18
+ field :tailoring_download_path, _('Tailoring download path')
19
+ field :monthday, _('Day of month')
20
+ field :hour, _('Hour')
21
+ field :minute, ('Minute')
22
+ field :month, _('Month')
23
+ field :week, _('Week')
24
+ end
25
+
26
+ def adapter
27
+ @context[:adapter] || :base
28
+ end
29
+
30
+ build_options
31
+ end
32
+ autoload_subcommands
33
+ end
34
+ end
@@ -22,6 +22,7 @@ module HammerCLIForemanOpenscap
22
22
  field :scap_content_profile_id, _("SCAP Content profile Id")
23
23
  field :tailoring_file_id, _("Tailoring file Id")
24
24
  field :tailoring_file_profile_id, _("Tailoring file profile Id")
25
+ field :deploy_by, _("Deployment option")
25
26
  HammerCLIForeman::References.taxonomies(self)
26
27
  HammerCLIForeman::References.hostgroups(self)
27
28
  end
@@ -51,6 +52,22 @@ module HammerCLIForemanOpenscap
51
52
  build_options
52
53
  end
53
54
 
55
+ class HostsCommand < HammerCLIForeman::AssociatedListSearchCommand
56
+ command_name 'hosts'
57
+ search_resource :hosts
58
+
59
+ def self.search_options_mapping
60
+ {
61
+ 'id' => 'compliance_policy_id',
62
+ 'name' => 'compliance_policy'
63
+ }
64
+ end
65
+
66
+ output HammerCLIForeman::Host::ListCommand.output_definition
67
+
68
+ build_options
69
+ end
70
+
54
71
  autoload_subcommands
55
72
  end
56
73
  end
@@ -0,0 +1,29 @@
1
+ module HammerCLIForemanOpenscap
2
+ class ScapContentProfile < HammerCLIForeman::Command
3
+ resource :scap_content_profiles
4
+
5
+ class ListCommand < HammerCLIForeman::ListCommand
6
+ output do
7
+ field :id, _("Id")
8
+ field :title, _("Title")
9
+ field :profile_id, _("Profile Id")
10
+ from :scap_content do
11
+ field :id, _("Scap Content Id")
12
+ field :title, _("Scap Content Title")
13
+ end
14
+ from :tailoring_file do
15
+ field :id, _("Tailoring File Id")
16
+ field :name, _("Tailoring File Name")
17
+ end
18
+ end
19
+
20
+ def adapter
21
+ @context[:adapter] || :base
22
+ end
23
+
24
+ build_options
25
+ end
26
+
27
+ autoload_subcommands
28
+ end
29
+ end
@@ -1,5 +1,5 @@
1
1
  module HammerCLIForemanOpenscap
2
2
  def self.version
3
- @version ||= Gem::Version.new '0.1.6'
3
+ @version ||= Gem::Version.new '0.1.11'
4
4
  end
5
5
  end
@@ -4,12 +4,19 @@
4
4
  def self.arf
5
5
  {
6
6
  :id => 1,
7
- :host => "somewhere.example.com",
7
+ :host => {
8
+ :name => "somewhere.example.com"
9
+ },
8
10
  :reported_at => "1916-06-08",
9
11
  :passed => 24,
10
12
  :failed => 25,
11
13
  :othered => 26,
12
- :opeancap_proxy_name => "scap_proxy.example.com"
14
+ :openscap_proxy_name => {
15
+ :name => "scap_proxy.example.com"
16
+ },
17
+ :policy => {
18
+ :name => "strict policy"
19
+ }
13
20
  }
14
21
  end
15
22
 
@@ -12,9 +12,9 @@ describe 'scap content' do
12
12
  expected_result = CommandExpectation.new
13
13
  expected_result.expected_err =
14
14
  ['Could not download the SCAP content file:',
15
- ' Error: Option --path is required',
15
+ ' Error: Option --path is required.',
16
16
  ' ',
17
- " See: 'hammer scap-content download --help'",
17
+ " See: 'hammer scap-content download --help'.",
18
18
  ''].join("\n")
19
19
 
20
20
  expected_result.expected_exit_code = HammerCLI::EX_USAGE
@@ -11,9 +11,7 @@ describe 'tailoring file' do
11
11
 
12
12
  expected_result = CommandExpectation.new
13
13
  expected_result.expected_err =
14
- ['Failed to create Tailoring file:',
15
- " Missing arguments for 'tailoring_file[scap_file]'",
16
- ''].join("\n")
14
+ "Failed to create Tailoring file:\n Missing arguments for '--scap-file'.\n"
17
15
  expected_result.expected_exit_code = HammerCLI::EX_USAGE
18
16
 
19
17
  api_expects_no_call
@@ -45,9 +43,9 @@ describe 'tailoring file' do
45
43
  expected_result = CommandExpectation.new
46
44
  expected_result.expected_err =
47
45
  ['Could not download the Tailoring file:',
48
- ' Error: Option --path is required',
46
+ ' Error: Option --path is required.',
49
47
  ' ',
50
- " See: 'hammer tailoring-file download --help'",
48
+ " See: 'hammer tailoring-file download --help'.",
51
49
  ''].join("\n")
52
50
 
53
51
  expected_result.expected_exit_code = HammerCLI::EX_USAGE
@@ -4,7 +4,7 @@ FOREMAN_OPENSCAP_VERSION = Gem::Version.new(ENV['TEST_API_VERSION'])
4
4
  require 'minitest/autorun'
5
5
  require 'minitest/spec'
6
6
  require "minitest-spec-context"
7
- require "mocha/setup"
7
+ require "mocha/minitest"
8
8
  require 'hammer_cli'
9
9
 
10
10
  if HammerCLI.context[:api_connection]
metadata CHANGED
@@ -1,29 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hammer_cli_foreman_openscap
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Foreman team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-04-06 00:00:00.000000000 Z
11
+ date: 2020-07-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: hammer_cli_foreman
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0.6'
19
+ version: '0.19'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '3.0'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '0.19'
30
+ - - "<"
25
31
  - !ruby/object:Gem::Version
26
- version: '0.6'
32
+ version: '3.0'
27
33
  description:
28
34
  email:
29
35
  executables: []
@@ -47,6 +53,7 @@ files:
47
53
  - lib/hammer_cli_foreman_openscap/options/normalizers.rb
48
54
  - lib/hammer_cli_foreman_openscap/policy.rb
49
55
  - lib/hammer_cli_foreman_openscap/scap_content.rb
56
+ - lib/hammer_cli_foreman_openscap/scap_content_profile.rb
50
57
  - lib/hammer_cli_foreman_openscap/tailoring_file.rb
51
58
  - lib/hammer_cli_foreman_openscap/version.rb
52
59
  - locale/Makefile
@@ -95,23 +102,22 @@ required_rubygems_version: !ruby/object:Gem::Requirement
95
102
  - !ruby/object:Gem::Version
96
103
  version: '0'
97
104
  requirements: []
98
- rubyforge_project:
99
- rubygems_version: 2.6.8
105
+ rubygems_version: 3.1.2
100
106
  signing_key:
101
107
  specification_version: 4
102
108
  summary: Foreman OpenSCAP commands for Hammer
103
109
  test_files:
104
- - test/unit/scap_content_test.rb
105
- - test/unit/tailoring_file_test.rb
106
- - test/unit/test_helper.rb
107
- - test/unit/policy_test.rb
108
- - test/unit/arf_report_test.rb
109
- - test/test_helper.rb
110
- - test/functional/scap_content_test.rb
111
- - test/functional/tailoring_file_test.rb
112
- - test/functional/test_helper.rb
113
- - test/data/1.14/foreman_api.json
110
+ - test/compliance_resource_mock.rb
114
111
  - test/data/1.11/foreman_api.json
112
+ - test/data/1.14/foreman_api.json
115
113
  - test/data/1.15/foreman_api.json
116
114
  - test/data/tailoring.xml
117
- - test/compliance_resource_mock.rb
115
+ - test/functional/scap_content_test.rb
116
+ - test/functional/tailoring_file_test.rb
117
+ - test/functional/test_helper.rb
118
+ - test/test_helper.rb
119
+ - test/unit/arf_report_test.rb
120
+ - test/unit/policy_test.rb
121
+ - test/unit/scap_content_test.rb
122
+ - test/unit/tailoring_file_test.rb
123
+ - test/unit/test_helper.rb