Skip to content

Commit 5bc4a79

Browse files
committed
add scopes config
1 parent 3e07bb7 commit 5bc4a79

File tree

3 files changed

+135
-7
lines changed

3 files changed

+135
-7
lines changed

controllers/consoleplugin/config/config.go

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,18 @@ type FilterConfig struct {
8787
Placeholder string `yaml:"placeholder,omitempty" json:"placeholder,omitempty"`
8888
}
8989

90+
type ScopeConfig struct {
91+
ID string `yaml:"id" json:"id"`
92+
Name string `yaml:"name" json:"name"`
93+
ShortName string `yaml:"shortName" json:"shortName"`
94+
Description string `yaml:"description" json:"description"`
95+
Labels []string `yaml:"labels" json:"labels"`
96+
Feature string `yaml:"feature,omitempty" json:"feature,omitempty"`
97+
Groups []string `yaml:"groups,omitempty" json:"groups,omitempty"`
98+
Filter string `yaml:"filter,omitempty" json:"filter,omitempty"`
99+
Filters []string `yaml:"filters,omitempty" json:"filters,omitempty"`
100+
}
101+
90102
type FieldConfig struct {
91103
Name string `yaml:"name" json:"name"`
92104
Type string `yaml:"type" json:"type"`
@@ -101,17 +113,17 @@ type Deduper struct {
101113
}
102114

103115
type FrontendConfig struct {
104-
RecordTypes []api.ConnTrackOutputRecordTypeEnum `yaml:"recordTypes" json:"recordTypes"`
105-
Columns []ColumnConfig `yaml:"columns" json:"columns"`
106-
Sampling int `yaml:"sampling" json:"sampling"`
107-
Features []string `yaml:"features" json:"features"`
108-
Deduper Deduper `yaml:"deduper" json:"deduper"`
109-
Fields []FieldConfig `yaml:"fields" json:"fields"`
110-
116+
RecordTypes []api.ConnTrackOutputRecordTypeEnum `yaml:"recordTypes" json:"recordTypes"`
111117
PortNaming flowslatest.ConsolePluginPortConfig `yaml:"portNaming,omitempty" json:"portNaming,omitempty"`
118+
Columns []ColumnConfig `yaml:"columns" json:"columns"`
112119
Filters []FilterConfig `yaml:"filters,omitempty" json:"filters,omitempty"`
120+
Scopes []ScopeConfig `yaml:"scopes" json:"scopes"`
113121
QuickFilters []flowslatest.QuickFilter `yaml:"quickFilters,omitempty" json:"quickFilters,omitempty"`
114122
AlertNamespaces []string `yaml:"alertNamespaces,omitempty" json:"alertNamespaces,omitempty"`
123+
Sampling int `yaml:"sampling" json:"sampling"`
124+
Features []string `yaml:"features" json:"features"`
125+
Deduper Deduper `yaml:"deduper" json:"deduper"`
126+
Fields []FieldConfig `yaml:"fields" json:"fields"`
115127
}
116128

117129
type PluginConfig struct {

controllers/consoleplugin/config/static-frontend-config.yaml

Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -904,6 +904,121 @@ filters:
904904
name: Network events flow monitoring
905905
component: text
906906
hint: Specify a single network event.
907+
scopes:
908+
- id: cluster
909+
name: Cluster
910+
shortName: Cl
911+
description: Cluster name or identifier
912+
labels:
913+
- K8S_ClusterName
914+
feature: multiCluster
915+
filter: cluster_name
916+
- id: zone
917+
name: Zone
918+
shortName: AZ
919+
description: Availability zone
920+
labels:
921+
- SrcK8S_Zone
922+
- DstK8S_Zone
923+
feature: zones
924+
groups:
925+
- clusters
926+
filters:
927+
- src_zone
928+
- dst_zone
929+
- id: host
930+
name: Node
931+
description: Node on which the resources are running
932+
labels:
933+
- SrcK8S_HostName
934+
- DstK8S_HostName
935+
groups:
936+
- clusters
937+
- zones
938+
- clusters+zones
939+
filters:
940+
- src_host_name
941+
- dst_host_name
942+
- id: namespace
943+
name: Namespace
944+
shortName: NS
945+
description: Resource namespace
946+
labels:
947+
- SrcK8S_Namespace
948+
- DstK8S_Namespace
949+
groups:
950+
- clusters
951+
- clusters+zones
952+
- clusters+hosts
953+
- zones
954+
- zones+hosts
955+
- hosts
956+
filters:
957+
- src_namespace
958+
- dst_namespace
959+
- id: owner
960+
name: Owner
961+
shortName: Own
962+
description: Controller owner, such as a Deployment
963+
labels:
964+
- SrcK8S_OwnerName
965+
- SrcK8S_OwnerType
966+
- DstK8S_OwnerName
967+
- DstK8S_OwnerType
968+
- SrcK8S_Namespace
969+
- DstK8S_Namespace
970+
groups:
971+
- clusters
972+
- clusters+zones
973+
- clusters+hosts
974+
- clusters+namespaces
975+
- zones
976+
- zones+hosts
977+
- zones+namespaces
978+
- hosts
979+
- hosts+namespaces
980+
- namespaces
981+
filters:
982+
- src_owner_name
983+
- dst_owner_name
984+
- id: resource
985+
name: Resource
986+
shortName: Res
987+
description: Base resource, such as a Pod, a Service or a Node
988+
labels:
989+
- SrcK8S_Name
990+
- SrcK8S_Type
991+
- SrcK8S_OwnerName
992+
- SrcK8S_OwnerType
993+
- SrcK8S_Namespace
994+
- SrcAddr
995+
- SrcK8S_HostName
996+
- DstK8S_Name
997+
- DstK8S_Type
998+
- DstK8S_OwnerName
999+
- DstK8S_OwnerType
1000+
- DstK8S_Namespace
1001+
- DstAddr
1002+
- DstK8S_HostName
1003+
groups:
1004+
- clusters
1005+
- clusters+zones
1006+
- clusters+hosts
1007+
- clusters+namespaces
1008+
- clusters+owners
1009+
- zones
1010+
- zones+hosts
1011+
- zones+namespaces
1012+
- zones+owners
1013+
- hosts
1014+
- hosts+namespaces
1015+
- hosts+owners
1016+
- namespaces
1017+
- namespaces+owners
1018+
- owners
1019+
filters:
1020+
- src_resource
1021+
- dst_resource
9071022
# Fields definition, used to generate documentation
9081023
fields:
9091024
- name: TimeFlowStartMs

controllers/consoleplugin/consoleplugin_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -338,6 +338,7 @@ func TestConfigMapContent(t *testing.T) {
338338
assert.Empty(config.Frontend.Features)
339339
assert.NotEmpty(config.Frontend.Columns)
340340
assert.NotEmpty(config.Frontend.Filters)
341+
assert.NotEmpty(config.Frontend.Scopes)
341342
assert.Equal(config.Frontend.Sampling, 1)
342343
assert.Equal(config.Frontend.Deduper.Mark, false)
343344
assert.Equal(config.Frontend.Deduper.Merge, true)

0 commit comments

Comments
 (0)