Class: ForemanOpenscap::OvalStatus
- Inherits:
-
HostStatus::Status
- Object
- HostStatus::Status
- ForemanOpenscap::OvalStatus
- Defined in:
- app/models/foreman_openscap/oval_status.rb
Constant Summary collapse
- PATCHED =
0
- VULNERABLE =
1
- PATCH_AVAILABLE =
2
Class Method Summary collapse
Instance Method Summary collapse
- #relevant?(options = {}) ⇒ Boolean
- #to_global(options = {}) ⇒ Object
- #to_label(options = {}) ⇒ Object
- #to_status(options = {}) ⇒ Object
Class Method Details
.status_name ⇒ Object
7 8 9 |
# File 'app/models/foreman_openscap/oval_status.rb', line 7 def self.status_name N_('OVAL scan') end |
Instance Method Details
#relevant?(options = {}) ⇒ Boolean
35 36 37 |
# File 'app/models/foreman_openscap/oval_status.rb', line 35 def relevant?( = {}) host.combined_oval_policies.any? end |
#to_global(options = {}) ⇒ Object
24 25 26 27 28 29 30 31 32 33 |
# File 'app/models/foreman_openscap/oval_status.rb', line 24 def to_global( = {}) case to_status when PATCHED ::HostStatus::Global::OK when VULNERABLE ::HostStatus::Global::WARN when PATCH_AVAILABLE ::HostStatus::Global::ERROR end end |
#to_label(options = {}) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'app/models/foreman_openscap/oval_status.rb', line 11 def to_label( = {}) case to_status when PATCHED N_('No Vulnerabilities found') when VULNERABLE N_("%s vulnerabilities found") % host.cves_without_errata.count when PATCH_AVAILABLE N_("%s vulnerabilities with available patch found") % host.cves_with_errata.count else N_('Unknown OVAL status') end end |
#to_status(options = {}) ⇒ Object
39 40 41 42 43 |
# File 'app/models/foreman_openscap/oval_status.rb', line 39 def to_status( = {}) return PATCH_AVAILABLE if host.cves_with_errata.any? return VULNERABLE if host.cves_without_errata.any? PATCHED end |