Skip to content

Commit c3e8a43

Browse files
authored
Merge pull request kubernetes#77330 from liggitt/collapse-integration-storage-config
Collapse integration test storage setup onto actual storage config
2 parents d2ce69d + cbc9a11 commit c3e8a43

File tree

2 files changed

+13
-79
lines changed

2 files changed

+13
-79
lines changed

test/integration/framework/BUILD

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -38,22 +38,13 @@ go_library(
3838
"//cmd/kube-apiserver/app:go_default_library",
3939
"//cmd/kube-apiserver/app/options:go_default_library",
4040
"//pkg/api/legacyscheme:go_default_library",
41-
"//pkg/apis/batch:go_default_library",
42-
"//pkg/apis/policy/v1beta1:go_default_library",
4341
"//pkg/generated/openapi:go_default_library",
42+
"//pkg/kubeapiserver:go_default_library",
4443
"//pkg/kubelet/client:go_default_library",
4544
"//pkg/master:go_default_library",
4645
"//pkg/util/env:go_default_library",
4746
"//pkg/version:go_default_library",
48-
"//staging/src/k8s.io/api/apps/v1beta1:go_default_library",
49-
"//staging/src/k8s.io/api/auditregistration/v1alpha1:go_default_library",
50-
"//staging/src/k8s.io/api/autoscaling/v1:go_default_library",
51-
"//staging/src/k8s.io/api/certificates/v1beta1:go_default_library",
5247
"//staging/src/k8s.io/api/core/v1:go_default_library",
53-
"//staging/src/k8s.io/api/extensions/v1beta1:go_default_library",
54-
"//staging/src/k8s.io/api/node/v1alpha1:go_default_library",
55-
"//staging/src/k8s.io/api/rbac/v1alpha1:go_default_library",
56-
"//staging/src/k8s.io/api/storage/v1:go_default_library",
5748
"//staging/src/k8s.io/apimachinery/pkg/api/resource:go_default_library",
5849
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
5950
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",

test/integration/framework/master_utils.go

Lines changed: 12 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -27,16 +27,6 @@ import (
2727

2828
"github.com/go-openapi/spec"
2929
"github.com/pborman/uuid"
30-
apps "k8s.io/api/apps/v1beta1"
31-
auditreg "k8s.io/api/auditregistration/v1alpha1"
32-
autoscaling "k8s.io/api/autoscaling/v1"
33-
certificates "k8s.io/api/certificates/v1beta1"
34-
"k8s.io/api/core/v1"
35-
extensions "k8s.io/api/extensions/v1beta1"
36-
nodev1alpha1 "k8s.io/api/node/v1alpha1"
37-
rbac "k8s.io/api/rbac/v1alpha1"
38-
storage "k8s.io/api/storage/v1"
39-
"k8s.io/apimachinery/pkg/runtime"
4030
"k8s.io/apimachinery/pkg/runtime/schema"
4131
"k8s.io/apimachinery/pkg/util/wait"
4232
authauthenticator "k8s.io/apiserver/pkg/authentication/authenticator"
@@ -57,9 +47,8 @@ import (
5747
"k8s.io/klog"
5848
openapicommon "k8s.io/kube-openapi/pkg/common"
5949
"k8s.io/kubernetes/pkg/api/legacyscheme"
60-
"k8s.io/kubernetes/pkg/apis/batch"
61-
policy "k8s.io/kubernetes/pkg/apis/policy/v1beta1"
6250
"k8s.io/kubernetes/pkg/generated/openapi"
51+
"k8s.io/kubernetes/pkg/kubeapiserver"
6352
kubeletclient "k8s.io/kubernetes/pkg/kubelet/client"
6453
"k8s.io/kubernetes/pkg/master"
6554
"k8s.io/kubernetes/pkg/version"
@@ -285,62 +274,16 @@ func NewMasterConfigWithOptions(opts *MasterConfigOptions) *master.Config {
285274
etcdOptions = opts.EtcdOptions
286275
}
287276

288-
info, _ := runtime.SerializerInfoForMediaType(legacyscheme.Codecs.SupportedMediaTypes(), runtime.ContentTypeJSON)
289-
ns := NewSingleContentTypeSerializer(legacyscheme.Scheme, info)
290-
291-
resourceEncoding := serverstorage.NewDefaultResourceEncodingConfig(legacyscheme.Scheme)
292-
// FIXME (soltysh): this GroupVersionResource override should be configurable
293-
resourceEncoding.SetResourceEncoding(schema.GroupResource{Group: batch.GroupName, Resource: "cronjobs"}, schema.GroupVersion{Group: batch.GroupName, Version: "v1beta1"}, schema.GroupVersion{Group: batch.GroupName, Version: runtime.APIVersionInternal})
294-
// we also need to set both for the storage group and for volumeattachments, separately
295-
resourceEncoding.SetResourceEncoding(schema.GroupResource{Group: storage.GroupName, Resource: "volumeattachments"}, schema.GroupVersion{Group: storage.GroupName, Version: "v1beta1"}, schema.GroupVersion{Group: storage.GroupName, Version: runtime.APIVersionInternal})
296-
resourceEncoding.SetResourceEncoding(schema.GroupResource{Group: storage.GroupName, Resource: "csinodes"}, schema.GroupVersion{Group: storage.GroupName, Version: "v1beta1"}, schema.GroupVersion{Group: storage.GroupName, Version: runtime.APIVersionInternal})
297-
resourceEncoding.SetResourceEncoding(schema.GroupResource{Group: storage.GroupName, Resource: "csidrivers"}, schema.GroupVersion{Group: storage.GroupName, Version: "v1beta1"}, schema.GroupVersion{Group: storage.GroupName, Version: runtime.APIVersionInternal})
298-
299-
storageFactory := serverstorage.NewDefaultStorageFactory(etcdOptions.StorageConfig, runtime.ContentTypeJSON, ns, resourceEncoding, master.DefaultAPIResourceConfigSource(), nil)
300-
storageFactory.SetSerializer(
301-
schema.GroupResource{Group: v1.GroupName, Resource: serverstorage.AllResources},
302-
"",
303-
ns)
304-
storageFactory.SetSerializer(
305-
schema.GroupResource{Group: autoscaling.GroupName, Resource: serverstorage.AllResources},
306-
"",
307-
ns)
308-
storageFactory.SetSerializer(
309-
schema.GroupResource{Group: batch.GroupName, Resource: serverstorage.AllResources},
310-
"",
311-
ns)
312-
storageFactory.SetSerializer(
313-
schema.GroupResource{Group: apps.GroupName, Resource: serverstorage.AllResources},
314-
"",
315-
ns)
316-
storageFactory.SetSerializer(
317-
schema.GroupResource{Group: extensions.GroupName, Resource: serverstorage.AllResources},
318-
"",
319-
ns)
320-
storageFactory.SetSerializer(
321-
schema.GroupResource{Group: policy.GroupName, Resource: serverstorage.AllResources},
322-
"",
323-
ns)
324-
storageFactory.SetSerializer(
325-
schema.GroupResource{Group: rbac.GroupName, Resource: serverstorage.AllResources},
326-
"",
327-
ns)
328-
storageFactory.SetSerializer(
329-
schema.GroupResource{Group: certificates.GroupName, Resource: serverstorage.AllResources},
330-
"",
331-
ns)
332-
storageFactory.SetSerializer(
333-
schema.GroupResource{Group: storage.GroupName, Resource: serverstorage.AllResources},
334-
"",
335-
ns)
336-
storageFactory.SetSerializer(
337-
schema.GroupResource{Group: auditreg.GroupName, Resource: serverstorage.AllResources},
338-
"",
339-
ns)
340-
storageFactory.SetSerializer(
341-
schema.GroupResource{Group: nodev1alpha1.GroupName, Resource: serverstorage.AllResources},
342-
"",
343-
ns)
277+
storageConfig := kubeapiserver.NewStorageFactoryConfig()
278+
storageConfig.ApiResourceConfig = serverstorage.NewResourceConfig()
279+
completedStorageConfig, err := storageConfig.Complete(etcdOptions)
280+
if err != nil {
281+
panic(err)
282+
}
283+
storageFactory, err := completedStorageConfig.New()
284+
if err != nil {
285+
panic(err)
286+
}
344287

345288
genericConfig := genericapiserver.NewConfig(legacyscheme.Codecs)
346289
kubeVersion := version.Get()
@@ -350,7 +293,7 @@ func NewMasterConfigWithOptions(opts *MasterConfigOptions) *master.Config {
350293
// TODO: get rid of these tests or port them to secure serving
351294
genericConfig.SecureServing = &genericapiserver.SecureServingInfo{Listener: fakeLocalhost443Listener{}}
352295

353-
err := etcdOptions.ApplyWithStorageFactoryTo(storageFactory, genericConfig)
296+
err = etcdOptions.ApplyWithStorageFactoryTo(storageFactory, genericConfig)
354297
if err != nil {
355298
panic(err)
356299
}

0 commit comments

Comments
 (0)