Skip to content

Commit b3b9182

Browse files
committed
remove watcher and watch verb (forked apiserver)
Signed-off-by: Matthias Bertschy <matthias.bertschy@gmail.com>
1 parent 896644b commit b3b9182

16 files changed

+89
-683
lines changed

go.mod

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,3 +221,5 @@ require (
221221
sigs.k8s.io/randfill v1.0.0 // indirect
222222
sigs.k8s.io/yaml v1.4.0 // indirect
223223
)
224+
225+
replace k8s.io/apiserver => github.com/matthyx/apiserver v0.0.0-20251003105411-dd9f2bda2b69

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -495,6 +495,8 @@ github.com/magiconair/properties v1.8.5/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPK
495495
github.com/mailru/easyjson v0.0.0-20190312143242-1de009706dbe/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
496496
github.com/mailru/easyjson v0.9.0 h1:PrnmzHw7262yW8sTBwxi1PdJA3Iw/EKBa8psRf7d9a4=
497497
github.com/mailru/easyjson v0.9.0/go.mod h1:1+xMtQp2MRNVL/V1bOzuP3aP8VNwRW55fQUto+XFtTU=
498+
github.com/matthyx/apiserver v0.0.0-20251003105411-dd9f2bda2b69 h1:+/KDXV2mYNpUBO6EozBz09JOQgtLTyG967jOe7Z80i0=
499+
github.com/matthyx/apiserver v0.0.0-20251003105411-dd9f2bda2b69/go.mod h1:VMbE4ArWYLO01omz+k8hFjAdYfc3GVAYPrhP2tTKccs=
498500
github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
499501
github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
500502
github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
@@ -1337,8 +1339,6 @@ k8s.io/apiextensions-apiserver v0.33.1 h1:N7ccbSlRN6I2QBcXevB73PixX2dQNIW0ZRuguE
13371339
k8s.io/apiextensions-apiserver v0.33.1/go.mod h1:uNQ52z1A1Gu75QSa+pFK5bcXc4hq7lpOXbweZgi4dqA=
13381340
k8s.io/apimachinery v0.33.1 h1:mzqXWV8tW9Rw4VeW9rEkqvnxj59k1ezDUl20tFK/oM4=
13391341
k8s.io/apimachinery v0.33.1/go.mod h1:BHW0YOu7n22fFv/JkYOEfkUYNRN0fj0BlvMFWA7b+SM=
1340-
k8s.io/apiserver v0.33.1 h1:yLgLUPDVC6tHbNcw5uE9mo1T6ELhJj7B0geifra3Qdo=
1341-
k8s.io/apiserver v0.33.1/go.mod h1:VMbE4ArWYLO01omz+k8hFjAdYfc3GVAYPrhP2tTKccs=
13421342
k8s.io/client-go v0.33.1 h1:ZZV/Ks2g92cyxWkRRnfUDsnhNn28eFpt26aGc8KbXF4=
13431343
k8s.io/client-go v0.33.1/go.mod h1:JAsUrl1ArO7uRVFWfcj6kOomSlCv+JpvIsp6usAGefA=
13441344
k8s.io/code-generator v0.33.1 h1:ZLzIRdMsh3Myfnx9BaooX6iQry29UJjVfVG+BuS+UMw=

