foreman_patch 1.1.1 → 1.1.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +0 -6
  3. data/app/controllers/foreman_patch/api/v2/invocations_controller.rb +23 -1
  4. data/app/lib/actions/foreman_patch/cycle/initiate.rb +6 -1
  5. data/app/lib/actions/foreman_patch/invocation/patch.rb +6 -2
  6. data/app/lib/actions/foreman_patch/invocation/wait_for_host.rb +9 -16
  7. data/app/lib/actions/foreman_patch/window/patch.rb +4 -4
  8. data/app/models/foreman_patch/invocation.rb +6 -0
  9. data/app/models/foreman_patch/plan.rb +1 -1
  10. data/app/models/foreman_patch/round.rb +9 -26
  11. data/app/models/foreman_patch/window.rb +1 -1
  12. data/app/views/foreman_patch/api/v2/rounds/base.json.rabl +1 -1
  13. data/app/views/foreman_patch/api/v2/rounds/status.json.rabl +2 -8
  14. data/app/views/templates/ensure_services.erb +7 -4
  15. data/config/api_routes.rb +7 -1
  16. data/lib/foreman_patch/version.rb +1 -1
  17. data/lib/foreman_patch.rb +3 -2
  18. data/webpack/components/Invocations/Invocations.js +48 -16
  19. data/webpack/components/Invocations/InvocationsPage.js +24 -1
  20. data/webpack/components/Invocations/InvocationsSelectors.js +1 -1
  21. data/webpack/components/Invocations/components/{InvocationItem.js → InvocationActions.js} +4 -16
  22. data/webpack/components/Invocations/index.js +93 -10
  23. data/webpack/components/RoundProgress/AggregateStatus.js +6 -5
  24. data/webpack/components/RoundProgress/RoundProgress.js +7 -6
  25. data/webpack/components/RoundProgress/RoundProgressSelectors.js +3 -2
  26. data/webpack/index.js +8 -0
  27. data/webpack/src/ForemanPatch.js +11 -0
  28. data/webpack/src/Router/index.js +14 -0
  29. data/webpack/src/Router/routes.js +3 -0
  30. data/webpack/src/index.js +1 -0
  31. data/webpack/src/reducers.js +7 -0
  32. metadata +12 -63
  33. data/app/lib/actions/foreman_patch/invocation/ensure_services.rb +0 -47
  34. data/app/lib/actions/foreman_patch/invocation/restart.rb +0 -101
  35. data/app/lib/actions/foreman_patch/invocation/update_packages.rb +0 -52
  36. data/app/lib/actions/helpers/failure_notification.rb +0 -20
  37. data/app/lib/actions/helpers/with_feature_action.rb +0 -102
  38. data/public/assets/foreman_patch/cycle_plans-e5667e178ba389908f5c815b24ec0ea77c340849d56bc39c5ce72bb626bd446a.scss +0 -6
  39. data/public/assets/foreman_patch/cycle_plans-e5667e178ba389908f5c815b24ec0ea77c340849d56bc39c5ce72bb626bd446a.scss.gz +0 -0
  40. data/public/assets/foreman_patch/foreman_patch-ce5805a60c0d5f896f557ff5246e5a09172043004c850b39bea54e618df1c485.css +0 -1
  41. data/public/assets/foreman_patch/foreman_patch-ce5805a60c0d5f896f557ff5246e5a09172043004c850b39bea54e618df1c485.css.gz +0 -0
  42. data/public/assets/foreman_patch/foreman_patch.json +0 -1
  43. data/public/assets/foreman_patch/plan_edit_windows-e656ba411642a7f983b51958ab30ac49c056322d19295a603cff4d5e6c71c8ed.js +0 -1
  44. data/public/assets/foreman_patch/plan_edit_windows-e656ba411642a7f983b51958ab30ac49c056322d19295a603cff4d5e6c71c8ed.js.gz +0 -0
  45. data/public/webpack/foreman_patch/bundle-200e97f4e2ad9ed413ea.css +0 -1
  46. data/public/webpack/foreman_patch/bundle-200e97f4e2ad9ed413ea.css.gz +0 -0
  47. data/public/webpack/foreman_patch/bundle-200e97f4e2ad9ed413ea.js +0 -6
  48. data/public/webpack/foreman_patch/bundle-200e97f4e2ad9ed413ea.js.gz +0 -0
  49. data/public/webpack/foreman_patch/bundle-200e97f4e2ad9ed413ea.js.map +0 -1
  50. data/public/webpack/foreman_patch/bundle-200e97f4e2ad9ed413ea.js.map.gz +0 -0
  51. data/public/webpack/foreman_patch/foreman_patch-1e4f2d5e6f040a27aa7a.css +0 -1
  52. data/public/webpack/foreman_patch/foreman_patch-1e4f2d5e6f040a27aa7a.css.gz +0 -0
  53. data/public/webpack/foreman_patch/foreman_patch-1e4f2d5e6f040a27aa7a.js +0 -6
  54. data/public/webpack/foreman_patch/foreman_patch-1e4f2d5e6f040a27aa7a.js.gz +0 -0
  55. data/public/webpack/foreman_patch/foreman_patch-1e4f2d5e6f040a27aa7a.js.map +0 -1
  56. data/public/webpack/foreman_patch/foreman_patch-1e4f2d5e6f040a27aa7a.js.map.gz +0 -0
  57. data/public/webpack/foreman_patch/manifest.json +0 -26
  58. data/public/webpack/foreman_patch/manifest.json.gz +0 -0
  59. data/public/webpack/foreman_patch/vendor-4b77c91f1e9103179596.js +0 -2
  60. data/public/webpack/foreman_patch/vendor-4b77c91f1e9103179596.js.gz +0 -0
  61. data/public/webpack/foreman_patch/vendor-4b77c91f1e9103179596.js.map +0 -1
  62. data/public/webpack/foreman_patch/vendor-4b77c91f1e9103179596.js.map.gz +0 -0
  63. /data/webpack/components/Invocations/{InvocationsPage.scss → Invocations.scss} +0 -0
