@@ -32,6 +32,7 @@ import (
32
32
configv1client "github.com/openshift/client-go/config/clientset/versioned/typed/config/v1"
33
33
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
34
34
"k8s.io/client-go/kubernetes"
35
+ "k8s.io/client-go/rest"
35
36
"k8s.io/klog/v2"
36
37
k8snet "k8s.io/utils/net"
37
38
@@ -68,7 +69,7 @@ type ConfigProvider interface {
68
69
Config () * config.Controller
69
70
}
70
71
71
- // NewAnonymizer creates a new instance of anonymizer with a provided config observer and sensitive data
72
+ // NewAnonymizer creates a new instance of anonymizer
72
73
func NewAnonymizer (clusterBaseDomain string , networks []string ) (* Anonymizer , error ) {
73
74
networks = append (networks , "127.0.0.1/8" )
74
75
@@ -94,7 +95,7 @@ func NewAnonymizer(clusterBaseDomain string, networks []string) (*Anonymizer, er
94
95
}, nil
95
96
}
96
97
97
- // NewAnonymizer creates a new instance of anonymizer with a provided config observer and openshift config client
98
+ // NewAnonymizerFromConfigClient creates a new instance of anonymizer with a provided openshift config client
98
99
func NewAnonymizerFromConfigClient (
99
100
ctx context.Context , kubeClient kubernetes.Interface , configClient configv1client.ConfigV1Interface ,
100
101
) (* Anonymizer , error ) {
@@ -147,6 +148,23 @@ func NewAnonymizerFromConfigClient(
147
148
return NewAnonymizer (baseDomain , networks )
148
149
}
149
150
151
+ // NewAnonymizerFromConfig creates a new instance of anonymizer with a provided kubeconfig
152
+ func NewAnonymizerFromConfig (
153
+ ctx context.Context , kubeConfig * rest.Config , protoKubeConfig * rest.Config ,
154
+ ) (* Anonymizer , error ) {
155
+ kubeClient , err := kubernetes .NewForConfig (protoKubeConfig )
156
+ if err != nil {
157
+ return nil , err
158
+ }
159
+
160
+ configClient , err := configv1client .NewForConfig (kubeConfig )
161
+ if err != nil {
162
+ return nil , err
163
+ }
164
+
165
+ return NewAnonymizerFromConfigClient (ctx , kubeClient , configClient )
166
+ }
167
+
150
168
// AnonymizeMemoryRecord takes record.MemoryRecord, removes the sensitive data from it and returns the same object
151
169
func (anonymizer * Anonymizer ) AnonymizeMemoryRecord (memoryRecord * record.MemoryRecord ) * record.MemoryRecord {
152
170
if len (anonymizer .clusterBaseDomain ) != 0 {
0 commit comments