main.go

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -92,9 +92,6 @@ func main() {
9292
osFs := afero.NewOsFs()
9393
pool := file.NewPool(filepath.Join(file.DefaultStorageRoot, "metadata.sq3"), 0) // If less than 1, a reasonable default is used.
9494

95-
// setup watcher
96-
watchDispatcher := file.NewWatchDispatcher()
97-
9895
// cleanup task
9996
client, err := file.NewKubernetesClient()
10097
kubernetesAPI := file.NewKubernetesAPI(cfg, client)
@@ -104,11 +101,11 @@ func main() {
104101

105102
relevancyEnabled := clusterData.RelevantImageVulnerabilitiesEnabled != nil && *clusterData.RelevantImageVulnerabilitiesEnabled
106103

107-
cleanupHandler := file.NewResourcesCleanupHandler(osFs, file.DefaultStorageRoot, pool, watchDispatcher, cfg.CleanupInterval, cfg.DefaultNamespace, kubernetesAPI, relevancyEnabled)
104+
cleanupHandler := file.NewResourcesCleanupHandler(osFs, file.DefaultStorageRoot, pool, cfg.CleanupInterval, cfg.DefaultNamespace, kubernetesAPI, relevancyEnabled)
108105
go cleanupHandler.RunCleanupTask(ctx)
109106

110107
// start the server
111-
options := server.NewWardleServerOptions(os.Stdout, os.Stderr, osFs, pool, cfg, watchDispatcher, cleanupHandler)
108+
options := server.NewWardleServerOptions(os.Stdout, os.Stderr, osFs, pool, cfg, cleanupHandler)
112109
cmd := server.NewCommandStartWardleServer(ctx, options, false)
113110
logger.L().Info("APIServer starting")
114111
code := cli.Run(cmd)

pkg/apiserver/apiserver.go

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -82,11 +82,10 @@ func init() {
8282

8383
// ExtraConfig holds custom apiserver config
8484
type ExtraConfig struct {
85-
CleanupHandler *file.ResourcesCleanupHandler
86-
OsFs afero.Fs
87-
Pool *sqlitemigration.Pool
88-
StorageConfig config.Config
89-
WatchDispatcher *file.WatchDispatcher
85+
CleanupHandler *file.ResourcesCleanupHandler
86+
OsFs afero.Fs
87+
Pool *sqlitemigration.Pool
88+
StorageConfig config.Config
9089
}
9190

9291
// Config defines the config for the apiserver
@@ -140,11 +139,11 @@ func (c completedConfig) New() (*WardleServer, error) {
140139
apiGroupInfo := genericapiserver.NewDefaultAPIGroupInfo(softwarecomposition.GroupName, Scheme, metav1.ParameterCodec, Codecs)
141140

142141
var (
143-
storageImpl = file.NewStorageImpl(c.ExtraConfig.OsFs, file.DefaultStorageRoot, c.ExtraConfig.Pool, c.ExtraConfig.WatchDispatcher, Scheme)
142+
storageImpl = file.NewStorageImpl(c.ExtraConfig.OsFs, file.DefaultStorageRoot, c.ExtraConfig.Pool, Scheme)
144143

145-
applicationProfileStorageImpl = file.NewApplicationProfileStorage(file.NewStorageImplWithCollector(c.ExtraConfig.OsFs, file.DefaultStorageRoot, c.ExtraConfig.Pool, c.ExtraConfig.WatchDispatcher, Scheme, file.NewApplicationProfileProcessor(c.ExtraConfig.StorageConfig)))
146-
containerProfileStorageImpl = file.NewStorageImplWithCollector(c.ExtraConfig.OsFs, file.DefaultStorageRoot, c.ExtraConfig.Pool, c.ExtraConfig.WatchDispatcher, Scheme, file.NewContainerProfileProcessor(c.ExtraConfig.StorageConfig, c.ExtraConfig.Pool, c.ExtraConfig.CleanupHandler))
147-
networkNeighborhoodStorageImpl = file.NewNetworkNeighborhoodStorage(file.NewStorageImplWithCollector(c.ExtraConfig.OsFs, file.DefaultStorageRoot, c.ExtraConfig.Pool, c.ExtraConfig.WatchDispatcher, Scheme, file.NewNetworkNeighborhoodProcessor(c.ExtraConfig.StorageConfig)))
144+
applicationProfileStorageImpl = file.NewApplicationProfileStorage(file.NewStorageImplWithCollector(c.ExtraConfig.OsFs, file.DefaultStorageRoot, c.ExtraConfig.Pool, Scheme, file.NewApplicationProfileProcessor(c.ExtraConfig.StorageConfig)))
145+
containerProfileStorageImpl = file.NewStorageImplWithCollector(c.ExtraConfig.OsFs, file.DefaultStorageRoot, c.ExtraConfig.Pool, Scheme, file.NewContainerProfileProcessor(c.ExtraConfig.StorageConfig, c.ExtraConfig.Pool, c.ExtraConfig.CleanupHandler))
146+
networkNeighborhoodStorageImpl = file.NewNetworkNeighborhoodStorage(file.NewStorageImplWithCollector(c.ExtraConfig.OsFs, file.DefaultStorageRoot, c.ExtraConfig.Pool, Scheme, file.NewNetworkNeighborhoodProcessor(c.ExtraConfig.StorageConfig)))
148147
configScanStorageImpl = file.NewConfigurationScanSummaryStorage(storageImpl)
149148
vulnerabilitySummaryStorage = file.NewVulnerabilitySummaryStorage(storageImpl)
150149
generatedNetworkPolicyStorage = file.NewGeneratedNetworkPolicyStorage(storageImpl, networkNeighborhoodStorageImpl)

pkg/cmd/server/start.go

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -71,11 +71,10 @@ type WardleServerOptions struct {
7171

7272
AlternateDNS []string
7373

74-
CleanupHandler *file.ResourcesCleanupHandler
75-
OsFs afero.Fs
76-
Pool *sqlitemigration.Pool
77-
StorageConfig config.Config
78-
WatchDispatcher *file.WatchDispatcher
74+
CleanupHandler *file.ResourcesCleanupHandler
75+
OsFs afero.Fs
76+
Pool *sqlitemigration.Pool
77+
StorageConfig config.Config
7978
}
8079

8180
func WardleVersionToKubeVersion(ver *version.Version) *version.Version {
@@ -93,7 +92,7 @@ func WardleVersionToKubeVersion(ver *version.Version) *version.Version {
9392
}
9493

9594
// NewWardleServerOptions returns a new WardleServerOptions
96-
func NewWardleServerOptions(out, errOut io.Writer, osFs afero.Fs, pool *sqlitemigration.Pool, cfg config.Config, watchDispatcher *file.WatchDispatcher, cleanupHandler *file.ResourcesCleanupHandler) *WardleServerOptions {
95+
func NewWardleServerOptions(out, errOut io.Writer, osFs afero.Fs, pool *sqlitemigration.Pool, cfg config.Config, cleanupHandler *file.ResourcesCleanupHandler) *WardleServerOptions {
9796
o := &WardleServerOptions{
9897
RecommendedOptions: genericoptions.NewRecommendedOptions(
9998
defaultEtcdPathPrefix,
@@ -104,11 +103,10 @@ func NewWardleServerOptions(out, errOut io.Writer, osFs afero.Fs, pool *sqlitemi
104103
StdOut: out,
105104
StdErr: errOut,
106105

107-
CleanupHandler: cleanupHandler,
108-
OsFs: osFs,
109-
Pool: pool,
110-
StorageConfig: cfg,
111-
WatchDispatcher: watchDispatcher,
106+
CleanupHandler: cleanupHandler,
107+
OsFs: osFs,
108+
Pool: pool,
109+
StorageConfig: cfg,
112110
}
113111
o.RecommendedOptions.Admission = nil
114112
o.RecommendedOptions.Etcd = nil
@@ -274,11 +272,10 @@ func (o *WardleServerOptions) Config() (*apiserver.Config, error) {
274272
c := &apiserver.Config{
275273
GenericConfig: serverConfig,
276274
ExtraConfig: apiserver.ExtraConfig{
277-
CleanupHandler: o.CleanupHandler,
278-
OsFs: o.OsFs,
279-
Pool: o.Pool,
280-
StorageConfig: o.StorageConfig,
281-
WatchDispatcher: o.WatchDispatcher,
275+
CleanupHandler: o.CleanupHandler,
276+
OsFs: o.OsFs,
277+
Pool: o.Pool,
278+
StorageConfig: o.StorageConfig,
282279
},
283280
}
284281
return c, nil

pkg/registry/file/applicationprofile_storage.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@ func (a ApplicationProfileStorage) Delete(ctx context.Context, key string, out r
3838
return a.realStore.Delete(ctx, key, out, preconditions, validateDeletion, cachedExistingObject, opts)
3939
}
4040

41-
func (a ApplicationProfileStorage) Watch(ctx context.Context, key string, opts storage.ListOptions) (watch.Interface, error) {
42-
return a.realStore.Watch(ctx, key, opts)
41+
func (a ApplicationProfileStorage) Watch(_ context.Context, _ string, _ storage.ListOptions) (watch.Interface, error) {
42+
return nil, nil // watch disabled
4343
}
4444

4545
func (a ApplicationProfileStorage) Get(ctx context.Context, key string, opts storage.GetOptions, objPtr runtime.Object) error {

pkg/registry/file/cleanup.go

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ type ResourcesCleanupHandler struct {
3838
fetcher ResourcesFetcher
3939
deleteFunc TypeDeleteFunc
4040
resourceToKindHandler map[string][]TypeCleanupHandlerFunc
41-
watchDispatcher *WatchDispatcher
4241
}
4342

4443
func initResourceToKindHandler(relevancyEnabled bool) map[string][]TypeCleanupHandlerFunc {
@@ -77,7 +76,7 @@ func initResourceToKindHandler(relevancyEnabled bool) map[string][]TypeCleanupHa
7776
return resourceKindToHandler
7877
}
7978

80-
func NewResourcesCleanupHandler(appFs afero.Fs, root string, pool *sqlitemigration.Pool, watchDispatcher *WatchDispatcher, interval time.Duration, defaultNamespace string, fetcher ResourcesFetcher, relevancyEnabled bool) *ResourcesCleanupHandler {
79+
func NewResourcesCleanupHandler(appFs afero.Fs, root string, pool *sqlitemigration.Pool, interval time.Duration, defaultNamespace string, fetcher ResourcesFetcher, relevancyEnabled bool) *ResourcesCleanupHandler {
8180

8281
return &ResourcesCleanupHandler{
8382
appFs: appFs,
@@ -88,7 +87,6 @@ func NewResourcesCleanupHandler(appFs afero.Fs, root string, pool *sqlitemigrati
8887
fetcher: fetcher,
8988
deleteFunc: deleteFile,
9089
resourceToKindHandler: initResourceToKindHandler(relevancyEnabled),
91-
watchDispatcher: watchDispatcher,
9290
}
9391
}
9492

@@ -197,11 +195,7 @@ func (h *ResourcesCleanupHandler) cleanupNamespace(ctx context.Context, ns strin
197195
logger.L().Debug("deleting", helpers.String("kind", resourceKind), helpers.String("namespace", metadata.Namespace), helpers.String("name", metadata.Name))
198196
h.deleteFunc(h.appFs, path)
199197

200-
metaOut := h.deleteMetadata(conn, path)
201-
if h.watchDispatcher != nil {
202-
key := path[len(h.root) : len(path)-len(GobExt)]
203-
h.watchDispatcher.Deleted(key, metaOut)
204-
}
198+
_ = h.deleteMetadata(conn, path)
205199
}
206200
return nil
207201
})

pkg/registry/file/configurationscansummarystorage_test.go

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import (
1818
)
1919

2020
func TestConfigurationScanSummaryStorage_Count(t *testing.T) {
21-
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil, nil)
21+
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil)
2222
configScanSummaryStorage := NewConfigurationScanSummaryStorage(storageImpl)
2323

2424
count, err := configScanSummaryStorage.Count("random")
@@ -31,7 +31,7 @@ func TestConfigurationScanSummaryStorage_Count(t *testing.T) {
3131
}
3232

3333
func TestConfigurationScanSummaryStorage_Create(t *testing.T) {
34-
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil, nil)
34+
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil)
3535
configScanSummaryStorage := NewConfigurationScanSummaryStorage(storageImpl)
3636

3737
err := configScanSummaryStorage.Create(context.TODO(), "", nil, nil, 0)
@@ -42,7 +42,7 @@ func TestConfigurationScanSummaryStorage_Create(t *testing.T) {
4242
}
4343

4444
func TestConfigurationScanSummaryStorage_Delete(t *testing.T) {
45-
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil, nil)
45+
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil)
4646
configScanSummaryStorage := NewConfigurationScanSummaryStorage(storageImpl)
4747

4848
err := configScanSummaryStorage.Delete(context.TODO(), "", nil, nil, nil, nil, storage.DeleteOptions{})
@@ -53,15 +53,15 @@ func TestConfigurationScanSummaryStorage_Delete(t *testing.T) {
5353
}
5454

5555
func TestConfigurationScanSummaryStorage_Watch(t *testing.T) {
56-
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil, nil)
56+
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil)
5757
configScanSummaryStorage := NewConfigurationScanSummaryStorage(storageImpl)
5858

5959
_, err := configScanSummaryStorage.Watch(context.TODO(), "", storage.ListOptions{})
6060
assert.NoError(t, err)
6161
}
6262

6363
func TestConfigurationScanSummaryStorage_GuaranteedUpdate(t *testing.T) {
64-
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil, nil)
64+
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil)
6565
configScanSummaryStorage := NewConfigurationScanSummaryStorage(storageImpl)
6666

6767
err := configScanSummaryStorage.GuaranteedUpdate(context.TODO(), "", nil, false, nil, nil, nil)
@@ -115,7 +115,7 @@ func TestConfigurationScanSummaryStorage_Get(t *testing.T) {
115115
}(pool)
116116
sch := scheme.Scheme
117117
require.NoError(t, softwarecomposition.AddToScheme(sch))
118-
realStorage := NewStorageImpl(afero.NewMemMapFs(), "/", pool, nil, sch)
118+
realStorage := NewStorageImpl(afero.NewMemMapFs(), "/", pool, sch)
119119

120120
for _, tt := range tests {
121121
t.Run(tt.name, func(t *testing.T) {
@@ -190,7 +190,7 @@ func TestConfigurationScanSummaryStorage_GetList(t *testing.T) {
190190
}(pool)
191191
sch := scheme.Scheme
192192
require.NoError(t, softwarecomposition.AddToScheme(sch))
193-
realStorage := NewStorageImpl(afero.NewMemMapFs(), "/", pool, nil, sch)
193+
realStorage := NewStorageImpl(afero.NewMemMapFs(), "/", pool, sch)
194194

195195
for _, tt := range tests {
196196
t.Run(tt.name, func(t *testing.T) {

pkg/registry/file/containerprofile_processor_test.go

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,13 @@ func TestConsolidateData(t *testing.T) {
3636
pool: pool,
3737
}
3838
s := &StorageImpl{
39-
appFs: afero.NewMemMapFs(),
40-
pool: pool,
41-
locks: utils.NewMapMutex[string](),
42-
processor: &processor,
43-
root: DefaultStorageRoot,
44-
scheme: sch,
45-
versioner: storage.APIObjectVersioner{},
46-
watchDispatcher: NewWatchDispatcher(),
39+
appFs: afero.NewMemMapFs(),
40+
pool: pool,
41+
locks: utils.NewMapMutex[string](),
42+
processor: &processor,
43+
root: DefaultStorageRoot,
44+
scheme: sch,
45+
versioner: storage.APIObjectVersioner{},
4746
}
4847
processor.SetStorage(s)
4948

pkg/registry/file/generatednetworkpolicy_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ func TestGeneratedNetworkPolicyStorage_Get(t *testing.T) {
145145
}(pool)
146146
sch := scheme.Scheme
147147
require.NoError(t, softwarecomposition.AddToScheme(sch))
148-
realStorage := NewStorageImpl(afero.NewMemMapFs(), "/", pool, nil, sch)
148+
realStorage := NewStorageImpl(afero.NewMemMapFs(), "/", pool, sch)
149149
generatedNetworkPolicyStorage := NewGeneratedNetworkPolicyStorage(realStorage, realStorage)
150150
ctx, cancel := context.WithTimeout(context.TODO(), 5*time.Second)
151151
defer cancel()
@@ -189,7 +189,7 @@ func TestGeneratedNetworkPolicyStorage_Get(t *testing.T) {
189189
}
190190

191191
func TestGeneratedNetworkPolicyStorage_Count(t *testing.T) {
192-
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil, nil)
192+
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil)
193193
generatedNetworkPolicyStorage := NewGeneratedNetworkPolicyStorage(storageImpl, storageImpl)
194194

195195
count, err := generatedNetworkPolicyStorage.Count("random")
@@ -202,7 +202,7 @@ func TestGeneratedNetworkPolicyStorage_Count(t *testing.T) {
202202
}
203203

204204
func TestGeneratedNetworkPolicyStorage_Create(t *testing.T) {
205-
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil, nil)
205+
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil)
206206
generatedNetworkPolicyStorage := NewGeneratedNetworkPolicyStorage(storageImpl, storageImpl)
207207

208208
err := generatedNetworkPolicyStorage.Create(context.TODO(), "", nil, nil, 0)
@@ -213,7 +213,7 @@ func TestGeneratedNetworkPolicyStorage_Create(t *testing.T) {
213213
}
214214

215215
func TestGeneratedNetworkPolicyStorage_Delete(t *testing.T) {
216-
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil, nil)
216+
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil)
217217
generatedNetworkPolicyStorage := NewGeneratedNetworkPolicyStorage(storageImpl, storageImpl)
218218

219219
err := generatedNetworkPolicyStorage.Delete(context.TODO(), "", nil, nil, nil, nil, storage.DeleteOptions{})
@@ -224,15 +224,15 @@ func TestGeneratedNetworkPolicyStorage_Delete(t *testing.T) {
224224
}
225225

226226
func TestGeneratedNetworkPolicyStorage_Watch(t *testing.T) {
227-
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil, nil)
227+
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil)
228228
generatedNetworkPolicyStorage := NewGeneratedNetworkPolicyStorage(storageImpl, storageImpl)
229229

230230
_, err := generatedNetworkPolicyStorage.Watch(context.TODO(), "", storage.ListOptions{})
231231
assert.NoError(t, err)
232232
}
233233

234234
func TestGeneratedNetworkPolicyStorage_GuaranteedUpdate(t *testing.T) {
235-
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil, nil)
235+
storageImpl := NewStorageImpl(afero.NewMemMapFs(), "", nil, nil)
236236
generatedNetworkPolicyStorage := NewGeneratedNetworkPolicyStorage(storageImpl, storageImpl)
237237

238238
err := generatedNetworkPolicyStorage.GuaranteedUpdate(context.TODO(), "", nil, false, nil, nil, nil)

0 commit comments

Comments
 (0)