@@ -2,11 +2,12 @@ package matcher
2
2
3
3
import (
4
4
"fmt"
5
+ "strings"
6
+
5
7
"github.com/mattfenwick/collections/pkg/json"
6
8
"github.com/mattfenwick/collections/pkg/slice"
7
9
"golang.org/x/exp/slices"
8
10
v1 "k8s.io/api/core/v1"
9
- "strings"
10
11
11
12
"github.com/mattfenwick/cyclonus/pkg/kube"
12
13
"github.com/olekukonko/tablewriter"
@@ -80,23 +81,25 @@ func (s *SliceBuilder) TargetsTableLines(targets []*Target, isIngress bool) {
80
81
rules := strings .Join (sourceRulesStrings , "\n " )
81
82
s .Prefix = []string {ruleType , target .TargetString (), rules }
82
83
83
- if len (target .Peers ) == 0 {
84
- s .Append ("no pods, no ips" , "NPv1: All peers allowed" , "no ports, no protocols" )
85
- continue
84
+ if len (target .Peers ) == 1 {
85
+ if _ , ok := target .Peers [0 ].(* NoMatcher ); ok {
86
+ s .Append ("no peers" , "NPv1:\n Allow any peers" , "none" )
87
+ continue
88
+ }
86
89
}
87
90
88
91
peers := groupAnbAndBanp (target .Peers )
89
92
for _ , p := range slice .SortOn (func (p PeerMatcher ) string { return json .MustMarshalToString (p ) }, peers ) {
90
93
switch t := p .(type ) {
91
94
case * AllPeersMatcher :
92
- s .Append ("all pods, all ips" , "NPv1: All peers allowed " , "all ports, all protocols" )
95
+ s .Append ("all pods, all ips" , "NPv1:\n Allow any peers " , "all ports, all protocols" )
93
96
case * PortsForAllPeersMatcher :
94
97
pps := PortMatcherTableLines (t .Port , NetworkPolicyV1 )
95
- s .Append ("all pods, all ips" , "NPv1: All peers allowed " , strings .Join (pps , "\n " ))
98
+ s .Append ("all pods, all ips" , "NPv1:\n Allow any peers " , strings .Join (pps , "\n " ))
96
99
case * IPPeerMatcher :
97
100
s .IPPeerMatcherTableLines (t )
98
101
case * PodPeerMatcher :
99
- s .Append (resolveSubject (t ), "NPv1: All peers allowed " , strings .Join (PortMatcherTableLines (t .Port , NewV1Effect (true ).PolicyKind ), "\n " ))
102
+ s .Append (resolveSubject (t ), "NPv1:\n Allow any peers " , strings .Join (PortMatcherTableLines (t .Port , NewV1Effect (true ).PolicyKind ), "\n " ))
100
103
case * peerProtocolGroup :
101
104
s .peerProtocolGroupTableLines (t )
102
105
default :
@@ -110,7 +113,7 @@ func (s *SliceBuilder) TargetsTableLines(targets []*Target, isIngress bool) {
110
113
func (s * SliceBuilder ) IPPeerMatcherTableLines (ip * IPPeerMatcher ) {
111
114
peer := ip .IPBlock .CIDR + "\n " + fmt .Sprintf ("except %+v" , ip .IPBlock .Except )
112
115
pps := PortMatcherTableLines (ip .Port , NetworkPolicyV1 )
113
- s .Append (peer , "NPv1: All peers allowed " , strings .Join (pps , "\n " ))
116
+ s .Append (peer , "NPv1:\n Allow any peers " , strings .Join (pps , "\n " ))
114
117
}
115
118
116
119
func (s * SliceBuilder ) peerProtocolGroupTableLines (t * peerProtocolGroup ) {
0 commit comments