mirror of
https://github.com/FairwindsOps/polaris.git
synced 2026-08-29 22:17:16 +00:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2f5964519a | ||
|
|
2064384985 | ||
|
|
b436699260 |
@@ -3,7 +3,7 @@
|
||||
<br>
|
||||
<h3>Best Practices for Kubernetes Workload Configuration</h3>
|
||||
<a href="https://github.com/FairwindsOps/polaris">
|
||||
<img src="https://img.shields.io/static/v1.svg?label=Version&message=3.1.4&color=239922">
|
||||
<img src="https://img.shields.io/static/v1.svg?label=Version&message=3.1.5&color=239922">
|
||||
</a>
|
||||
<a href="https://goreportcard.com/report/github.com/FairwindsOps/polaris">
|
||||
<img src="https://goreportcard.com/badge/github.com/FairwindsOps/polaris">
|
||||
|
||||
@@ -2,6 +2,9 @@
|
||||
sidebarDepth: 0
|
||||
---
|
||||
|
||||
## 3.1.5
|
||||
* Fix UI display of Ingress checks
|
||||
|
||||
## 3.1.4
|
||||
* Fixes for exemption annotations for the admission controller
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ import (
|
||||
|
||||
const (
|
||||
// Version represents the current release version of Polaris
|
||||
Version = "3.1.4"
|
||||
Version = "3.1.5"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
@@ -120,7 +120,7 @@
|
||||
</div>
|
||||
<div class="result-messages expandable-content">
|
||||
<form id="namespaceFiltersForm" class="namespace-list">
|
||||
{{ range $namespace, $ctrlResults := .AuditData.GetResultsByNamespace }}
|
||||
{{ range $namespace, $results := .AuditData.GetResultsByNamespace }}
|
||||
<div class="namespace-row">
|
||||
<input type="checkbox" name="{{ $namespace }}" id="namespace-{{ $namespace }}">
|
||||
<label for="namespace-{{ $namespace }}">{{ $namespace }}</label>
|
||||
@@ -132,20 +132,18 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{ range $namespace, $ctrlResults := .FilteredAuditData.GetResultsByNamespace }}
|
||||
{{ range $namespace, $results := .FilteredAuditData.GetResultsByNamespace }}
|
||||
<div id="{{ $namespace }}" class="card namespace">
|
||||
<h3>Namespace: <strong>{{ $namespace }}</strong></h3>
|
||||
<div class="expandable-table">
|
||||
{{ range $ctrlResults }}
|
||||
{{ range $index, $result := $results }}
|
||||
<div class="resource-info">
|
||||
<div class="status-bar">
|
||||
<div class="status">
|
||||
<div class="failing">
|
||||
{{ if .PodResult }}
|
||||
<div class="warning" style="width: {{ getWarningWidth .PodResult.GetSummary 200 }}px;">
|
||||
<div class="passing" style="width: {{ getSuccessWidth .PodResult.GetSummary 200 }}px;"></div>
|
||||
</div>
|
||||
{{ end }}
|
||||
<div class="warning" style="width: {{ getWarningWidth $result.GetSummary 200 }}px;">
|
||||
<div class="passing" style="width: {{ getSuccessWidth $result.GetSummary 200 }}px;"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -193,7 +193,20 @@ func TestControllerExemptions(t *testing.T) {
|
||||
"livenessProbeMissing": conf.SeverityWarning,
|
||||
},
|
||||
}
|
||||
expectedSum := CountSummary{
|
||||
Successes: uint(0),
|
||||
Warnings: uint(1),
|
||||
Dangers: uint(1),
|
||||
}
|
||||
expectedExemptSum := CountSummary{
|
||||
Successes: uint(0),
|
||||
Warnings: uint(0),
|
||||
Dangers: uint(0),
|
||||
}
|
||||
var actualResults []Result
|
||||
|
||||
pod := test.MockPod()
|
||||
pod.ObjectMeta.Namespace = "foo"
|
||||
workload, err := kube.NewGenericWorkloadFromPod(pod, nil)
|
||||
assert.NoError(t, err)
|
||||
workload.Kind = "Deployment"
|
||||
@@ -201,12 +214,6 @@ func TestControllerExemptions(t *testing.T) {
|
||||
Controllers: []kube.GenericWorkload{workload},
|
||||
}
|
||||
|
||||
expectedSum := CountSummary{
|
||||
Successes: uint(0),
|
||||
Warnings: uint(1),
|
||||
Dangers: uint(1),
|
||||
}
|
||||
var actualResults []Result
|
||||
actualResults, err = ValidateControllers(&c, resources)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
@@ -215,6 +222,18 @@ func TestControllerExemptions(t *testing.T) {
|
||||
assert.Equal(t, "Deployment", actualResults[0].Kind)
|
||||
assert.EqualValues(t, expectedSum, actualResults[0].GetSummary())
|
||||
|
||||
c.Exemptions = []conf.Exemption{{
|
||||
Namespace: "foo",
|
||||
}}
|
||||
actualResults, err = ValidateControllers(&c, resources)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
assert.Equal(t, 1, len(actualResults))
|
||||
assert.Equal(t, "Deployment", actualResults[0].Kind)
|
||||
assert.EqualValues(t, expectedExemptSum, actualResults[0].GetSummary())
|
||||
|
||||
c.Exemptions = nil
|
||||
resources.Controllers[0].ObjectMeta.SetAnnotations(map[string]string{
|
||||
exemptionAnnotationKey: "true",
|
||||
})
|
||||
@@ -222,11 +241,6 @@ func TestControllerExemptions(t *testing.T) {
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
expectedExemptSum := CountSummary{
|
||||
Successes: uint(0),
|
||||
Warnings: uint(0),
|
||||
Dangers: uint(0),
|
||||
}
|
||||
assert.Equal(t, 1, len(actualResults))
|
||||
assert.Equal(t, "Deployment", actualResults[0].Kind)
|
||||
assert.EqualValues(t, expectedExemptSum, actualResults[0].GetSummary())
|
||||
|
||||
@@ -106,14 +106,18 @@ func (p PodResult) GetSummaryByCategory() CountSummaryByCategory {
|
||||
// GetSummary summarizes a Result
|
||||
func (c Result) GetSummary() CountSummary {
|
||||
summary := c.Results.GetSummary()
|
||||
summary.AddSummary(c.PodResult.GetSummary())
|
||||
if c.PodResult != nil {
|
||||
summary.AddSummary(c.PodResult.GetSummary())
|
||||
}
|
||||
return summary
|
||||
}
|
||||
|
||||
// GetSummaryByCategory summarizes a Result
|
||||
func (c Result) GetSummaryByCategory() CountSummaryByCategory {
|
||||
summary := c.Results.GetSummaryByCategory()
|
||||
summary.AddSummary(c.PodResult.GetSummaryByCategory())
|
||||
if c.PodResult != nil {
|
||||
summary.AddSummary(c.PodResult.GetSummaryByCategory())
|
||||
}
|
||||
return summary
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user