@@ -1,20 +0,0 @@
1
- module Actions
2
- module Helpers
3
- module FailureNotification
4
-
5
- def send_failure_notification
6
- users = ::User.select { |user| user.receives?(:patch_invocation_failure) }.compact
7
-
8
- MailNotification[:patch_invocation_failure].deliver(
9
- users: users,
10
- host: host,
11
- output: live_output
12
- ) unless users.blank?
13
- rescue => error
14
- message = _('Unable to send patch invocation failure: %{error}') % {error: error}
15
- Rails.logger.error(message)
16
- end
17
-
18
- end
19
- end
20
- end
@@ -1,102 +0,0 @@
1
- module Actions
2
- module Helpers
3
- module WithFeatureAction
4
- include ::Actions::Helpers::WithDelegatedAction
5
-
6
- class TemplateInvocationInputValue
7
- attr_reader :template_invocation, :template_input, :value
8
-
9
- def initialize(invocation, input, value)
10
- @template_invocation = invocation
11
- @template_input = input
12
- @value = value
13
- end
14
- end
15
-
16
- class TemplateInvocation
17
- attr_reader :template, :input_values
18
-
19
- def initialize(template, **input_values)
20
- @template = template
21
-
22
- @input_values = template.template_inputs_with_foreign.map do |template_input|
23
- TemplateInvocationInputValue.new(self, template_input, input_values[template_input.name.intern])
24
- end
25
- end
26
-
27
- def effective_user
28
- if template.provider.supports_effective_user?
29
- Setting[:remote_execution_effective_user]
30
- else
31
- nil
32
- end
33
- end
34
-
35
- end
36
-
37
- def plan_feature_action(feature_name, host, **input_values)
38
- input['feature_name'] = feature_name
39
-
40
- invocation = TemplateInvocation.new(template, **input_values)
41
-
42
- provider = template.provider
43
- proxy_selector = provider.required_proxy_selector_for(template) || ::RemoteExecutionProxySelector.new
44
-
45
- proxy = proxy_selector.determine_proxy(host, template.provider_type.to_s)
46
-
47
- renderer = InputTemplateRenderer.new(template, host, invocation)
48
- script = renderer.render
49
- raise _('Failed rendering template: %s') % renderer.error_message unless script
50
-
51
- additional_options = {
52
- hostname: provider.find_ip_or_hostname(host),
53
- execution_timeout_interval: template.execution_timeout_interval,
54
- script: script,
55
- secrets: provider.secrets(host),
56
- }
57
- action_options = provider.proxy_command_options(invocation, host).merge(additional_options)
58
-
59
- plan_delegated_action(proxy, provider.proxy_action_class, action_options)
60
- end
61
-
62
- def exit_status
63
- delegated_output[:exit_status]
64
- end
65
-
66
- def feature
67
- @feature ||= ::RemoteExecutionFeature.feature(input['feature_name'])
68
- end
69
-
70
- def template
71
- @template ||= feature.job_template
72
- end
73
-
74
- def live_output
75
- continuous_output.sort!
76
- continuous_output.raw_outputs
77
- end
78
-
79
- def continuous_output_providers
80
- super << self
81
- end
82
-
83
- def fill_continuous_output(continuous_output)
84
- delegated_output.fetch('result', []).each do |raw_output|
85
- continuous_output.add_raw_output(raw_output)
86
- end
87
-
88
- final_timestamp = (continuous_output.last_timestamp || task.ended_at).to_f + 1
89
-
90
- continuous_output.add_output(_('Exit status: %s') % exit_status, 'stdout', final_timestamp) if exit_status
91
- end
92
-
93
- def feature_action
94
- delegated_action
95
- end
96
-
97
- end
98
- end
99
- end
100
-
101
-
102
-
@@ -1,6 +0,0 @@
1
- div.event {
2
- margin: 2px 10px;
3
- border: 1px solid black;
4
- border-color: #d1d1d1;
5
- padding: 2px 3px;
6
- }
@@ -1 +0,0 @@
1
- div.event{margin:2px 10px;border:1px solid black;border-color:#d1d1d1;padding:2px 3px}
@@ -1 +0,0 @@
1
- {"files":{"foreman_patch/plan_edit_windows-e656ba411642a7f983b51958ab30ac49c056322d19295a603cff4d5e6c71c8ed.js":{"logical_path":"foreman_patch/plan_edit_windows.js","mtime":"2022-11-10T10:09:15-05:00","size":144,"digest":"be5de0eef57205a38f90eda24c8f8aed707f5d30e8a5abbc3ce9f198ea55a620","integrity":"sha256-vl3g7vVyBaOPkO2iTI+K7XB/XTDopau8POnxmOpVpiA="},"foreman_patch/foreman_patch-ce5805a60c0d5f896f557ff5246e5a09172043004c850b39bea54e618df1c485.css":{"logical_path":"foreman_patch/foreman_patch.css","mtime":"2022-11-10T10:09:15-05:00","size":87,"digest":"d6fdcb3359ce0ca3edd9a493467bc366b5f2b52a0d3e2fd2b5d1dec121ef31ff","integrity":"sha256-1v3LM1nODKPt2aSTRnvDZrXytSoNPi/StdHewSHvMf8="},"foreman_patch/cycle_plans-e5667e178ba389908f5c815b24ec0ea77c340849d56bc39c5ce72bb626bd446a.scss":{"logical_path":"foreman_patch/cycle_plans.scss","mtime":"2022-11-10T10:09:15-05:00","size":106,"digest":"aa7bb2d36a98d83776b4dd9dd93431ba648b84a37478f93c445eb9bda0f84006","integrity":"sha256-qnuy02qY2Dd2tN2d2TQxumSLhKN0ePk8RF65vaD4QAY="}},"assets":{"foreman_patch/plan_edit_windows.js":"foreman_patch/plan_edit_windows-e656ba411642a7f983b51958ab30ac49c056322d19295a603cff4d5e6c71c8ed.js","foreman_patch/foreman_patch.css":"foreman_patch/foreman_patch-ce5805a60c0d5f896f557ff5246e5a09172043004c850b39bea54e618df1c485.css","foreman_patch/cycle_plans.scss":"foreman_patch/cycle_plans-e5667e178ba389908f5c815b24ec0ea77c340849d56bc39c5ce72bb626bd446a.scss"}}
@@ -1 +0,0 @@
1
- function remove_window_plan(n){$("#windowPlan"+n).remove()}function edit_window_plan(n){form=null==n?null:$("#windowPlans #windowPlanHidden"+n)}
@@ -1 +0,0 @@
1
- .pf-c-alert-group{z-index:1100!important}.ReactPasswordStrength .ReactPasswordStrength-input{width:100%;font-size:12px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:2px 30px 2px 6px;font-style:normal}.ReactPasswordStrength .ReactPasswordStrength-strength-desc{padding:2px 10px;right:-62.5%;font-size:12px;width:60%;text-align:left;font-style:normal;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}@media (max-width:991px){.ReactPasswordStrength .ReactPasswordStrength-strength-desc{right:auto;top:30px}}#password_react .form-group.has-error .ReactPasswordStrength-input{border:1px solid #c00}#password_react .is-strength-0 .ReactPasswordStrength-strength-desc{color:#a30000}#password_react .is-strength-0 .ReactPasswordStrength-strength-bar{background:#a30000}#password_react .is-strength-1 .ReactPasswordStrength-strength-desc{color:#ec7a08}#password_react .is-strength-1 .ReactPasswordStrength-strength-bar{background:#ec7a08}#password_react .is-strength-2 .ReactPasswordStrength-strength-desc{color:#f0ab00}#password_react .is-strength-2 .ReactPasswordStrength-strength-bar{background:#f0ab00}#password_react .is-strength-3 .ReactPasswordStrength-strength-desc{color:#3f9c35}#password_react .is-strength-3 .ReactPasswordStrength-strength-bar{background:#3f9c35}#password_react .is-strength-4 .ReactPasswordStrength-strength-desc{color:#1e4f18}#password_react .is-strength-4 .ReactPasswordStrength-strength-bar{background:#1e4f18}.breadcrumb-item{align-items:center}.breadcrumb-item.active{display:inline-flex;max-width:50%}.breadcrumb-item-with-icon img{margin-right:8px}.breadcrumb-bar{padding-top:20px}.breadcrumb-bar .breadcrumb-line{margin-right:-60px;margin-left:-60px}.breadcrumb-bar .breadcrumbs-list{display:block}.breadcrumb-bar .breadcrumbs-list .breadcrumb-switcher{position:relative;display:inline-block;vertical-align:middle;margin-left:10px}.breadcrumb-bar .breadcrumbs-list .breadcrumb-switcher .spinner{float:unset}.pf-c-page__header-tools-group .pf-c-context-selector__menu-search{border-bottom:0}.pf-c-page__header-tools-group .current-taxonomy-v{margin-right:2px}.pf-c-page__header-tools-group .locations_clear,.pf-c-page__header-tools-group .organizations_clear{border-bottom:var(--pf-c-context-selector__menu-search--BorderBottomWidth) solid var(--pf-c-context-selector__menu-search--BorderBottomColor)}.pf-c-page__header-tools-group .pf-c-context-selector__menu-footer>a{color:#06c}.notifications_container{position:static;margin-top:-1px;color:var(--pf-global--palette--black-1000);top:48px}.notifications_container .fa-bell,.notifications_container .fa-bell-o{color:#fff;font-size:15px;cursor:pointer}.notifications_container .fa-bell{position:relative}.notifications_container .fa-bell:after{width:0;height:0;border:4px solid #c00;padding:0;content:"";border-radius:50%;position:absolute;top:-3px;right:-3px}.notifications_container .drawer-pf{top:47px;max-height:calc(100vh - 78px);overflow:hidden;display:flex;flex-direction:column}.notifications_container .drawer-pf .drawer-pf-title{position:relative}.notifications_container .drawer-pf .panel-group{display:flex;flex-direction:column;position:static;bottom:auto;top:auto;overflow-y:auto}.notifications_container .drawer-pf .panel-group .blank-slate-pf-title{font-size:18px}.notifications_container .drawer-pf .panel-group .panel.panel-default.expanded{flex:1 1 auto;display:flex;flex-direction:column}.notifications_container .drawer-pf .panel-group .panel-collapse.in{min-height:0;overflow-y:auto}.notifications_container .drawer-pf .panel-group .panel-collapse.in .panel-body{display:block}.notifications_container .drawer-pf .panel-group .panel-collapse.in .panel-body .dropdown-menu-right{position:absolute}.notifications_container .drawer-pf .panel-group .panel-collapse.in .panel-body .dropdown-menu-right .btn-group{z-index:1}.notifications_container .drawer-pf .drawer-pf-action{padding:10px 0;position:relative;position:sticky;position:-webkit-sticky;position:-moz-sticky;position:-ms-sticky;position:-o-sticky;bottom:0;z-index:10;background-color:#fff;border-top:1px solid #d1d1d1}.notifications_container .drawer-pf .drawer-pf-action-link{align-self:center;margin:0}.notifications_container #no-notifications-container{padding:20px;text-align:center;background:#ededed;font-size:15px}@keyframes blink{0%{opacity:1}50%{opacity:0}to{opacity:1}}.blink-image{-moz-animation:blink normal 1s infinite ease-in-out;-webkit-animation:blink 1s ease-in-out infinite normal;-ms-animation:blink normal 1s infinite ease-in-out;animation:blink 1s ease-in-out infinite normal}.navbar-pf-vertical .nav-item-iconic .blink-image,.navbar-pf-vertical .nav-item-iconic:hover .blink-image{color:#f9d67a}#data-toolbar{grid-column:2/3;margin-left:0;display:flex;justify-content:space-between;flex-wrap:wrap}#data-toolbar .pf-c-page__header-tools-item,#data-toolbar .pf-c-spinner{margin-left:10px}@media (max-width:calc(992px + 70px)){#data-toolbar{justify-content:flex-end}#data-toolbar .header-tool-item-hidden-lg{display:none}}@media (max-width:768px){.navbar-pf-vertical{display:flex}.navbar-pf-vertical .pf-c-page__header{grid-template-columns:1fr 3fr}}.secondary-nav-item-pf>.nav-pf-secondary-nav{background-color:#026991}.secondary-nav-item-pf>.nav-pf-secondary-nav .mobile-active a .list-group-item-value{background-color:#024d6c}.secondary-nav-item-pf>.nav-pf-secondary-nav .list-group-item a{background-color:#026991}.secondary-nav-item-pf>.nav-pf-secondary-nav .list-group-item a:hover .list-group-item-value{background-color:#024d6c}.secondary-nav-item-pf>.nav-pf-secondary-nav .list-group-item span{color:#fff}#react-app-root .react-container{margin-right:auto;margin-left:200px;padding-left:20px;padding-right:20px}#react-app-root .nav-pf-vertical{background-color:#024d6c}#react-app-root .nav-pf-vertical .list-group .list-group-item a span{color:#c7c7c7}#react-app-root .nav-pf-vertical .list-group .list-group-item a:hover{background-color:#026991}#react-app-root .nav-pf-vertical .list-group .list-group-item a:hover span{color:#fff}#react-app-root .nav-pf-vertical .list-group .list-group-item a:after{color:#c7c7c7}#react-app-root .nav-pf-vertical .list-group .list-group-item:hover a{background-color:#026991}#react-app-root .nav-pf-vertical .list-group .list-group-item:hover a span{color:#fff}#react-app-root .nav-pf-vertical .list-group .list-group-item.active a{background-color:#026991}#react-app-root .nav-pf-vertical .list-group .list-group-item.active a span{color:#fff}#react-app-root .secondary-nav-item-pf.hidden-nav-lg{display:none}@media (max-width:calc(992px + 70px)){#react-app-root .secondary-nav-item-pf.hidden-nav-lg{display:block}}@media only screen and (max-width:768px){#rails-app-content,#react-app-root .react-container{margin-left:0}}#account_menu{outline:none}#vertical-spinner{margin-top:15px;margin-left:5px}.navbar-header{width:42px}#navbar-header{left:42px}#data-toolbar{padding:0}#data-toolbar,.pf-c-page{background-color:transparent}.collapsed-nav #rails-app-content,.collapsed-nav #react-app-root .react-container{margin-left:75px}@media only screen and (max-width:768px){.collapsed-nav #rails-app-content,.collapsed-nav #react-app-root .react-container{margin-left:0}}#diff-radio-buttons{margin-bottom:5px;float:right}#diff-radio-buttons .diff-button{text-transform:capitalize;width:60px}#diff-table{border:1px solid #d1d1d1;max-height:400px;overflow:auto;clear:both}#diff-table .diff-line{line-height:1.7;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}#diff-table .diff-gutter{border-left:1px solid #e8e9ea}#diff-table .diff-gutter.diff-gutter-insert{background-color:#cdffd8}#diff-table .diff-hunk-header{border:1px solid #e8e9ea}#diff-table .diff-code-insert{background-color:#e6ffed}#diff-table .diff-code-insert mark.diff-code-edit{background-color:#acf2bd}#diff-table .diff-code-delete{background-color:#ffeef0}#diff-table .diff-code-delete mark.diff-code-edit{background-color:#fdb8c0}.diff-modal .modal-header #diff-radio-buttons{margin-right:15px;margin-bottom:unset;float:right;overflow:hidden}.diff-modal .modal-dialog{width:900px}.diff-modal .diff-modal-body{padding:unset}.diff-modal #diff-modal-h4{float:left;margin:0;padding-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:700px}.diff-modal .diff-modal-button{margin-top:3px;float:right}.select-body-container .select-input-search input{width:100%!important}label.safemode-rendering-checkbox{font-size:14px;font-weight:var(--pf-global--link--FontWeight);margin:5px;cursor:pointer}input#safemode-rendering-checkbox{margin:10px 5px 10px 0}.ace_content{font-family:monospace!important}.mask-editor .ace_content{font-family:AllBullets,monospace}.popover-content{padding:2px}.popover-content .dropdown{text-align:center;margin-bottom:5px}.popover-content .dropdown button{color:#1e1d24}.popover-content .dropdown #settings-dropdown{min-width:unset}.editor-modal .modal-content{height:-webkit-fill-available}.editor-modal .modal-header #diff-radio-buttons{margin-bottom:unset;margin-right:15px}.editor-modal .modal-header #diff-radio-buttons button{outline:none}.editor-modal .modal-header #editor-modal-h4{margin-top:4px;margin-bottom:0;float:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:700px}.editor-modal .modal-dialog{padding:15px;width:auto!important}.editor-modal .modal-dialog .input.modal-body{background-color:#363636}.editor-modal .modal-dialog .modal-body{padding:0;overflow:auto;height:100%}.editor-modal .modal-dialog .modal-body .ace_editor{border:none!important}.editor-modal .modal-dialog .modal-body #diff-table{max-height:80vh}.editor-modal .modal-dialog .modal-body #diff-table div{border:none}.editor-modal .modal-dialog .input.modal-header.monokai,.editor-modal .modal-dialog .preview.modal-header.monokai{background-color:#363636}.editor-modal .modal-dialog .input.modal-header.monokai .pficon-close,.editor-modal .modal-dialog .input.modal-header.monokai h4,.editor-modal .modal-dialog .preview.modal-header.monokai .pficon-close,.editor-modal .modal-dialog .preview.modal-header.monokai h4{color:#fff}.navbar-editor{padding:2px 2px 0!important;margin:10px 0 0!important;height:40px;min-height:unset!important}.navbar-editor .nav-tabs-pf-secondary{float:left;background:unset!important;border-bottom:unset;display:flex}.navbar-editor .nav-tabs-pf-secondary a{background:unset!important}.navbar-editor .nav-tabs-pf-secondary .dropdown-menu>li>a:hover{background-color:#08c!important}.navbar-editor .nav-tabs-pf-secondary #editor-select-container{width:260px;margin-top:4px}.navbar-editor .nav-tabs-pf-secondary #editor-select-container .select-container-pf{border-radius:2px}.navbar-editor .nav-tabs-pf-secondary #outdated-preview-alert{display:flex;align-items:center}.navbar-editor .nav-tabs-pf-secondary #outdated-preview-alert .alert{padding:0;display:flex;margin:0 5px;height:24px;align-items:center;border-radius:2px}.navbar-editor .nav-tabs-pf-secondary #outdated-preview-alert .alert .pficon-warning-triangle-o{position:inherit;font-size:15px;top:0;left:0;margin:0 5px}.navbar-editor .nav-tabs-pf-secondary #preview-spinner{align-items:center;display:flex;margin-left:10px}.navbar-editor .btn-group{padding:4px}.navbar-editor .btn[disabled]{cursor:unset}.navbar-editor #editor-dropdowns{float:right}.navbar-editor #editor-dropdowns #diff-radio-buttons{float:left;margin-right:5px}.navbar-editor #editor-dropdowns #diff-radio-buttons button{outline:none}.navbar-editor #editor-dropdowns #divider{float:left;font-size:18px;margin-top:6px;font-weight:200;color:#c5c5c5;cursor:default;user-select:none}.navbar-editor #editor-dropdowns button:enabled :not(#diff-radio-buttons){color:#1e1d24}.navbar-editor #editor-dropdowns button:hover:enabled :not(#diff-radio-buttons){color:#4b4f5e!important}.navbar-editor .preview_type_ahead{float:right;padding:4px}.navbar-editor .preview_type_ahead input{width:275px}.navbar-editor .preview_type_ahead .rbt-aux{right:0}#hide-btn{width:40px!important;font-size:15px;margin-top:-4px}#fullscreen-btn{font-size:14px}#cog-btn,#fullscreen-btn{width:40px!important;margin-bottom:2px}#cog-btn{font-size:16px}#import-btn,#undo-btn{width:40px!important;font-size:16px}.ace_editor_form{position:relative!important;height:360px!important;width:100%!important;border:0!important;font-family:monospace!important}.ace_editor_modal{width:100%!important;height:80vh!important}#editor-container{display:flex;flex-direction:column}#editor-container div.navbar-editor .btn-link{outline:none}#editor-container #editor .ace_gutter .ace_gutter-layer{margin-top:5px!important}#editor-container #editor .ace_gutter .ace_gutter-active-line,#editor-container #editor .ace_scroller{margin-top:5px}#editor-container #diff-table{height:360px}#editor-container #diff-table .diff{border-bottom:1px solid #e8e9ea}#preview_error_toast{display:block;margin-bottom:0}#cog-popover .cog-popover-dropdown{display:flex;align-items:center}#cog-popover .cog-popover-dropdown .cog-popover-dropdown-title{width:50px;margin-bottom:5px;margin-right:10px;font-weight:600}#cog-popover .cog-popover-dropdown .dropdown{margin-left:auto}#cog-popover .cog-popover-dropdown .dropdown .dropdown-menu{min-width:80px}#cog-popover .cog-popover-dropdown .dropdown #keybindings-dropdown,#cog-popover .cog-popover-dropdown .dropdown #mode-dropdown,#cog-popover .cog-popover-dropdown .dropdown #themes-dropdown{width:80px;text-align:left}#cog-popover .cog-popover-dropdown .dropdown #keybindings-dropdown .caret,#cog-popover .cog-popover-dropdown .dropdown #mode-dropdown .caret,#cog-popover .cog-popover-dropdown .dropdown #themes-dropdown .caret{position:absolute;right:2px;top:7px}#loading-audits{display:flex;margin-top:100px}#loading-audits .spinner.spinner-lg{border-width:7px;height:60px;width:60px}.message-box-root{-ms-flex:1 1;flex:1 1;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.message-box-content{-ms-flex:0 0 30px;flex-basis:30px;text-align:center}.message-box-icon{font-size:22px}.message-box-message{color:#363636;font-size:12px;text-transform:capitalize}.loader-root{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;-ms-flex:1;flex:1}.foreman-autocomplete{position:relative}.foreman-autocomplete .autocomplete-aux{position:absolute;right:4px;top:4px;z-index:10}.foreman-autocomplete .autocomplete-aux .autocomplete-clear-button{margin-right:2px;font-size:12px;color:#72767b}.foreman-autocomplete .autocomplete-aux .autocomplete-clear-button:hover{color:#00659c;text-decoration:none}.foreman-autocomplete .autocomplete-focus-shortcut{position:absolute;top:4px;left:4px;padding:0 4px;user-select:none;font-size:12px;font-weight:700;z-index:10;border-radius:5px;width:15px;height:19px;text-align:center;line-height:17px;border:1px solid rgba(114,118,123,.5);color:#72767b}.foreman-autocomplete .autocomplete-focus-shortcut .hide{display:none}.foreman-autocomplete .autocomplete-error{position:absolute;color:#a30000}.rbt-aux{right:12px;z-index:10}.rbt-menu{width:auto;min-width:-webkit-fill-available!important}.search-bar{width:100%}.search-bar .autocomplete-search-btn-text{display:inline}.search-bar .search-input.use-shortcuts{padding-left:21px}.search-bar .rbt-input-hint input{display:none}.search-bar .scrollable-dropdown{max-width:250px}.search-bar li{font-size:16px}.search-bar input{font-size:16px;height:36px;border-bottom-color:var(--pf-global--BorderColor--200);border-top-color:var(--pf-global--BorderColor--300);border-left-color:var(--pf-global--BorderColor--300);border-left-width:.7px;border-top-width:0}.search-bar input::-webkit-input-placeholder{font-style:normal}.search-bar input:-moz-placeholder,.search-bar input::-moz-placeholder{font-style:normal}.search-bar input:-ms-input-placeholder{font-style:normal}.search-bar .foreman-autocomplete{width:100%}.search-bar .foreman-autocomplete .autocomplete-focus-shortcut{top:8px;font-size:8px}.search-bar .foreman-autocomplete .autocomplete-aux{top:6px;font-size:16px}.search-bar .foreman-autocomplete .autocomplete-aux .autocomplete-clear-button{font-size:16px}.pf-c-empty-state{margin-top:100px}.pf-c-empty-state .empty-state-icon{font-size:var(--pf-global--icon--FontSize--xl)}.blank-slate-pf{margin-top:100px!important}#loading-page{justify-content:center;display:flex;margin-top:100px}#loading-page .loading-state-pf{display:flex;flex-direction:column}#audit-list .apply-comma:not(:last-child):after{white-space:pre;content:", "}#audit-list .list-view-pf-view{margin-top:10px}#audit-list .list-view-pf-body>.list-view-pf-description{width:30%;flex:1 0 30%}#audit-list .list-group-item.list-view-pf-expand-active{background-color:#def3ff}#audit-list .list-group-item:hover{background-color:#edf8ff}#audit-list .list-group-item .list-group-item-header .list-group-item-heading{flex:1 0 calc(30% - 20px);width:calc(30% - 20px)}#audit-list .list-group-item .list-group-item-header .list-group-item-heading .user-grid{display:grid}#audit-list .list-group-item .list-group-item-header .list-group-item-heading .user-grid .user-info{font-weight:700}#audit-list .list-group-item .list-group-item-header .list-view-pf-additional-info-item{font-weight:600;flex:2;justify-content:flex-end;text-align:right;max-width:inherit}#audit-list .list-group-item .list-group-item-header .list-view-pf-additional-info-item:last-child{justify-content:flex-start;text-align:left;flex-grow:3;overflow:hidden;overflow-wrap:break-word;text-overflow:ellipsis;white-space:nowrap;word-break:break-all}#audit-list .list-group-item .list-group-item-header .list-view-pf-actions{margin-bottom:0;margin-top:22px}#audit-list .list-group-item .list-group-item-header .list-view-pf-expand{margin-right:35px;margin-bottom:10px;margin-top:18px}#audit-list .list-group-item-text{width:calc(65% - 40px)}#audit-list .list-group-item-text .list-view-pf-description .list-group-item-text{padding-left:30px}#audit-list .main-info-minimize-padding>.list-group-item-header .list-view-pf-main-info{padding-bottom:10px;padding-top:12px}#audit-list .main-info-maximize-padding>.list-group-item-header .list-view-pf-main-info{padding-bottom:21px;padding-top:21px}#audit-list .gray-text{color:#999}#audit-list .list-group-item-container{padding-top:20px;padding-left:35px}#audit-list .list-group-item-container .actions-btns{padding-bottom:15px}#audit-list .list-group-item-container .actions-btns .btn{float:right;margin-left:10px}#audit-list .list-group-item-container .request-uuid-column,#audit-list .list-group-item-container .taxonomy-section{padding-left:50px;word-break:break-word}#audit-list .list-group-item-container .request-uuid-column .value{font-weight:700}#audit-list .list-group-item-container .grid-container .details-row{border:1px solid #d1d1d1;margin-top:15px}#audit-list .list-group-item-container .grid-container .comment-section p{margin-left:10px;margin-right:15px}#audit-list .list-group-item-container .grid-container .comment-section .comment-title,#audit-list .list-group-item-container .grid-container .table-inline-changes{margin-top:10px}#audit-list .list-group-item-container .grid-container .table-changes{margin-top:15px}#audit-list .list-group-item-container .grid-container .table-changes td p{margin:0 15px}#audit-list .list-group-item-container .grid-container .table-changes,#audit-list .list-group-item-container .grid-container .table-inline-changes{word-break:break-word;font-weight:600}#audit-list .list-group-item-container .grid-container .table-changes td,#audit-list .list-group-item-container .grid-container .table-inline-changes td{padding:5px}#audit-list .list-group-item-container .grid-container .table-changes td:first-child,#audit-list .list-group-item-container .grid-container .table-inline-changes td:first-child{padding-left:30px}#audit-list .list-group-item-container .grid-container .table-hover>tbody>tr:hover,#audit-list .list-group-item-container .grid-container .table-hover>tbody>tr:hover>td{border:1px solid #d1d1d1}#audit-list .list-group-item-container .grid-container .table-hover>tbody>tr:hover,#audit-list .list-group-item-container .grid-container .table-hover>tbody>tr:hover>td:first-child{background-color:#fff}#audit-list .list-group-item-container .grid-container .show-old{background-color:#ffeef0}#audit-list .list-group-item-container .grid-container .show-new,#audit-list .list-group-item-container .grid-container .table-inline-changes.table-hover.show-new>tbody>tr:hover>td,#audit-list .list-group-item-container .grid-container .table-inline-changes.table-hover.show-new>tbody>tr:hover>th{background-color:#e6ffed}#audit-list .list-group-item-container .grid-container .table-inline-changes.table-hover.show-old>tbody>tr:hover>td,#audit-list .list-group-item-container .grid-container .table-inline-changes.table-hover.show-old>tbody>tr:hover>th{background-color:#ffeef0}#audit-list .list-group-item-container .grid-container .editor-section{margin-top:15px}#audit-list .list-group-item-container .grid-container .editor-section .editor.ace_editor{border:1px solid #d1d1d1}#audits-empty-table{line-height:2;font-size:50px}#pagination .form-group{align-items:center}#pagination span{margin-left:5px}.clipboard-copy{display:grid;padding:15px 0}.clipboard-copy textarea{margin-bottom:15px}.clipboard-copy button{max-width:200px}.bootstrap-datetimepicker-widget.dropdown-menu.top{margin-top:-10px}.bootstrap-datetimepicker-widget.dropdown-menu.bottom{margin-top:10px!important}.bootstrap-datetimepicker-widget.dropdown-menu{max-width:20em}.bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs{max-width:40em}.bootstrap-datetimepicker-widget.dropdown-menu .arrow{left:10%!important}.bootstrap-datetimepicker-widget.dropdown-menu .popover-content{color:#292e34}.bootstrap-datetimepicker-widget.dropdown-menu .clock-btn{border:0;box-shadow:none;color:#363636;display:block;padding-bottom:4px;padding-top:4px}.bootstrap-datetimepicker-widget.dropdown-menu table td .today-button{padding:0 16px 0 0;border:0;background-color:transparent}.bootstrap-datetimepicker-widget.dropdown-menu table td .today-button span{height:24px;line-height:24px;color:#0088ce}span.clear-button{background:none;border-left:none;color:#72767b}input.date-time-input{border-right:none}.row>.datepicker>div{display:block}.bootstrap-datetimepicker-widget table td{vertical-align:inherit}.timepicker-picker tr:nth-child(2) td{background-color:#def3ff!important}.field-help{margin-right:-5px}.card-pf-aggregate-status-notifications .aggregate-text{font-size:16px}.disabled{color:var(--pf-global--disabled-color--200)}.status-success{color:var(--pf-global--success-color--100)}.status-error{color:var(--pf-global--danger-color--100)}.status-warning{color:var(--pf-global--warning-color--100)}.padded-divider{padding:10px 0}.disabled-text{color:var(--pf-global--disabled-color--200);font-size:small}.power-on{color:var(--pf-global--success-color--100)}.power-off{color:var(--pf-global--danger-color--100)}.power-na{color:var(--pf-global--disable-color--200)}.details-cards,.details-tab{padding-top:20px}.details-tab .pf-c-accordion{height:15vh;overflow-y:auto;overflow-x:hidden}.pf-gray-background{background:var(--pf-global--BackgroundColor--200)}.host-details-header-section{margin-left:-20px;margin-right:-20px;background:var(--pf-global--BackgroundColor--100)}.host-details-header-section .header-top{margin:0 24px 16px;padding-top:16px}.host-details-header-section .header-top .host-details-breadcrumb{margin:0 0 24px}.host-details-header-section .header-top .hostname-skeleton-rapper{margin-bottom:8px}.host-details-header-section .header-top .hostname-skeleton-rapper .hostname-wrapper{display:inline-flex;max-width:60%;margin-right:8px}.host-details-header-section .header-top .hostname-skeleton-rapper .hostname-wrapper .hostname-truncate{text-overflow:ellipsis;max-width:100%;white-space:nowrap;overflow:hidden;display:inline-block}.host-details-header-section .pf-c-alert{margin:16px 24px}.host-details-header-section .host-details-tabs{margin:0 24px}.host-details-header-section .tab-width-138{max-width:calc(100vw - 138px)}@media screen and (max-width:767px){.host-details-header-section .tab-width-138{max-width:calc(100vw - 64px)}}.host-details-header-section .tab-width-263{max-width:calc(100vw - 263px)}@media screen and (max-width:767px){.host-details-header-section .tab-width-263{max-width:calc(100vw - 64px)}}.host-details-header-section .host-details-tab-item{padding:16px 24px;background:var(--pf-global--BackgroundColor--200)}.host-details-header-section .host-details-tab-item .pf-c-card{height:100%}.registration_commands_form input[type=checkbox]{margin:auto}.status-count{display:grid}.host-statuses-page{margin-top:20px}.error-boundary-foreman-app .empty-state-icon{color:var(--pf-global--palette--red-200)}.error-boundary-foreman-app .pf-c-clipboard-copy__expandable-content{white-space:pre-wrap}.host-power-status.on{color:#3f9c35}.host-power-status.off{color:#c00}.host-power-status.na{color:#8b8d8f}.text-overflow-pf{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-wrap:normal}.foreman-numeric-input{position:relative;display:flex}.foreman-numeric-input .foreman-numeric-input-input-wrap{width:100%}.foreman-numeric-input .foreman-numeric-input-input-wrap input{flex:1;height:26px;width:100%;padding-right:5px;box-sizing:border-box;font-size:inherit;border:1px solid #ccc;border-radius:4px;padding-left:5px;display:block;appearance:none;line-height:normal}.foreman-numeric-input .foreman-numeric-input-input-wrap input:focus:focus{border-color:#66afe9;outline:0!important;-webkit-box-shadow:inset 0 1px 1px rgba(3,3,3,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(3,3,3,.075),0 0 8px rgba(102,175,233,.6)}.foreman-numeric-input .foreman-numeric-input-input-wrap input:hover{border-color:#7dc3e8}.foreman-numeric-input .foreman-numeric-input-input-wrap input[disabled]{box-shadow:none;border-color:#ccc;color:#8b8d8f;cursor:not-allowed}.foreman-numeric-input .foreman-numeric-input-handler-down-inner,.foreman-numeric-input .foreman-numeric-input-handler-up-inner{position:absolute;top:50%;left:50%;border-style:solid;margin:-.3ex 0 0 -.56ex}.foreman-numeric-input .foreman-numeric-input-handler-up-inner{border-width:0 .6ex .6ex;border-color:transparent transparent #72767b}.foreman-numeric-input .foreman-numeric-input-handler-down-inner{border-width:.6ex .6ex 0;border-color:#72767b transparent transparent}.foreman-numeric-input .foreman-numeric-input-handler-up{top:2px;bottom:50%;border-radius:2px 2px 0 0;border-width:1px 1px 0}.foreman-numeric-input .foreman-numeric-input-handler-down{top:50%;bottom:2px;border-radius:0 0 2px 2px;border-width:0 1px 1px}.foreman-numeric-input .foreman-numeric-input-handler-down,.foreman-numeric-input .foreman-numeric-input-handler-up{position:absolute;right:2px;width:2.26ex;border-color:#d1d1d1;border-style:solid;text-align:center;cursor:default;transition:all .1s ease 0s;background:#d1d1d1;box-shadow:inset -1px -1px 3px #d1d1d1,inset 1px 1px 3px #ededed}.foreman-numeric-input .foreman-numeric-input-handler-down:hover,.foreman-numeric-input .foreman-numeric-input-handler-up:hover{background:#bbb}.foreman-numeric-input .foreman-numeric-input-handler-down:active,.foreman-numeric-input .foreman-numeric-input-handler-up:active{background:#8b8d8f;box-shadow:inset 0 1px 3px #d1d1d1,inset -1px -1px 4px #ededed}.foreman-numeric-input .foreman-numeric-input-handler-down:disabled,.foreman-numeric-input .foreman-numeric-input-handler-up:disabled{opacity:.5;box-shadow:none;cursor:not-allowed}.disks-container{padding:0 150px;display:flex;flex-direction:column}.disks-container .disk-container{display:flex;padding:20px 0;margin-top:20px;flex-direction:column;border-top:1px solid #ededed}.disks-container .disk-container .close{background-color:red;color:#fff;padding:5px 10px;border-radius:5px}.disks-container .disk-container .form-group{display:flex;align-items:center}.disks-container .disk-container .common-checkbox,.disks-container .disk-container .control-label,.disks-container .disk-container .delete-volume-container{text-align:left}.controller-header{display:flex;width:100%;align-items:top}.controller-header .controller-selected-container{display:flex;justify-content:flex-end}.controller-header .controller-selected-container>label{margin-left:5px}.controller-header .controller-type-container{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start}.controller-header .btn-add-disk{margin-top:10px}.vmware-storage-container{display:flex;flex-direction:column}.vmware-storage-container .storage-header{padding:10px 0;margin-bottom:10px;border-bottom:1px solid #ededed}.vmware-storage-container .storage-header .storage-title{font-size:18px}.vmware-storage-container .storage-header .storage-controller-buttons{text-align:right}.vmware-storage-container .storage-header .storage-controller-buttons>button{margin-left:20px}.vmware-storage-container .controller-container{margin-bottom:20px}.fact-chart .modal-body{min-height:500px;display:flex;align-items:center;justify-content:center}.pointer{cursor:pointer}.bar-chart-medium-width{min-width:450px}:root{--pf-global--palette--black-100:#fafafa;--pf-global--palette--black-150:#f5f5f5;--pf-global--palette--black-200:#f0f0f0;--pf-global--palette--black-300:#d2d2d2;--pf-global--palette--black-400:#b8bbbe;--pf-global--palette--black-500:#8a8d90;--pf-global--palette--black-600:#6a6e73;--pf-global--palette--black-700:#4f5255;--pf-global--palette--black-800:#3c3f42;--pf-global--palette--black-850:#212427;--pf-global--palette--black-900:#151515;--pf-global--palette--black-1000:#030303;--pf-global--palette--blue-50:#e7f1fa;--pf-global--palette--blue-100:#bee1f4;--pf-global--palette--blue-200:#73bcf7;--pf-global--palette--blue-300:#2b9af3;--pf-global--palette--blue-400:#06c;--pf-global--palette--blue-500:#004080;--pf-global--palette--blue-600:#002952;--pf-global--palette--blue-700:#001223;--pf-global--palette--cyan-50:#f2f9f9;--pf-global--palette--cyan-100:#a2d9d9;--pf-global--palette--cyan-200:#73c5c5;--pf-global--palette--cyan-300:#009596;--pf-global--palette--cyan-400:#005f60;--pf-global--palette--cyan-500:#003737;--pf-global--palette--cyan-600:#002323;--pf-global--palette--cyan-700:#000f0f;--pf-global--palette--gold-50:#fdf7e7;--pf-global--palette--gold-100:#f9e0a2;--pf-global--palette--gold-200:#f6d173;--pf-global--palette--gold-300:#f4c145;--pf-global--palette--gold-400:#f0ab00;--pf-global--palette--gold-500:#c58c00;--pf-global--palette--gold-600:#795600;--pf-global--palette--gold-700:#3d2c00;--pf-global--palette--green-50:#f3faf2;--pf-global--palette--green-100:#bde5b8;--pf-global--palette--green-200:#95d58e;--pf-global--palette--green-300:#6ec664;--pf-global--palette--green-400:#5ba352;--pf-global--palette--green-500:#3e8635;--pf-global--palette--green-600:#1e4f18;--pf-global--palette--green-700:#0f280d;--pf-global--palette--light-blue-100:#beedf9;--pf-global--palette--light-blue-200:#7cdbf3;--pf-global--palette--light-blue-300:#35caed;--pf-global--palette--light-blue-400:#00b9e4;--pf-global--palette--light-blue-500:#008bad;--pf-global--palette--light-blue-600:#005c73;--pf-global--palette--light-blue-700:#002d39;--pf-global--palette--light-green-100:#e4f5bc;--pf-global--palette--light-green-200:#c8eb79;--pf-global--palette--light-green-300:#ace12e;--pf-global--palette--light-green-400:#92d400;--pf-global--palette--light-green-500:#6ca100;--pf-global--palette--light-green-600:#486b00;--pf-global--palette--light-green-700:#253600;--pf-global--palette--orange-100:#f4b678;--pf-global--palette--orange-200:#ef9234;--pf-global--palette--orange-300:#ec7a08;--pf-global--palette--orange-400:#c46100;--pf-global--palette--orange-500:#8f4700;--pf-global--palette--orange-600:#773d00;--pf-global--palette--orange-700:#3b1f00;--pf-global--palette--purple-50:#f2f0fc;--pf-global--palette--purple-100:#cbc1ff;--pf-global--palette--purple-200:#b2a3ff;--pf-global--palette--purple-300:#a18fff;--pf-global--palette--purple-400:#8476d1;--pf-global--palette--purple-500:#6753ac;--pf-global--palette--purple-600:#40199a;--pf-global--palette--purple-700:#1f0066;--pf-global--palette--red-50:#faeae8;--pf-global--palette--red-100:#c9190b;--pf-global--palette--red-200:#a30000;--pf-global--palette--red-300:#7d1007;--pf-global--palette--red-400:#470000;--pf-global--palette--red-500:#2c0000;--pf-global--palette--white:#fff;--pf-global--BackgroundColor--100:#fff;--pf-global--BackgroundColor--200:#f0f0f0;--pf-global--BackgroundColor--light-100:#fff;--pf-global--BackgroundColor--light-200:#fafafa;--pf-global--BackgroundColor--light-300:#f0f0f0;--pf-global--BackgroundColor--dark-100:#151515;--pf-global--BackgroundColor--dark-200:#3c3f42;--pf-global--BackgroundColor--dark-300:#212427;--pf-global--BackgroundColor--dark-400:#4f5255;--pf-global--BackgroundColor--dark-transparent-100:rgba(3,3,3,0.62);--pf-global--BackgroundColor--dark-transparent-200:rgba(3,3,3,0.32);--pf-global--Color--100:#151515;--pf-global--Color--200:#6a6e73;--pf-global--Color--300:#3c3f42;--pf-global--Color--400:#8a8d90;--pf-global--Color--light-100:#fff;--pf-global--Color--light-200:#f0f0f0;--pf-global--Color--light-300:#d2d2d2;--pf-global--Color--dark-100:#151515;--pf-global--Color--dark-200:#6a6e73;--pf-global--active-color--100:#06c;--pf-global--active-color--200:#bee1f4;--pf-global--active-color--300:#2b9af3;--pf-global--active-color--400:#73bcf7;--pf-global--disabled-color--100:#6a6e73;--pf-global--disabled-color--200:#d2d2d2;--pf-global--disabled-color--300:#f0f0f0;--pf-global--primary-color--100:#06c;--pf-global--primary-color--200:#004080;--pf-global--primary-color--light-100:#73bcf7;--pf-global--primary-color--dark-100:#06c;--pf-global--secondary-color--100:#6a6e73;--pf-global--default-color--100:#73c5c5;--pf-global--default-color--200:#009596;--pf-global--default-color--300:#003737;--pf-global--success-color--100:#3e8635;--pf-global--success-color--200:#1e4f18;--pf-global--info-color--100:#2b9af3;--pf-global--info-color--200:#002952;--pf-global--warning-color--100:#f0ab00;--pf-global--warning-color--200:#795600;--pf-global--danger-color--100:#c9190b;--pf-global--danger-color--200:#a30000;--pf-global--danger-color--300:#470000;--pf-global--BoxShadow--sm:0 0.0625rem 0.125rem 0 rgba(3,3,3,0.12),0 0 0.125rem 0 rgba(3,3,3,0.06);--pf-global--BoxShadow--sm-top:0 -0.125rem 0.25rem -0.0625rem rgba(3,3,3,0.16);--pf-global--BoxShadow--sm-right:0.125rem 0 0.25rem -0.0625rem rgba(3,3,3,0.16);--pf-global--BoxShadow--sm-bottom:0 0.125rem 0.25rem -0.0625rem rgba(3,3,3,0.16);--pf-global--BoxShadow--sm-left:-0.125rem 0 0.25rem -0.0625rem rgba(3,3,3,0.16);--pf-global--BoxShadow--md:0 0.25rem 0.5rem 0rem rgba(3,3,3,0.12),0 0 0.25rem 0 rgba(3,3,3,0.06);--pf-global--BoxShadow--md-top:0 -0.5rem 0.5rem -0.375rem rgba(3,3,3,0.18);--pf-global--BoxShadow--md-right:0.5rem 0 0.5rem -0.375rem rgba(3,3,3,0.18);--pf-global--BoxShadow--md-bottom:0 0.5rem 0.5rem -0.375rem rgba(3,3,3,0.18);--pf-global--BoxShadow--md-left:-0.5rem 0 0.5rem -0.375rem rgba(3,3,3,0.18);--pf-global--BoxShadow--lg:0 0.5rem 1rem 0 rgba(3,3,3,0.16),0 0 0.375rem 0 rgba(3,3,3,0.08);--pf-global--BoxShadow--lg-top:0 -0.75rem 0.75rem -0.5rem rgba(3,3,3,0.18);--pf-global--BoxShadow--lg-right:0.75rem 0 0.75rem -0.5rem rgba(3,3,3,0.18);--pf-global--BoxShadow--lg-bottom:0 0.75rem 0.75rem -0.5rem rgba(3,3,3,0.18);--pf-global--BoxShadow--lg-left:-0.75rem 0 0.75rem -0.5rem rgba(3,3,3,0.18);--pf-global--BoxShadow--xl:0 1rem 2rem 0 rgba(3,3,3,0.16),0 0 0.5rem 0 rgba(3,3,3,0.1);--pf-global--BoxShadow--xl-top:0 -1rem 1rem -0.5rem rgba(3,3,3,0.2);--pf-global--BoxShadow--xl-right:1rem 0 1rem -0.5rem rgba(3,3,3,0.2);--pf-global--BoxShadow--xl-bottom:0 1rem 1rem -0.5rem rgba(3,3,3,0.2);--pf-global--BoxShadow--xl-left:-1rem 0 1rem -0.5rem rgba(3,3,3,0.2);--pf-global--BoxShadow--inset:inset 0 0 0.625rem 0 rgba(3,3,3,0.25);--pf-global--font-path:"~@patternfly/patternfly/assets/fonts";--pf-global--fonticon-path:"~@patternfly/patternfly/assets/pficon";--pf-global--spacer--xs:0.25rem;--pf-global--spacer--sm:0.5rem;--pf-global--spacer--md:1rem;--pf-global--spacer--lg:1.5rem;--pf-global--spacer--xl:2rem;--pf-global--spacer--2xl:3rem;--pf-global--spacer--3xl:4rem;--pf-global--spacer--4xl:5rem;--pf-global--spacer--form-element:0.375rem;--pf-global--gutter:1rem;--pf-global--gutter--md:1.5rem;--pf-global--ZIndex--xs:100;--pf-global--ZIndex--sm:200;--pf-global--ZIndex--md:300;--pf-global--ZIndex--lg:400;--pf-global--ZIndex--xl:500;--pf-global--ZIndex--2xl:600;--pf-global--breakpoint--xs:0;--pf-global--breakpoint--sm:576px;--pf-global--breakpoint--md:768px;--pf-global--breakpoint--lg:992px;--pf-global--breakpoint--xl:1200px;--pf-global--breakpoint--2xl:1450px;--pf-global--link--Color:#06c;--pf-global--link--Color--hover:#004080;--pf-global--link--Color--light:#2b9af3;--pf-global--link--Color--light--hover:#73bcf7;--pf-global--link--Color--dark:#06c;--pf-global--link--Color--dark--hover:#004080;--pf-global--link--TextDecoration:none;--pf-global--link--TextDecoration--hover:underline;--pf-global--BorderWidth--sm:1px;--pf-global--BorderWidth--md:2px;--pf-global--BorderWidth--lg:3px;--pf-global--BorderWidth--xl:4px;--pf-global--BorderColor--100:#d2d2d2;--pf-global--BorderColor--200:#8a8d90;--pf-global--BorderColor--300:#f0f0f0;--pf-global--BorderColor--dark-100:#d2d2d2;--pf-global--BorderColor--light-100:#b8bbbe;--pf-global--BorderRadius--sm:3px;--pf-global--BorderRadius--lg:30em;--pf-global--icon--Color--light:#6a6e73;--pf-global--icon--Color--dark:#151515;--pf-global--icon--FontSize--sm:0.625rem;--pf-global--icon--FontSize--md:1.125rem;--pf-global--icon--FontSize--lg:1.5rem;--pf-global--icon--FontSize--xl:3.375rem;--pf-global--FontFamily--sans-serif:"RedHatText","Overpass",overpass,helvetica,arial,sans-serif;--pf-global--FontFamily--heading--sans-serif:"RedHatDisplay","Overpass",overpass,helvetica,arial,sans-serif;--pf-global--FontFamily--monospace:"Liberation Mono",consolas,"SFMono-Regular",menlo,monaco,"Courier New",monospace;--pf-global--FontFamily--overpass--sans-serif:"overpass",overpass,"open sans",-apple-system,blinkmacsystemfont,"Segoe UI",roboto,"Helvetica Neue",arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--pf-global--FontFamily--overpass--monospace:"overpass-mono",overpass-mono,"SFMono-Regular",menlo,monaco,consolas,"Liberation Mono","Courier New",monospace;--pf-global--FontSize--4xl:2.25rem;--pf-global--FontSize--3xl:1.75rem;--pf-global--FontSize--2xl:1.5rem;--pf-global--FontSize--xl:1.25rem;--pf-global--FontSize--lg:1.125rem;--pf-global--FontSize--md:1rem;--pf-global--FontSize--sm:0.875rem;--pf-global--FontSize--xs:0.75rem;--pf-global--FontWeight--light:300;--pf-global--FontWeight--normal:400;--pf-global--FontWeight--semi-bold:700;--pf-global--FontWeight--overpass--semi-bold:500;--pf-global--FontWeight--bold:700;--pf-global--FontWeight--overpass--bold:600;--pf-global--LineHeight--sm:1.3;--pf-global--LineHeight--md:1.5;--pf-global--ListStyle:disc outside;--pf-global--Transition:all 250ms ease-in-out;--pf-global--TimingFunction:cubic-bezier(0.645,0.045,0.355,1);--pf-global--TransitionDuration:250ms;--pf-global--arrow--width:0.9375rem;--pf-global--arrow--width-lg:1.5625rem;--pf-global--target-size--MinWidth:44px;--pf-global--target-size--MinHeight:44px}.pf-m-overpass-font{--pf-global--FontFamily--sans-serif:var(--pf-global--FontFamily--overpass--sans-serif);--pf-global--FontFamily--heading--sans-serif:var(--pf-global--FontFamily--sans-serif);--pf-global--FontFamily--monospace:var(--pf-global--FontFamily--overpass--monospace);--pf-global--FontWeight--semi-bold:var(--pf-global--FontWeight--overpass--semi-bold);--pf-global--FontWeight--bold:var(--pf-global--FontWeight--overpass--bold)}#login-page{height:100%}#login-page .login-pf-page-footer-link[href*=foreman-login-footer-text]{pointer-events:none;cursor:default}#login-page .login-pf{background:none;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MDAiIGhlaWdodD0iMjAwIj48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIwJSIgeTE9IjUwJSIgeDI9IjEwMCUiIHkyPSI1MCUiPjxzdG9wIG9mZnNldD0iMCUiIHN0b3AtY29sb3I9IiMwMDVlOGMiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwNDFhMzMiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2EpIi8+PC9zdmc+);background-size:contain}#login-page .login-pf .login-pf-header{margin-bottom:0!important}#login-page .login-pf .login-pf-header h1{font-weight:500}#login-page .login-pf .login-pf-caption{color:#fff}#login-page .login-pf .login-pf-caption h1{font-weight:600}#login-page .login-pf .spinner{float:none}#login-page .login-pf .form-control+.glyphicon{position:absolute;padding:0;right:0}.external-logout{height:100%;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MDAiIGhlaWdodD0iMjAwIj48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIwJSIgeTE9IjUwJSIgeDI9IjEwMCUiIHkyPSI1MCUiPjxzdG9wIG9mZnNldD0iMCUiIHN0b3AtY29sb3I9IiMwMDVlOGMiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwNDFhMzMiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2EpIi8+PC9zdmc+);background-size:contain}.external-logout header{text-align:center}.external-logout header img.brand{margin-top:62px;max-width:360px;width:70%}.external-logout header .login-pf-caption{color:#fff}.external-logout header .login-pf-caption #title{font-weight:600}.external-logout header .login-pf-caption p{font-size:14px;margin-top:20px}.external-logout .login-pf-submit-button{margin:40px auto;font-size:20px;width:250px}.editable{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAKlBMVEUAAAAfHx9mZmZvb28jIyNlZWUkJCQ1NTWqqqqXl5d1dXWfn58wMDBlZWVFnB4fAAAADnRSTlMATTY2RjlLSgc1FhMIMWjp4M0AAABMSURBVAjXY8AOOEwmQBjMgpIQxnZBMTDdrFUoDGYYyi7XgKgQ1IYICAoGgGgmQUEhsECgoKACWEAJKsBywFABzGDzCWKAiKQEoFoMAFFGCJqmrvKMAAAAAElFTkSuQmCC) no-repeat scroll 98% 3px transparent;cursor:pointer;padding:3px 26px 4px 4px}.editable:hover{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAeFBMVEUAAAChoaF+fn6CgoKIiIh+fn57e3uCgoI2Njaqqqp2dnZHR0dQUFBLS0s0NDRKSko1NTVAQEA8PDwwMDB7e3t1dXWFhYV7e3uLi4uKioqmpqa7u7vFxcWpqamrq6vg4OCsrKw1NTUzMzM3NzcxMTEvLy8tLS1BQUFexsBCAAAAIXRSTlMABri8s7OzsuOyrR39+vby8vDu6MC9s6FJSUFAGhUMBgIlQtNGAAAAa0lEQVQY04XINxKEQAxEUTFmYWEN3jtpMPe/IRAMqIqAH/VreGhgu1XRG3gKZ8OesfksZl5P99Iv/wsqaycnKqqv6KxdJCK/Bub9yRxrfRhfpyVOhhmE0DgxQxyAi/oy/JIglczghZ5gvrUB2F8HC0WhsnYAAAAASUVORK5CYII=) no-repeat scroll 98% 3px #f2f2f2}.gridster ul{padding-left:0;list-style:none;max-width:100%;margin:0 auto}@media (min-width:992px){.gridster ul [data-col="1"]{left:1%}.gridster ul [data-sizex="1"]{width:7.33333%}.gridster ul [data-sizey="1"]{height:340px}.gridster ul [data-col="2"]{left:9.33333%}.gridster ul [data-sizex="2"]{width:15.66667%}.gridster ul [data-sizey="2"]{height:690px}.gridster ul [data-col="3"]{left:17.66667%}.gridster ul [data-sizex="3"]{width:24%}.gridster ul [data-sizey="3"]{height:1040px}.gridster ul [data-col="4"]{left:26%}.gridster ul [data-sizex="4"]{width:32.33333%}.gridster ul [data-sizey="4"]{height:1390px}.gridster ul [data-col="5"]{left:34.33333%}.gridster ul [data-sizex="5"]{width:40.66667%}.gridster ul [data-sizey="5"]{height:1740px}.gridster ul [data-col="6"]{left:42.66667%}.gridster ul [data-sizex="6"]{width:49%}.gridster ul [data-sizey="6"]{height:2090px}.gridster ul [data-col="7"]{left:51%}.gridster ul [data-sizex="7"]{width:57.33333%}.gridster ul [data-sizey="7"]{height:2440px}.gridster ul [data-col="8"]{left:59.33333%}.gridster ul [data-sizex="8"]{width:65.66667%}.gridster ul [data-sizey="8"]{height:2790px}.gridster ul [data-col="9"]{left:67.66667%}.gridster ul [data-sizex="9"]{width:74%}.gridster ul [data-sizey="9"]{height:3140px}.gridster ul [data-col="10"]{left:76%}.gridster ul [data-sizex="10"]{width:82.33333%}.gridster ul [data-sizey="10"]{height:3490px}.gridster ul [data-col="11"]{left:84.33333%}.gridster ul [data-sizex="11"]{width:90.66667%}.gridster ul [data-sizey="11"]{height:3840px}.gridster ul [data-col="12"]{left:92.66667%}.gridster ul [data-sizex="12"]{width:99%}.gridster ul [data-sizey="12"]{height:4190px}.gridster ul [data-row="1"]{top:10px}.gridster ul [data-row="2"]{top:370px}.gridster ul [data-row="3"]{top:730px}.gridster ul [data-row="4"]{top:1090px}.gridster ul [data-row="5"]{top:1450px}.gridster ul [data-row="6"]{top:1810px}.gridster ul [data-row="7"]{top:2170px}.gridster ul [data-row="8"]{top:2530px}.gridster ul [data-row="9"]{top:2890px}.gridster ul [data-row="10"]{top:3250px}.gridster ul [data-row="11"]{top:3610px}.gridster ul [data-row="12"]{top:3970px}.gridster ul [data-row="13"]{top:4330px}.gridster ul [data-row="14"]{top:4690px}.gridster ul [data-row="15"]{top:5050px}.gridster ul [data-row="16"]{top:5410px}.gridster ul [data-row="17"]{top:5770px}.gridster ul [data-row="18"]{top:6130px}.gridster ul [data-row="19"]{top:6490px}.gridster ul [data-row="20"]{top:6850px}.gridster ul [data-row="21"]{top:7210px}.gridster ul [data-row="22"]{top:7570px}.gridster ul [data-row="23"]{top:7930px}.gridster ul [data-row="24"]{top:8290px}.gridster ul [data-row="25"]{top:8650px}.gridster ul [data-row="26"]{top:9010px}.gridster ul [data-row="27"]{top:9370px}.gridster ul [data-row="28"]{top:9730px}.gridster ul [data-row="29"]{top:10090px}.gridster ul [data-row="30"]{top:10450px}.gridster ul [data-col="1"]{left:0}}@media (max-width:992px){.gridster ul .gs-w:not(.preview-holder){position:relative!important;margin:10px 0}}.gridster ul .preview-holder{background-color:#00618a}.gridster ul .gs-w{padding:19px;border:1px solid #e3e3e3;background-color:hsla(0,0%,100%,.5)}.gridster ul .gs-w:hover{border:1px solid #00618a}.dashboard .host-configuration-status li{margin:10px 0;list-style:none;clear:both}.dashboard .host-configuration-status li h4{float:right;line-height:10px}.dashboard .host-configuration-status .total{border-top:1px solid #ddd;text-align:right;padding-top:10px}.dashboard .header{border-bottom:1px solid #ddd;padding:0 10px 10px;margin-top:0}.dashboard .stats-well{min-height:360px}.dashboard .statistics-bar{height:270px;width:95%;margin-left:-10px}.dashboard .statistics-chart{height:240px;width:95%}.dashboard .widget_control a{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;cursor:pointer;margin:0 3px}.dashboard .widget_control a:hover{text-decoration:none}.dashboard .reports-table th:not(:first-child){width:50px}.dashboard-links{color:#333}.dashboard-pie{height:180px;width:180px}.dashboard-right{margin-right:10px;margin-top:80px;float:right}.auto-refresh{background:none}.auto-refresh.on{color:#005c7e}.auto-refresh.off{color:#ccc}